miércoles, 20 de octubre de 2010

Reporte #5 Problema Lógico

Los maridos celosos.
 
Tres maridos celosos y sus respectivas esposas tienen que cruzar el río en un bote que sólo puede llevar a dos personas en cada viaje.
¿Cómo logran cruzar todos ellos el río de forma que nunca una mujer queda en compañía de uno o dos hombres si su marido no esta presente

Solución                                  
  1. Cruzan el rio el marido y su esposa.
  2. Su esposa regresa por la esposa del marido dos(E2).
  3. Ellas dos cruzan el rio.
  4. Marido uno (M1) regresa por el marido dos(M2).
  5. Ellos dos cruzan el rio.
  6. La esposa dos(E2) regresa por la esposa 3(E3).
  7. Las dos cruzan el rio.
  8. La esposa tres(E3) regresa por su marido(M3). 
  9. Finalmente ellos dos cruzan el rio.


M (Marido) y E (Esposa)

1-
M1E1                                
M2E2
M3E3

2-
                                                                                      M1E1                      
M2E2
M3E3

3-
E1                                                                                   M1
M2E2
M3E3


4-
                                                                                       M1E1
M2                                                                                       E2
M3E3

5-
M1                                                                                       E1
M2                                                                                       E2
M3E3

6-
                                                                                       M1E1
                                                                                       M2E2
M3E3

7-
                                                                                    
                                                                                       M1E1
     E2                                                                                  M2
M3E3


8- 
                                                                                       M1E1
                                                                                       M2E2
M3                                                                                       E3

9-
                                                                                       M1E1
                                                                                       M2E2 

M3E3                                                                                      

10-  
                                                                                       M1E1
                                                                                       M2E2
                                                                                       M3E3   

Para el programa en prolog resolvi el siguiente:

 EL TEST. Tomás, Pedro, Jaime, Susana y Julia realizaron un test. Julia obtuvo mayor puntuación que Tomás, Jaime puntuó más bajo que Pedro pero más alto que Susana, y Pedro logró menos puntos que Tomás. ¿Quién obtuvo la puntuación más alta?

Aqui el codigo 
Aqui preguntamos quien tiene mayor puntaje

y la respuesta es Julia.
Descarga

Bibliografia

miércoles, 1 de septiembre de 2010

Tarea #3 Lenguajes Script

Entre los lenguajes script que elegí son:
a) Shell
b) Python
c) Perl

Shell

Este programa lo realice en el lenguaje Shell y básicamente te permite elegir entre varias figuras y así determinar su área. Algo que note en este lenguaje es que la forma en realizar las operaciones aritméticas, es muy diferente a lo que hemos visto en el lenguaje C. Pienso que es un poco más complicado, pero algunas estructuras como el switch son muy parecidas al lenguaje C.

Aquí el ejemplo






















Python 
El segundo programa lo realice en el lenguaje Python y básicamente lo que hace es calcular el factorial de un número. En este lenguaje algo que note con respecto a lo que he visto en C, es que el for se declara de diferente manera y pienso que es más fácil y simple.

Aquí el ejemplo











Perl 

El tercer programa lo realice en el lenguaje Perl y pues básicamente lo que realiza es que determina si un número es par, impar o nulo, además de contar cuantos son de cada uno. En este lenguaje algo que llamo la atención es que su estructura es muy parecida al lenguaje C. Por este motivo fue el programa que se me hizo mas fácil. En este programa se puede ver como un for se declara prácticamente igual, la estructura del if e incluso hasta hace uso de las llaves y también hice uso de arreglos, estos son prácticamente igual.

Aquí el ejemplo






















Descargas
area.sh
factorial.py
numeros.pl


Espero sus comentarios y cualquier duda háganmela saber.

miércoles, 18 de agosto de 2010

Presentación #1 Ensambladores

Aquí les dejo la presentación sobre ensambladores. A mi me tocó sobre el tipo de ensambladores.


