lunes, 22 de noviembre de 2010

Proyecto final

Bueno el proyecto final consta de elegir un caso particular que requiere uso de uno o varios tipos de datos estructurados, donde tenemos que explicar la necesidad, la esctructura, el lenguaje utilizado para definirla y la manera en que se declara y manipula variables de dicho tipo.
Entonces nuestro programa se trata de una base de datos de 3 alumnos de cierto grupo, les presentamos el video:

El lenguaje que utilizamos fue el C.
El link para poder ver el video en Youtube es el siguiente:
http://www.youtube.com/watch?v=ZZC-p-MgKYc

miércoles, 17 de noviembre de 2010

8° Reporte: Multiparadigmas

Este reporte trata de hacer un programa en un lenguaje multiparadigma, que nos dan a escoger los lenguajes Go, Leda u Oz.
Bueno más que nada explicare que es el lenguaje de programación multiparadigma:

Permite crear programas usando más de un estilo de programación, lo que tiene como objetivo en el diseño de estos lenguajes es permitir a los programadores utilizar el mejor paradigma para cada trabajo, admitiendo que ninguno resuelve todos los problemas de la forma más fácil y eficiente posible.

Entonces yo puse un programa en Oz, que muestra una clase puede actuar como una especificación del módulo. Que nos queda de la siguiente manera:


  • Al momento de usar ListC lista común de los procedimientos de los métodos.
  • clase ListC de BaseObjetc 
    También se muestran los métodos funcionales, es decir, métodos que devuelven resultados similares a las funciones. Un método funcional en general el siguiente formulario:

     
    m metanfetamina (... $) S finales EAquí la clase hereda ListC de la BaseObject clase predefinida que tiene sólo un método trivial: noop metanfetamina () saltar final.

Bueno esa es mi aportación en el reporte 8°, espero le hayan entendido.

7° Reporte: Lenguajes orientados a objetos

Bueno el reporte trata de que realizemos dos programas que esten con un lenguaje orientado a objetos, los que nos dieron a escoger fueron Java, C++, Ada y Smalltalk.

*************************************C++******************************************
Primero que nada escogi el leguaje C++ que el programa se trata de pedir un número de personas, luego se le pedira a la persona su peso pero nosotros solo vamos a generar un número aleatorio en determinado rango. Luego se clasificará a las personas en rangos de peso y al final mostrar una tabla que muestre la frecuencia de cada rango con asteriscos.

Empezamos con el código:
  • Al poner srand(time(NULL)); que nos sirve para inicializar los números aleatorios.
  • Usamos un ciclo for.
  • Usamos peso[c]=51+rand()%(120-51); que guarda un número aleatorio del 51 al 120 en cada elemento del arreglo.
  • Cuando ponemos los case nos va a imprimir cada caso algo diferente.
  • lim=cat[c]; significa que no podemos usar un arreglo como límite del ciclo.
  • Entonces al final ponemos un cin.get();cin.get();  que define la ejecución al final (es como el getch(); ).
El programa nos quedaría asi: (Lo pondre en dos pantallas ya que el código no se veía completo)


Al momento de compilar el programa nos queda de la siguiente manera:




 **********************************JAVA¨******************************************

Bueno aquí en Java utilize Eclipse, el programa consta de escoger varios tipos de hilos.

Empezamos con el código:
  • Para poner un comentario que aparezca en la pantalla usamos public y enseguida lo que deseamos que aparezca.
  • Puse Hilo 1 h1, y así para poder instanciar las clases de hilo.
  • Usamos un H1.start y H2.start para poder iniciar las llamadas a los hilos.
  • Hilo1 extends Thread se usa para extender o heredar la clase Thread.
  • Al momento de poner public void run() significa que run contiene el código que se ejecutara.
Entonces nos quedaría así:











Bueno entonces esto es el reporte 7, espero le hayan entendido. Les dejo los links de los que me base para hacer los programas:



miércoles, 10 de noviembre de 2010

Reporte 6 Lenguajes imperativos

Este reporte consta de hacer 4 programas en diferentes lenguajes imperativos, los cuales nos dieron a escoger: Cobol, Pascal, C, Fortran y Algol.

Empecé con un programa en Pascal:
                                             

Bueno aquí decidí hacer 2 programas, ya que Pascal se me hizo facíl, dos programas que son de la suma de ciertos números y el área de un tríangulo.

