Aqui dejo el codigo que hice, segun esto para que el sistema decida cual es la mejor opcion para un usuario para salir de vacaciones.
Se reciben 3 parametros, la temporada en la que piensa viajar, ya sea alta o baja, la cantidad de dinero minimo a gastar, el rango va de 1,000 hasta 30,000 pesos (poniendo solo cantidades cerradas, ej. 1000, 5000, 6000...), y por ultimo si desea viajar a playa o nieve.
El enlace del codigo es:
http://mipagina.chi.itesm.mx/.A00739420/VIAJE.PRO
Para hacer un query por ejemplo se hace lo siguiente, suponiendo que un usuario va a vacacionar en temporada alta, tiene $15,000, y quiere ir a la playa:
g(lugar(alta,15000,playa),R).
y este query regresa el mejor lugar para vacacionar con esas caracteristicas.
lunes, 16 de abril de 2007
martes, 27 de febrero de 2007
L15-DECL
Para este ejercicio usamos un interprete de Prolog para Ruby. Los resultados de la investigacion, asi como los ejemplos se encuentran en el blog de mi companero de equipo Miguel Solis:
http://masdsolis.blogspot.com
http://masdsolis.blogspot.com
sábado, 17 de febrero de 2007
L12-BOOKS
EQUIPO
Mario Figueroa
Gerardo Velo
Miguel Solis
DATA FLOW
C
Autor
Joyanes Aguilar, Luis.
Titulo
Programación en C : metodología, algoritmos y estructura de datos / Luis Joyanes Aguilar, Ignacio Zahonero Martínez.
Programación en C : metodología, estructura de datos y objetos
Madrid : McGraw-Hill, c2001.
Ubicación
CHI GENERAL
QA76.73 .C1 .J6P7 2001
Bibliografia
Incluye referencias bibliográficas (p. 542) e índice.
Materia
C (Lenguaje de programación para computadora).Programación orientada a objetos (Computación).
C++ (Lenguaje de programación para computadora)..
Autor alt
Zahonero Martínez, Ignacio
ISBN
8448130138
CONCURRENT
C#
Autor
Petzold, Charles.
Titulo
Programación en Microsoft Windows con C# / Charles Petzold ; tr. José Joaquín Cañadas Martínez, Franscisco Gabriel Gil Reyes, Carmen Martínez Cruz.
Madrid : McGraw-Hill, 2002.
Ubicación
CHI GENERAL
QA76.76 .O63P533 2002
Descrip.
1022 p. : il ; 24 cm + 1 CD-ROM (4 3/4 plg.)
Notas
Incluye índice.
Traducción de: Programming microsoft windows with C#.
Materia
C# (Lenguaje de programación para computadora).Programación (Computadoras)
Autor alt
Cañadas Martínez, José Joaquín, tr.Gil Reyes, Francisco Gabriel, r. Martínez Cruz, Carmen, tr.
ISBN
8448136985
Ada
Autor
Mayoh, B. H
Titulo
Resolución de problemas con ADA / Brian Mayoh
Barcelona : G. Gili, c1987
Ubicación
CHI GENERAL
QA 76.8 .A15 .M35 1987
Descrip.
235 p. : il. ; 24 cm
Series
Colección Ciencia Informática
Notas
Traducción de: Problem solving with ADAMateriaADA (Lenguaje de programación)PROGRAMACION ESTRUCTURADA
ISBN
8425213347
JAVA
Autor
Lea, Doug.
Titulo
Concurrent programming in Java : design principles and patterns / Doug Lea
Reading, Mass. : Addison-Wesley, c2000
Ubicación
CHI GENERAL
QA76.73 .J3 .L4C6 2000
Descrip.
ix, 411 p. : il. ; 24 cm
Series
The Java series
Notas
Incluye índice
Materia
Java (Lenguaje de programación para computadora).Programación paralela (computadoras)Java (Computer program language)Parallel programming (Computer science)
ISBN
0201310090
Mario Figueroa
Gerardo Velo
Miguel Solis
DATA FLOW
C
Autor
Joyanes Aguilar, Luis.
Titulo
Programación en C : metodología, algoritmos y estructura de datos / Luis Joyanes Aguilar, Ignacio Zahonero Martínez.
Programación en C : metodología, estructura de datos y objetos
Madrid : McGraw-Hill, c2001.
Ubicación
CHI GENERAL
QA76.73 .C1 .J6P7 2001
Bibliografia
Incluye referencias bibliográficas (p. 542) e índice.
Materia
C (Lenguaje de programación para computadora).Programación orientada a objetos (Computación).
C++ (Lenguaje de programación para computadora)..
Autor alt
Zahonero Martínez, Ignacio
ISBN
8448130138
CONCURRENT
C#
Autor
Petzold, Charles.
Titulo
Programación en Microsoft Windows con C# / Charles Petzold ; tr. José Joaquín Cañadas Martínez, Franscisco Gabriel Gil Reyes, Carmen Martínez Cruz.
Madrid : McGraw-Hill, 2002.
Ubicación
CHI GENERAL
QA76.76 .O63P533 2002
Descrip.
1022 p. : il ; 24 cm + 1 CD-ROM (4 3/4 plg.)
Notas
Incluye índice.
Traducción de: Programming microsoft windows with C#.
Materia
C# (Lenguaje de programación para computadora).Programación (Computadoras)
Autor alt
Cañadas Martínez, José Joaquín, tr.Gil Reyes, Francisco Gabriel, r. Martínez Cruz, Carmen, tr.
ISBN
8448136985
Ada
Autor
Mayoh, B. H
Titulo
Resolución de problemas con ADA / Brian Mayoh
Barcelona : G. Gili, c1987
Ubicación
CHI GENERAL
QA 76.8 .A15 .M35 1987
Descrip.
235 p. : il. ; 24 cm
Series
Colección Ciencia Informática
Notas
Traducción de: Problem solving with ADAMateriaADA (Lenguaje de programación)PROGRAMACION ESTRUCTURADA
ISBN
8425213347
JAVA
Autor
Lea, Doug.
Titulo
Concurrent programming in Java : design principles and patterns / Doug Lea
Reading, Mass. : Addison-Wesley, c2000
Ubicación
CHI GENERAL
QA76.73 .J3 .L4C6 2000
Descrip.
ix, 411 p. : il. ; 24 cm
Series
The Java series
Notas
Incluye índice
Materia
Java (Lenguaje de programación para computadora).Programación paralela (computadoras)Java (Computer program language)Parallel programming (Computer science)
ISBN
0201310090
lunes, 5 de febrero de 2007
L05-TRADUCTOR
Bueno para este traductor tome como base el archivo que nos dio el maestro, y edite ese mismo archivo agregandole las funciones de poder graficar tambien cuadrados, rectangulos, flechas, lineas y texto, y al igual que en los circulos tambien se puede cambiar el color de los rectangulos, cuadrados y del texto.
El codigo del programa completo lo pueden bajar de la siguiente liga:
El codigo del programa completo lo pueden bajar de la siguiente liga:
sábado, 27 de enero de 2007
L04-RUBY