Aquí los otros integrantes del equipo.
Alberto Huerta
Raúl Rodríguez

Tarea #2 Lenguaje C Sharp (C#)


Yo escogí el lenguaje C Sharp, aquí les hablare un poco de el.

Este lenguaje fue desarrollado por Microsoft. El lenguaje C Sharp apareció finales del año 2001(diciembre). Este lenguaje de programación entra en el paradigma de los lenguajes orientados a objetos.

Como lo vimos en clases pasadas, un lenguaje orientado a objetos es aquel que utiliza objetos y forma clases para crear aplicaciones.

Es un lenguaje el cual su estructura, sintaxis es muy parecida a lo que es el lenguaje C o C++, además que incluye características de los lenguajes que son orientados a objetos como lo es Java.

El símbolo que utiliza C Sharp, consiste en dibujar dos signos positivos en la parte de arriba y otros dos signos positivos debajo de estos.

El manual (tutorial) que encontré se me hizo muy completo, ademas que explica desde lo básico.


El compilador que utilice para C Sharp fue el SharpDevelop, el cual es de libre distribución. Asi que no tienes ningún problema si lo descargas.


El ejemplo que hice es muy simple, trata de sacar el promedio de dos calificaciones y además determinar si con el promedio que obtuvo acredita o no acredita.


Finalmente pienso que C Sharp es un lenguaje que se nos puede facilitar en algunas cosas, por ejemplo los que ya vimos algo de C en la facultad, esto nos sirve ya que muchas cosas de su estructura es parecida. También en los últimos años ha sido de los mas populares.



Espero sus comentarios.

Referencia Bibliográfica.

http://es.wikipedia.org/wiki/C_Sharp

miércoles, 11 de agosto de 2010

Tarea #1 Mapa Conceptual "Fundamentos de la programación"


Aquí les dejo una explicación del mapa conceptual.

Un lenguaje de programación es un lenguaje artificial, el cual da unas instrucciones a la computadora.

Un lenguaje de programación  se compone de tres elementos importantes el léxico, la sintaxis y la semántica.

a) El léxico: Se refiere a las palabras, símbolos que utilizamos en el lenguaje.
b) La sintaxis: Se refiere a las reglas que seguir en el lenguaje.
c) La semántica: Es el significado del lenguaje.

Entre las interacciones que se dan en la computadora, un usuario el cual desarrolla un programa, el cual mediante el sistema operativo da instrucciones al hardware.


Paradigmas de programación
 
El lenguaje imperativo es aquel que da las ordenes de como poder realizar alguna tarea, mientras que el lenguaje declarativo, declara las condiciones para realizar alguna tarea.

Del lenguaje imperativo esta lo que es el lenguaje estructurado y el orientado a objetos.  
El lenguaje estructurado se forma en base de enunciados. Ejemplos de este lenguaje C y Pascal. El lenguaje orientado a objetos se forma mediante clases. Ejemplos de lenguaje orientado a objetos C# y Java.

Del lenguaje declarativo esta lo que es el lenguaje funcional y el lógico.
El lenguaje funcional es aquel que como su nombre lo dice se forma mediante funciones, una de sus características es que es recursivo. Ejemplos de lenguaje funcional Lisp.
El lenguaje lógico es aquel en el que podemos formar varias relaciones mediante algunos hechos. Ejemplo de lenguaje lógico se encuentra Prolog.

La validación y verificación en programación nos ayuda a saber que es lo que un usuario requiere, además de comprobar su originalidad.

Entre las características que debe tener un lenguaje de programación, están que debe ser claro, sencillo, portable. Sin embargo hay que tener en cuenta que algunos tienen mejores características que otros, así que aprender varios de los lenguajes nos ayudaría a determinar cual usar en cierto momento.

Espero sus comentarios.

Referencia Bibliográfica:
-Lenguaje de programación
-Interacciones Computadora
-Validación