Programa suma de ciertos números:
  • Iniciamos poniendo la palabra Program esto se usa para darle el nombre al programa entonces yo puse "program suma;" (igual que C se tiene que poner " ; " ya que si no los pones no corre el programa.
  • La palabra uses es para declarar las bibliotecas, el crt es una de las tantas bibliotecas.
  • Luego declaramos variables con var.
  • Para identificar una sentencia compuesta de un grupo sucesivo usamos la palabra Begin.
  • Limpiamos la pantalla actual usamos ClrScr.
  • Y empezamos a poner el código, que nos queda así:
                                  

  • Para poner un texto en el IDE usaremos la palabra writeln(' texto ')
  • Y para finalizar el programa ponemos end.
  • Al compilar y correr el programa nos queda de la siguiente manera:
                                 

  • Entonces ahí podemos observar que el programa funciona correctamente.

Área de un tríangulo:
Bueno aquí pongo otro ejemplo donde sacamos el área de un tríangulo.
  • En este caso usamos la palabra procedure que significa que creamos un procedimiento.
Nos queda de la siguiente manera:


  • Aquí al final use ReadKey; sirve para detener la pantalla, entonces lo veremos así:


************************************FIN PASCAL**********************************
                                                                    

  FORTRAN:           

  • En Fortran iniciamos como Pascal con Pogram.
  • Para declarar las variables usamos real.
  • Al momento de que queramos poner un comentario pondremos la letra c observamos como las letras cambian de color verde, indicando que es un comentario en el programa.
  • Usamos un write (*,*) ' TEXTO ' que ahí ponemos el comentario que deseamos que aparezca en la pantalla.
  • Al utilizar read (*,*) es para que pueda leer la función de write.
  • Empezamos con el código nos queda así:


  • Al momento de nosotros utilizar la palabra stop es para decir que detenga la pantalla al momento de correr el programa.
  • Utilizamos end. para dar por finalizado nuestro código y al momento de correrlo nos queda de la suguiente manera:


********************************FIN DE FORTRAN*********************************

                                                                       C
                                                                                                      


Aquí en C como la mayoría ya lo conocemos, hice un programa donde estructurara los datos de ciertas personas. Pidiendo la edad, nombre, apellido y salario por hora.

  • Iniciamos poniendo las bibliotecas.
  • Qué el programa nos queda de la siguiente manera:


  • Entonces al momento de correr el programa nos va a pedir que ingresemos los datos de 4 empleados para así poderlos ordenarlos.
  • Y nos queda de la siguiente manera:


***************************************FIN DE C**********************************


COBOL


En este lenguaje se me hizo un poco más complicado entonces simplemente hice un programa donde nos dijera "Hola Mundo" que nos quedaría de la siguiente manera:


  • Aquí observamos que usamos un procedure donde nos indica que haremos un procedimiento, igual que en Pascal.
  • Para poder desplegar la información en la pantalla usamos un  display "TEXTO"
  • Al finalizar ponemos un stop run para indicar que terminamos el código.
Al utilizar Cobol algunos de los requerimientos es que todo sea en mayuscula.


********************************FIN DE COBOL************************************

Bueno esa es mi aportación por este reporte, espero hayan entendido y les haya gustado.

Espero sus comentarios.

Saludos
Diana Calderon.











sábado, 6 de noviembre de 2010

Presentacion Regla de Simpson





En esta presentacion nos toco hablar de la integracion numerica, nosotros escogimos el tema de la Regla de Simpson ya que se nos hizo mas facil y pues por el nombre de Simpson =)

Por parte de mi equipo y mía esta es nuestra presentacion.

viernes, 5 de noviembre de 2010

5° Reporte: Problema Lógico - Prolog

El 5° Reporte nos toco hacer un problema lógico en Prolog, por mi parte escogi el problema donde dos muchachos tienen que cruzar el río, lo explico...

Dos muchachos desean cruzar un río. El único modo de ponerse a otro lado es en barco, pero aquel barco sólo puede tomar a un muchacho a la vez. El barco no puede volver solo, no hay ningunas cuerdas o trucos similares, aún ambos muchachos logran cruzar la utilización del barco.

Para solucionarlo en Prolog hay que poner a los dos muchachos con una variable.
Muchacho 1 (B)
Muchacho 2 (C)
Es un ejemplo las letras.

Entonces al ponerlo en Prolog nos queda así:


y la solucion seria:

Los muchachos comienzan sobre los lados de enfrente del río.


Esa es mi aportación del problema lógico

