¿Quien soy?

Soy Daniel Alejandro Bulnes Reyna, mi número de matricula es 1441186 y estoy inscrito en la materia de Lenguajes de programación en el horario de Martes M1 y Lab. Lenguajes de programación los Jueves a V1, las dos con la Dra. Elisa Schaeffer.



Espero que mi blog les agrade y puedan comentar en el, ya sea positiva o negativamente, y que cada dia mejoren mas los posts.



lunes, 8 de noviembre de 2010

Reporte 5 - Lenguajes Lógicos - Lenguajes de Programación

Buen día compañeros, en esta entrada explicaré dos problemas, en primera instancia el problema lógico que habíamos escogido en clase, este nos planteaba:

COMIENDO EN EL RESTAURANTE. Armando, Basilio, Carlos y Dionisio fueron, con sus mujeres, a comer. En el restaurante, se sentaron en una mesa redonda, de forma que:


- Ninguna mujer se sentaba al lado de su marido.
- Enfrente de Basilio se sentaba Dionisio.
- A la derecha de la mujer de Basilio se sentaba Carlos.
- No había dos mujeres juntas.

¿Quién se sentaba entre Basilio y Armando?


Lo resolví de la siguiente manera:

1.- Primero puse la mesa como nos decia:
2.- Despues designe diferentes colores para los 4 hombres y para sus esposas...

3.- Luego senté a Basilio, y enfrente a Dionisio como decía una de las condiciones, otra de las condiciones nos decía que a la derecha de la mujer de Basilio se sentaba Carlos, pero ninguna mujer se sentaba al lado de su marido por lo cual la mujer de Basilio se sentó a la derecha de Dionisio y a la derecha de ella se sentó Carlos.


 
4.- Después como solo quedaba Armando lo senté frente a Carlos, ya que como nuevamente menciono dos mujeres no podían sentarse juntas. Después decidí sentar a la esposa de Armando y como la condición decía la mujer no se podía sentar al lado de su esposo, y como uno de los puestos de enfrente ya estaba ocupado por la esposa de basilio la sente en el otro lugar...

5.- Así fui llenando los lugares, ya que descubrí que cada mujer se sentaba enfrente y del lado izquierdo de su marido y llene los lugares hasta saber cual era la respuesta a la pregunta propuesta por el problema.

6.- Y la respuesta fue: LA ESPOSA DE DIONISIO.



Bueno y como segunda instancia hice algo en gprolog sobre una venta de computadoras en la cual solamente vamos haciendo preguntas sobre lo que es marca, precio, memoria ram, capacidad de disco duro y el porcentaje de popularidad en el mercado.

computadoras(X,Y,Z,A,B):-laptop(X,Y,Z,A,B);escritorio(X,Y,Z,A,B).


laptop(HP,8965,4,250,89).
laptop(ACER,6586,1,160,65).
laptop(DELL,7183,2,160,71).
laptop(VAIO,8521,2,250,84).
laptop(APPLE,9851,4,320,95).
escritorio(APPLE,7842,2,250,75).
escritorio (COMPAQ,6128,1,80,50).
escritorio(DELL,7542,2,250,73).
escritorio (GATEWAY,6893,2,320GB,78).
escritorio(HP,10251,4,500,98).

X=MARCA
Y=PRECIO
Z=MEMORIA RAM
A=DISCO DURO
B=POPULARIDAD EN EL MERCADO

Y luego lo ejecute en gprolog, y se vio de la siguiente manera:
 
1. Aqui fue la ejecución con el consult.
 
 2. Aquí le pregunte que si habia computadoras en la lista, y como respuesta arrojo si
 3.Aqui con sustituimos con x uno de los espacios para que nos diera las marcas de computadoras que habia:
 4. Aqui le puse que si habia computadoras hp
 5. Aqui cuales eran las opciones para las hp y cuales eran sus precios, sustituyendo la segunda variable por Y que era la del precio
 6. Aqui escogi un precio y luego le pregunte por la variable Z que era la memoria ram, y contesto 4 osea 4GB.
 7.Aqui le di los 4GB, y pregunte por la siguiente caracteristica, la respuesta fue 500 GB de disco duro
 8. Aqui le pregunte por la ultima que era 98% de popularidad, y luego pregunte por todas las caracteristicas aver si existia una, y la respuesta fue si.
 9.En esta pregunte por las 2 opciones de hp, pero poniendo las variables para que nos diera las caracteristicas de cada una.
 10. En esta le pregunte por las computadoras, como en la anterior pero en esta quitando la marca y que nos diera las 5 caracteristicas de cada una de las opciones.

 Espero y se haya visto claramente lo que se trato de hacer, recuerden que el (;) se utiliza para que te siga dando las opciones, el sistema siempre te confirma con un yes cuando haya terminado, ademas de que el archivo de texto lo hice en emacs y acuerdense que es con la extension .pro o .prolog y que al finalizar de cada pregunta que le hagan al sistema deben poner un punto para que este se los acepte.
 


Alumno: Daniel Alejandro Bulnes Reyna
Matricula: 1441186
Clase: Martes M1-M3
Dra. Elisa Schaeffer

3 comentarios:

  1. Que extraño esta ese problema jajaja si yo fuera con mi pareja a un restaurante me sentaría a su lado no a dos lugares de ella pero que mas da jaja.
    Muy buena tu entrada solo que estribera bien que lo hubieses puesto como si estribera en algún lenguaje lógico, con esa tipo de sintaxis, por que de echo es como lo pidió la maestra pero como quiera muy buena forma de resolverlo amigo
    EXITO !!

    ResponderEliminar
  2. Lo intente... pero se me dificulto mucho :S:S espero y quede claro algo con el segundo

    ResponderEliminar
  3. Je. Mejor el haber hecho _algo_ en prolog que nada ;) Good thinking. Estos reportes ya los puse NP la vez pasada que califiqué, por lo cual ahora te los contabilizo en puntos extra, de los cuales te pongo cuatro (tres por el problema resuelto y uno por el otro en prolog).

    ResponderEliminar