jueves, 18 de noviembre de 2010

Actividad 7

LENGUAJE MULTIPARADIGMA




Oz es un lenguaje de programación multi-paradigma (puede usarse en forma
procedural, funcional, con restricciones lógicas u orientado a objetos) que soporta
programación en soft-real time, concurrencia, distribución y programación reactiva.
Mozart es el sistema de computación que soporta a oz y le permite la
comunicación con el resto del mundo (se encarga de los sockets, I/O, interface gráfica,
etc). Se desarrolló por investigadores de DFKI (German Research Center for Artificial
Intelligence), SICS (Swedish Institute of Computer Science), la Universidad de
Saarland, UCL (Université catholique de Louvain) y otros.
Oz está definido en función de un lenguaje Kernel y el resto de las
construcciones de éste lenguaje se pueden considerar como azúcar sintáctica de este
Kernel.


CODIGO




local Maximo A Be Ce in
proc {Maximo X Y Z}
if X>Y then Z=X else Z=Y end
end
A=4
Be=5
{Maximo A Be Ce}
{Browse Ce}
end

Las variables y los nombres de procedimiento deben comenzar con mayúsculas y declararse.


No ente bien este temaa espero este bien el ejemplo
:S
buen diaa :)
saludos

martes, 16 de noviembre de 2010

Actividad 7

LENGUAJE ORIENTADO A OBJETOS


Como su mismo nombre indica, la programación orientada a objetos se basa en la idea de un objeto, que es una combinacion de variables locales y procedimientos llamados metodos que juntos conforman una entidad de programación.




Bueno compañeros yo are los programas en C++ y JAVA 
empesare primero con C++, aqui utilice arreglos para poder sacar el pormedio de un gruo de x alumnos E  indica la posiscion de alumno con mayor y menor calificacion.


CODIGO



#include<stdio.h>
#include<conio.h>
void main ()
{
    int N,i,suma=0,A[100],p,mayor=0,menor=100,x,z;
    printf("Teclee el numero de alumnos: \n");
    scanf("%d", &N);
    suma=0;
    for(i=1; i<=N;i++)
    {
             printf("Introduce la calificaion: \n");
             scanf("%d", & A[i]);
             suma=suma+A[i];
             }
             for(i=1;i<=N;i++)
             {
                              if(A[i]>mayor)
                              {
                              mayor=A[i];
                              z=i;
                              }
                              else if(A[i]<menor)
                              {
                              menor=A[i];
                              x=i;
                              }
                              }
                              p=suma/N;
                              printf("El promedio es de %d \n", p);
                              printf("La calificacion mayor es del alumno %d con %d \n", z,mayor);
                              printf("La calificacion menor es del alumno %d con %d \n", x, menor);
                              getche();
                              return 0;
                              }


EJECUTANDO EL PROGRAMA








El siguiente programa lo realice en JAVA y realiza la potencia de un numero .. aqui baje el compilador llamado eclipse porque no podia desd inicio y luego ejecutar .. nopude vi un tutorial en youtube y no me salio.. me marcaba error ¬¬°..pff
pero bno este programa te pide que introduscas un numero y tambien te pide hasta que numeor quiieres elevar el numero tecleado anteriormente..


CODIGO



import javax.swing.*;
import java.math.*;




public class alexa {


 public static void main(String[] args) {


  int j;
  double newnum,newbase;


  String veces = JOptionPane.showInputDialog("Hasta que potencia deseas que se muestre");
  String base = JOptionPane.showInputDialog("Introduce el numero al que vas a elevar");


  int b = Integer.parseInt(veces);
  int a = Integer.parseInt(base);


  newbase = (double) a;


  for(j=0;j<=b;j++) {
  newnum = (double) j;
  System.out.println("\nTu numero elevado a la " + j + " potencia es " + Math.pow(newbase,newnum));
  }





 }


}

Ejecutandose

Bueno chavos aqui les dejo mi 7 reporte espero les sirva de muchoo..



martes, 9 de noviembre de 2010

Actividad 6

REPORTE DE 4 LENGUAJES IMPERATIVOS


Buenas Tardes chicos, pues aqui dejandoles una vez mas otra de mis practicas,


Programa Realizado en C

Este codigo esta basado en un switch( se implementa cuando es necesarario la utilización de un menú de opciones ya que el usuario deberá escoger una de las opciones, esto es que la variable pueda tomar diferentes valores.) e hice un menu de Restaurant donde te piden que escogas una de las 3 paquetes de comida y al momento de seleccionarla aparece lo que contine y su valor total
ahora cuando se elijiera un valor diferente de 1.2 o 3 se pone en pantalla que es un error y la peticion que vuelva a elegir su menu


Código:


#include<stdio.h>
#include<conio.h>
int main ()
{
     int x;
     printf("*-*-*--*-*-*-*-*-*-*-Bienvenidos a AC FOOD´s*-*-*-*-*-*-*-*-*-*-*-\n");
     printf("\n\n\nCual sera la orden del dia \n");
     printf("A.Paquete 1\n");
     printf("B.Paquete 2\n");
     printf("C.Paquete 3\n");
     scanf("%i", &x);
     switch(x)
     {
              case 1: printf("Hamburguesa\n Soda 500 ml\n TOTAL a PAGAR: $75");
              scanf("%d", & x);
              break;
              case 2: printf("Pizza\n Soda 500 ml\n Juguete AC´´Food´s\nTOTAL A PAGAR : $ 156.85 ");
              scanf("%d", & x);
              break;
              case 3 : printf("Ensalda\n Jugo de Naranja\n Total a pagar : $ 35");
              scanf("%d", & x);
              break;
              default: printf("Error de menu, vuelva a ordenar porfavor\n");
              scanf("%d", & x);
              }-
              getche();
              return 0;
              }
                                                                    
                                                                     En pantalla 