jueves, 28 de octubre de 2010

Lenguajes funcionales 4° Reporte


El 4° Reporte consta de hacer dos series con diferentes tipos de lenguajes, para mi se me hicieron mas faciles el lenguaje Haskell y el R.
Busque informacion en internet, me guie en las presentaciones, y alguno que otro video de internet. 

  • Empezando con Haskell:
 Es un lenguaje de programación puramente funcional de propósito general y fuertemente tipado. Su nombre proviene del lógico Haskell Curry.

El programa que realice son varias ecuaciones matematicas.
         - Primero que nada abrimos la consola de Haskell, donde nos ponen "Prelude>" que nos dice que de ahi empezamos hacer el código.
         - Empece poniendo length [1,2,3,4] que con esto declaramos que nos de el numero que esta al final.
         - Despues una ecuacion matematica suma y multiplicacion de ciertos numeros.
         - El declarar take 3 [1,2,3] y que nos diera lo mismo simplemente le estamos diciendo que nos de 3 numeros.
Nos queda de la siguiente manera:



  • R
Es un lenguaje y entorno de programación para ánalisis estadistico y grafico.
Este lenguaje se me hizo mucho más facíl, ya que no es tan complicado como Python.
Aquí las serie que hice fuerón 5:
A diferencia con el Python aqui empezamos con ">" y despues de ahi ponemos el código. y nada mas al darle Enter y simplemente sale el resultado.
Nos queda de la siguiente manera:
Bueno esta es mi aportación del reporte 4, espero y le hayan entendido.

El reporte esta corregido, por la observacion del programa Phyton, entonces decidi poner Haskell

Saludos.

Gracias









miércoles, 1 de septiembre de 2010

Lenguajes script-3°reporte

El tercer reporte consta de poner tres lenguajes script.




Empezamos con el lenguaje Perl.
Perl es un lenguaje de script, lo que quiere decir que no hace falta un fichero binario para poder ejecutar las instrucciones que hemos codificado usando este lenguaje, es decir, es interpretado, aunque el intérprete de Perl "compila" los programas antes de ejecutarlos.
Perl tiene características de muchos lenguajes de programación, pero al que más se parece es al C.
Con Perl podemos programar casi de todo.

Inciamos con un programa que pinta recursivo un directorio y los subdirectorios.
  • Al principio al poner #! tendremos que poner el PATH al interprete de Perl.
  • Para poner algún comentario ponemos # y ocupa el resto de la línea a partir de este carácter.
  • use Cwd; es un modulo para encontrar el directorio actual.
  • Cuando queremos que aparezca en la pantalla usamos un print.
Entonces el programa quedaría así:

#! /usr/bin/perl -w
use Cwd; 
sub MiraDir{
  my $dirActual= shift;
  my $dirInicial= &cwd;

  chdir($dirActual) or
 die "No se puede acceder al directorio $dirActual: $!\n";
  opendir(DIR,".") or die "No se puede abrir el directorio $dirActual: $!\n";
  my @nombres= readdir(DIR) or die "No se puede leer $dirActual: $!\n";
  closedir(DIR);

  foreach my $nom (@nombres) {
    next if ($nom eq ".");
    next if ($nom eq "..");

    if (-d $nom) {
       &MiraDir($nom);
    }
    else {
       if ($dirInicial eq $dirActual) {
          print "$dirActual/$nom\n";
       }
       else {
          print "$dirInicial/$dirActual/$nom\n";
       }
    }
  }
  chdir($dirInicial) or
     die "No se puede cambiar al directorio $dirInicial: $!\n";
}

&MiraDir(&cwd);

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

JAVA

Es un lenguaje sencillo de aprender. Su sintaxis es la de C++ “simplificada”. Los creadores de Java partieron de la sintaxis de C++ y trataron de eliminar de este todo lo que resultase complicado o fuente de errores en este lenguaje. La herencia múltiple, la aritmética de punteros, por la gestión de memoria dinámica.

  •  Aquí para declarar las variables al igual que en C se usa un int.
  • Para poder imprimir y que aparezca en la pantalla el texto usamos un prt.
  • Igual que en C para poner un comentario utilizamos //...
  • static void prt(String s) se usa para ahorrar al momento de teclear.
El programa nos quedaría así:

 public class Cadena de caracteres {
public static void main(String[] args) {
int i = 45,j=2;
//Imprime por consola la cadena de caracteres “Cos i : “
prt("Cos i : " + Math.cos(i));
prt("Sen i : " + Math.sin(i));
prt("j^i : " + Math.pow(j,i));
}
static void prt(String s) {
System.out.println(s);
}
}

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