Principios basicos de Ruby
Para la creacion de un objeto se tiene que estar utilizando la palabra new como a continuacion se representa:
song1 = Song.new("Ruby Tuesday")
Los condicionales son representados por if y se utiliza la palabra end para cerrarlos:
if count > 10
puts "Try again"
elsif tries == 3
puts "You lose"
else
puts "Enter a number"
end
Existen varias formas de representar los ciclos y a continuacion se ejemplificaran:
while square <10 square = "square*square"
end
Esto seria algo asi como un for:
def fibUpTo(max)
i1, i2 = 1, 1 # parallel assignment
while i1 <= max
yield i1
i1, i2 = i2, i1+i2
end
end
fibUpTo(1000) { f print f, " " }
Y tambien se puede utilizar el metodo each:
[ 1, 3, 5 ].each { i puts i }
Para crear un arreglo se puede hacer directamente introduciendo valores a cada posicion o simplemente con la palabra new para generar un arreglo vacio:
a = [ 3.14159, "pie", 99 ]
b = Array.new
Las cadenas se pueden desplegar de forma directa utilizando el comando puts o tambien se pueden guardar en variables:
puts "Mario"
MyName = "Mario"
A continuacion se muestra la forma de crear un metodo el cual tiene 3 argumentos:
def coolDude(arg1="Miles", arg2="Coltrane", arg3="Roach")
"#{arg1}, #{arg2}, #{arg3}."
end
Para llamar a este metodo solo se tiene que poner el nombre y tambien se puede llamar con algun argumento y este se modificara:
coolDude
con 1 argumento:
coolDude("Bart")
Por ultimo les dejo el link de donde saque la informacion, viene siendo algo asi como un API de Ruby.
http://www.ruby-doc.org/docs/ProgrammingRuby
[ 1, 3, 5 ].each { i puts i }
Para crear un arreglo se puede hacer directamente introduciendo valores a cada posicion o simplemente con la palabra new para generar un arreglo vacio:
a = [ 3.14159, "pie", 99 ]
b = Array.new
Las cadenas se pueden desplegar de forma directa utilizando el comando puts o tambien se pueden guardar en variables:
puts "Mario"
MyName = "Mario"
A continuacion se muestra la forma de crear un metodo el cual tiene 3 argumentos:
def coolDude(arg1="Miles", arg2="Coltrane", arg3="Roach")
"#{arg1}, #{arg2}, #{arg3}."
end
Para llamar a este metodo solo se tiene que poner el nombre y tambien se puede llamar con algun argumento y este se modificara:
coolDude
con 1 argumento:
coolDude("Bart")
Por ultimo les dejo el link de donde saque la informacion, viene siendo algo asi como un API de Ruby.
http://www.ruby-doc.org/docs/ProgrammingRuby
martes, 23 de enero de 2007
L03-SMALLTALK
A continuacion se presentan las secuencias mas utilizadas dentro de la programacion, pero en este caso en Smalltalk
Para generar un objeto en Smalltalk se utiliza la sig. sentencia:
sequence := OrderedCollection new
donde sequence es el nombre del objeto
Los condicionales se representan de la sig. manera:
(simon radius > charlie radius) ifTrue: [
MessageBox notify: 'Simon is bigger than Charles'].
Los ciclos se emplean de la sig. forma:
5 timesRepeat: [ simon growBy: 5 ].
este seria el equivalente a un for, ademas tambgien existe el while:
[ charlie position x > 0 ] whileTrue: [ charlie moveLeft: 10 ]
Los arreglos son representados de la sig. forma:
x := Array new: 20.
donde se crea el arreglo llamado x con 20 espacios, y para introducir elementos se utiliza la sig. sentencia indicando la posicion y el elemento a meter:
x at: 1 put: 99.
Las cadenas se pueden representar de forma directa poniendo el texto entre comillas simples o como sigue:
MyName := 'Mario'.
donde MyName es el nombre de la variable de la cadena
Para llamar un metodo es de forma simple:
circle radius
Para generar un objeto en Smalltalk se utiliza la sig. sentencia:
sequence := OrderedCollection new
donde sequence es el nombre del objeto
Los condicionales se representan de la sig. manera:
(simon radius > charlie radius) ifTrue: [
MessageBox notify: 'Simon is bigger than Charles'].
Los ciclos se emplean de la sig. forma:
5 timesRepeat: [ simon growBy: 5 ].
este seria el equivalente a un for, ademas tambgien existe el while:
[ charlie position x > 0 ] whileTrue: [ charlie moveLeft: 10 ]
Los arreglos son representados de la sig. forma:
x := Array new: 20.
donde se crea el arreglo llamado x con 20 espacios, y para introducir elementos se utiliza la sig. sentencia indicando la posicion y el elemento a meter:
x at: 1 put: 99.
Las cadenas se pueden representar de forma directa poniendo el texto entre comillas simples o como sigue:
MyName := 'Mario'.
donde MyName es el nombre de la variable de la cadena
Para llamar un metodo es de forma simple:
circle radius
miércoles, 17 de enero de 2007
L02-SMALLTALK
Smalltalk es considerado el primero de los lenguajes orientados a objetos.
Basicamente la historia y los origenes de Smalltalk se pueden encontrar en la pagina principal que es:
www.smalltalk.org
El segundo menu del lado izquiero es el que habla de que es este lenguaje y sus orignes.
Tambien podemos ver un amplio panorama de lo que es smalltalk en la ya tradicional pagina de Wikipedia, y se encuentra en version ingles y espanol. Aqui encontraran la historia, origines, influencias, algunos ejemplos, ademas de algunos links relacionados.
http://en.wikipedia.org/wiki/Smalltalk
http://es.wikipedia.org/wiki/Smalltalk
En esta otra pagina se encuentran todas las versiones existentes de smalltalk (pagina de smalltalk):
http://www.smalltalk.org/versions
Tambien encontre un link donde hay 3 ejemplos muy sencillos de smalltalk y tambien hay links de varios tutoriales de smalltalk.
http://www.engin.umd.umich.edu/CIS/course.des/cis400/smalltalk/smalltalk.html#relinks
Cabe mencionar que esos 3 ejemplos fueron utilizados en la version de Smalltalk Express, a continuacion les pongo el link de descarga:
http://www.cs.uta.fi/kurssit/OPOK/smalltalk/Smalltalk%20Express/
Por ultimo les pongo un link de un archivo PDF de una presentacion hecha por un profesor del tec de monterrey campus ciudad de mexico, en donde entre otras cosas presenta algo de historia de smalltalk de forma facil y sencilla:
http://computacion.cs.cinvestav.mx/~acaceres/courses/itesm/lp/clases/lp12.pdf
Basicamente la historia y los origenes de Smalltalk se pueden encontrar en la pagina principal que es:
www.smalltalk.org
El segundo menu del lado izquiero es el que habla de que es este lenguaje y sus orignes.
Tambien podemos ver un amplio panorama de lo que es smalltalk en la ya tradicional pagina de Wikipedia, y se encuentra en version ingles y espanol. Aqui encontraran la historia, origines, influencias, algunos ejemplos, ademas de algunos links relacionados.
http://en.wikipedia.org/wiki/Smalltalk
http://es.wikipedia.org/wiki/Smalltalk
En esta otra pagina se encuentran todas las versiones existentes de smalltalk (pagina de smalltalk):
http://www.smalltalk.org/versions
Tambien encontre un link donde hay 3 ejemplos muy sencillos de smalltalk y tambien hay links de varios tutoriales de smalltalk.
http://www.engin.umd.umich.edu/CIS/course.des/cis400/smalltalk/smalltalk.html#relinks
Cabe mencionar que esos 3 ejemplos fueron utilizados en la version de Smalltalk Express, a continuacion les pongo el link de descarga:
http://www.cs.uta.fi/kurssit/OPOK/smalltalk/Smalltalk%20Express/
Por ultimo les pongo un link de un archivo PDF de una presentacion hecha por un profesor del tec de monterrey campus ciudad de mexico, en donde entre otras cosas presenta algo de historia de smalltalk de forma facil y sencilla:
http://computacion.cs.cinvestav.mx/~acaceres/courses/itesm/lp/clases/lp12.pdf
Suscribirse a:
Comentarios (Atom)