**********************************


Programa realizado en Pascal

Este programa solo muestra matrices en la salida estandar


CODIGO


type 
   tDimension = 1..100;
   eMatriz(f,c: tDimension) = array [1..f,1..c] of real;
   
   tRango = record
      f,c: tDimension value 1;
   end;
   
   tpMatriz = ^eMatriz;


procedure EscribirMatriz(var m: tpMatriz);
var filas,col : integer;
begin
   for filas := 1 to m^.f do begin
      for col := 1 to m^.c do
         write(m^[filas,col]:7:2);
      writeln(resultado);
      writeln(resultado)
     end;    
end;



*-*-*-*-*-*-*-*-*-*-*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*

Programa realizado en Fortran

Un programa de Fortran es una secuencia de líneas de texto. El texto debe de seguir una determinada sintaxis para ser un programa válido de Fortran.  La estructura del programa principal es:
program name
declarations
statements
stop
end
En este programa lo que realizaria es leer un número real r y muestra el área del círculo con radio r.pero al momento de compilarlo no pude. :( como quiera
aqui les dejo el codigo por si a alguien si le pudo compilar y me ayude :)

CÓDIGO

program area de un circulo
      real r, area
      write (*,*) 'Escribe el radio r:'
      read  (*,*) r
      area = 3.14159*r*r
      write (*,*) 'Area = ', area

      stop
      end



*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*-*
Programa realizado en Cobol
Este programa esta muy sencillo solo imprime en pantalla un texto
la verdad si batalle unpoquito en encotrar un compilador y un tutorial que pudiera entender bien y pues leeei varios y de todos esto saque un solo conocimiento :)

CODIGO



IDENTIFICATION DIVISION.
        PROGRAM-ID. tarea 1.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        77 ESPERA PIC X.
        77 TECLA PIC 99.
        PROCEDURE DIVISION.
        COMIENZO.
            DISPLAY "Hoy es un buen dia para sonreir   !, por favor presiona una tecla".
            ACCEPT ESPERA NO BEEP ON EXCEPTION TECLA NEXT
            SENTENCE.
            DISPLAY "La tecla que presionaste fue: ".
            DISPLAY TECLA.
            EXIT PROGRAM.
            STOP RUN






Bueno chicos aquí les dejo mi reporte y espero sus comentarios para ver que tal estuvo mi trabajo y pliis pongan sugerencias.."!!!!  :)


Buen dia saludos...:)

viernes, 29 de octubre de 2010

Actividad 4

LENGUAJES FUNCIONALES


Ke onda compañeros ..
aqui les dejo 2 porgrams uno sencillito y otro unpoquito mas complicado elaborados en HASKELL...
batalle un chorro en econtrar un tutorial bueno que me puediera explicar aparte que tambien recivi ayuda.
espero les sirva esta actividad.




















Haskell es un lenguaje de programación puramente funcional de propósito general yfuertemente tipado. Su nombre proviene del lógico Haskell Curry.


Dado un número "n" entero se separa el primer dígito haciendo uso de la función mod n 10, para luego este sumar al cociente de la división del numero n entre 10, (div n 10).
Código fuente

suma::Int->Int

suma 0=0

suma n=(mod n 10)+suma(div n 10)





suma::Int->Int

Lo que hace este programa es que cuando la variable n asuma el valor de 0 la función devolverá el valor de 0.

-----------------------------------------------------------------------------------------------------------------------------------


Otro programa realizado en Haskell conunpoquito mas de grado de dificultad bueno para mi si lo fue,.. que se encarga  de sumar.. el numero que le introdusiste o mas bien que sele dio al valor de n y depsues que los suma a cada uno de sus digitos por ejemplo 150.. loke ara el programa es sumas 1+5+0 = 6


Lueog los multiplicara y lansara el resultadoo...
1*5*0 = 0
 ly ahi acaba el programa.


Codigo


digitos ::Int->Int

digitos 0 = 0

digitos n =1+digitos (div n 10)



suma::Int->Int

suma 0=0

suma n=(mod n 10)+suma(div n 10)



prod::Int->Int

prod 0=1

prod n=(mod n 10)*prod(div n 10)



resultado::Int->String

resultado 0=""

resultado n="numero de digitos:"++show(cont n)++" "++"la suma es:"++show(suma n)++" "++"el producto es:"++show(prod n)



*****************************************************************
Yo me base mas en Haskell porque seme hizo mas sencillo
espeor les srivan estos programithas..
saludos
y los veo en clase :)









miércoles, 27 de octubre de 2010

Clase 3

ALGORITMO DE KRUSKAL


Actividad 5..!!

PROBLEMA LOGICO

El rompecabezas: A, de cuatro pulgadas cubo sólido de madera está cubierto con pintura azul en los seis lados. 


Entonces el cubo se corta en pequeños cubos de una pulgada. 



Estos nuevos cubos de una pulgada tendrá o tres lados azul, dos caras azules, de un lado azul, o ningún lado azul. ¿Cuántos de cada uno habrá?




Cut Cube

sOLUCION...


Hay 24 con una cara de color porque es como si tubieras el original solo con lineas de corte , 8 con tres caras de colores, 24 con dos lados de color, ose alo mismo porque aora se puede ver por su interior, y 8 sin lados de color.






PROGRAMA REALIZADO EN PROLOG

Este programa aunque no sea del mismo tipo que me toco ami lo realize y realiza comparaciones de una familia donde indica que si es hermano, papa..etc.