PHYTON
Es un lenguaje de scripts, sencillo pero potente, orientado a objetos y muy sencillo de aprender. Esta disponible en M$-Windows, GNU/Linux, Mac y cualquier entorno *IX. Dispone de una excelente documentación.
  • Al igual que en Perl para poner un comentario usamos un #.
  • Para declarar variables usamos un def.
Una sencilla función que busca los número primos que hay hasta un índice dado. Muy ineficiente, sólo muestra la sintaxis de Python, que el programa nos quedaría así:

#! /usr/bin/python# Función que calcula los números primos hasta n

def primos (n):
    "Función que calcula los números primos hasta n"
    for i in range(2,n):
        for x in range(2,i):
            if i % x == 0:
                #print i, '=', x, 'por', n/x
                break     #No se ejecuta el else

        else :
            print i, 'es primo.'

Bueno mi reporte esta corregido ya corregí los comentarios de la profesora.


Información basada de:
http://www.roesler-ac.de/wolfram/hello.htm
http://mundogeek.net/tutorial-python/
http://flanagan.ugr.es/perl/datos.htm 




miércoles, 18 de agosto de 2010

Lenguaje Cobol

COBOL:
El lenguaje COBOL, fue creado en el año 1960 con el objetivo de crear un lenguaje de programación universal que pudiera ser usado en cualquier ordenador, ya que en los años 1960 existían numerosos modelos de ordenadores incompatibles entre sí, y que estuviera orientado principalmente a los negocios, es decir, a la llamada informática de gestión.

Características:
  • COBOL fue dotado de unas excelentes capacidades de autodocumentación.
  • Una buena gestión de archivos y una excelente gestión de los tipos de datos para la época, a través de la conocida sentencia PICTURE para la definición de campos estructurados. Para evitar errores de redondeo en los cálculos que se producen al convertir los números a binario y que son inaceptables en temas comerciales, COBOL puede emplear y emplea por defecto números en base diez. Para facilitar la creación de programas en COBOL, la sintaxis del mismo fue creada de forma que fuese parecida al idioma inglés, evitando el uso de símbolos que se impusieron en lenguajes de programación posteriores.
  •  Pese a esto, a comienzos de los ochenta se fue quedando anticuado respecto a los nuevos paradigmas de programación y a los lenguajes que los implementaban. En la revisión de 1985 se solucionó, incorporando a COBOL variables locales, recursividad, reserva de memoria dinámica y programación estructurada.
  • En la revisión de 2002 se le añadió orientación a objetos, aunque desde la revisión de 1974 se podía crear un entorno de trabajo similar a la orientación a objetos, y un método de generación de pantallas gráficas estandarizado.
  • Antes de la inclusión de las nuevas características en el estándar oficial, muchos fabricantes de compiladores las añadían de forma no estándar. En la actualidad este proceso se está viendo con la integración de COBOL con Internet. Existen varios compiladores que permiten emplear COBOL como lenguaje de scripting y de servicio web. También existen compiladores que permiten generar código COBOL para la plataforma .NET y EJB.

 Pese a que muchas personas creen que el lenguaje COBOL está en desuso, la realidad es que casi todos los sistemas que requieren gran capacidad de procesamiento por lotes, tanto las entidades bancarias como otras grandes empresas con sistemas mainframes utilizan COBOL. Esto permite garantizar la compatibilidad de los sistemas antiguos con los más modernos, así como tener la seguridad de que el lenguaje es perfectamente estable y probado. Según un informe de Gartner Group de 2005, el 75% de los datos generados por negocios son procesados por programas creados en COBOL, y en otro informe de 1997 estima que el 80% de los 300.000 millones de líneas de código existentes están creados en COBOL, escribiéndose 5.000 millones de líneas nuevas de COBOL cada año. Con todo eso, hoy por hoy, la programación en COBOL es uno de los negocios más rentables del mundo de la informática. En sistemas PC el COBOL ha caído en desuso, reemplazado por sistemas de programación visuales.
 
Ejemplo:
 
IDENTIFICATION DIVISION.
PROGRAM-ID. Saludos.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
PROCEDURE DIVISION.
INICIO.
DISPLAY "Hola mundo-".
STOP RUN.


Este es el lenguaje que me toco.
Saludos comenten..