Lenguajes Imperativos (Presentación)
Blog utilizado para la clase de Lenguajes de Programación llevada en Sabatinos
sábado, 24 de septiembre de 2011
viernes, 16 de septiembre de 2011
Presentación Lógico
Explicación Ejemplo
Esta entrada explicare el ejemplo que elegí; lo explicare de forma razonada por mi y después vía un lenguaje lógico.
Antes de comenzar escribiré el ejemplo a explicar:
Viaje de cuatro personas
Cuatro personas están viajando a diversos lugares en diversos tipos de transporte.
Los nombres de las personas son: Rachel, John, Mr.Jones and Cindy.
Cada uno se fue o en tren, en coche, en avión o barco.
- Mr.Jones odia volar
- Cindy tiene que alquilar su vehículo
- John se marea
Si tienen duda de mi traducción aquí esta la dirección donde esta el ejemplo:
Con en base en lo anterior se puede deducir lo siguiente:
- Cindy alquilo un vehículo así que ella se fue en coche.
- Mr. Jones odia volar así que el no se pudo ir en avión.
- John se marea, es mas común que alguien se maree en barco y en tren (la gente se asusta en un avión mas no se marea bueno eso es lo mas común) así que el se fue en avión.
- Rachel no indican que tenga un problema así que se puede ir tanto en barco como en tren.
Así que quedaría la solución de esta forma:
- Cindy se fue en coche
- John se fue en avión
- Mr Jones tren o en barco
- Rachel tren o en barco
Código en Lenguaje Lógico
El lenguaje lógico elegido fue Prolog ya que aparte no conozco esta clase de lenguajes, encontré mas tutoriales de Prolog.
Para trabajar en Prolog utilice el gprolog para descargarlo desde la terminal de ubuntu es dar este comando:
sudo apt-get install gprolog
Una vez instalado tecleen solamente gprolog en terminal y les aparecerá esto (significa que ya están dentro del gprolog). Si desean salir de gprolog teclea ctrl+c, después teclear el botón e.
Para correr el código en Prolog es vía el comando siguiente:
consult('Dirección o solamente indicando el nombre del archivo con su extensión').
Como notaran en la imagen mi código tiene la extensión .pl que es una de las opciones en que maneja Prolog (algunas otras mas son .pro, .prolog) note que la extensión que utilice también la maneja Perl pero no hay problema.
A continuación incluiré el código lógico realizado.
%Ejemplo logico codificado %Viaje de cuatro personas %Pedro Miguel Martínez Caballero %Las personas que hay en el ejemplo personas(cindy). personas(john). personas(mr_jones). personas(rachel). %Las formas de transporte disponible transporte(tren). transporte(avion). transporte(coche). transporte(barco). %Si personas es igual a cindy, transporte igual a coche se cumple de condicion viaje_coche(cindy, coche):- personas(cindy),transporte(coche). %Ya que john se marea no puede ser su transporte el tren and el barco viaje_avion(john,avion):- personas(john), transporte(avion). %;not(transporte(tren)); not(transporte(barco)). %Se manejo estos dos juntos ya que ellos pueden tomar cualquiera de las dos opciones de transporte restantes viajes_tren_barco(mr_jones, tren):- personas(mr_jones),transporte(tren). %;not(transporte(avion)). viajes_tren_barco(mr_jones, barco):- personas(mr_jones),transporte(tren). %;not(transporte(avion)). viajes_tren_barco(rachel, tren):- personas(rachel),transporte(tren). viajes_tren_barco(rachel, barco):- personas(rachel),transporte(barco).
Si desean obtener el código aquí esta un link para descargarlo.
https://rapidshare.com/files/3797064725/Viajes.pl
La explicación de como funciona el código lo explicare en el salón ya que si lo hago aquí podría abarcar mucho espacio.
Agradecimientos especiales a los dueños de estos blogs ya que sin lo que ellos publicaron no me hubieran dado la idea de como realizar mi código:
sábado, 3 de septiembre de 2011
Actividad # 3
Actividad # 3
En esta entrada incluiré un código en el lenguaje R.
El lenguaje R y un lenguaje y entorno de programación para análisis estadístico y gráfico.
Realice el Factorial de un numero en este lenguaje.
i <- 0
valor <- 1
#Usa despues de teclear el valor presionar shift+enter para terminar la introducción de valores
n <- scan()
#Se utiliza el cat ya que en el se puede aplicar el salto de linea y asi se concatena la impresion de variables y texto
cat("Valor del Factorial de ",n,":\n")
if(n == 0 || n == 1)
{
#Imprime el valor del factorial si la n es igual a 0 o a 1
print(valor)
}else
{
if(n >= 2)
{
while(n >= 1)
{
#Se utiliza esta formula para encontrar el factorial
#factorial(n)
valor <- (valor * n);
n <- (n - 1);
}
print(valor)
}else
{
cat("Error numero negativo")
}
}
#Funcion utilizada para encontrar el factorial
#factorial<-function(i)
#{
#valor <- valor * i;
#return(valor)
#}
La forma en la que yo corrí el programa fue estando dentro de la terminal de R y seguí el siguiente comando.
source("/Direccion/del/Archivo/NombredelArchivo.r")Imagen donde se muestra el funcionamiento del código.
viernes, 26 de agosto de 2011
Actividad # 2
Actividad 2
En esta entrada hay que realizar un código productivo (o sea algo bien elaborado no que la serie de fibonacci, etc.) en un lenguaje scrip de nuestra propia elección.
A continuación seguirá el código que utilice (Realice un graficador de ecuaciones de 2do Grado dándole los valores de a, b, c y valores de min y max de x para acomodarlo); el código esta partido en varios archivos ya que es un script es mas recomendable partir el código en varias partes.
Para realizarlo utilice Perl, gnuplot, bash.
Originalmente tenia otras 2 opciones mas: JavaScript (Ya no lo quise usar porque me harto cuando tenia errores) y Python (Porque solo lo pensé pero no intente nada en el).
Perl.

A continuación seguirá el código que utilice (Realice un graficador de ecuaciones de 2do Grado dándole los valores de a, b, c y valores de min y max de x para acomodarlo); el código esta partido en varios archivos ya que es un script es mas recomendable partir el código en varias partes.
Para realizarlo utilice Perl, gnuplot, bash.
Originalmente tenia otras 2 opciones mas: JavaScript (Ya no lo quise usar porque me harto cuando tenia errores) y Python (Porque solo lo pensé pero no intente nada en el).
Perl.
Perl en ubuntu ya viene instalado.
my $a = 0, $b = 0, $c = 0, $min = 0, $max = 0;
$a = $ARGV[0];
$b = $ARGV[1];
$c = $ARGV[2];
$min = $ARGV[3];
$max = $ARGV[4];
print "# y = $a**2 x + $b x + $c\n";
#Crea los valores de y en base a los valores de a, b y c dados
for($i = $min; $i <= $max; $i++)
{
$y = (($a)*($i**2)) + ($b*$i) + ($c);
print "$i\t$y\n";
}
Gnuplot es un programa utilizado para graficacion de funciones.Para instalarlo en ubuntu es via este comando:
set term png
set ylabel 'y'
set xlabel 'x'
set output 'HolaMundo.png'
set key off
//utiliza el archivo ejecutable para la graficación con ancho de linea 3 y tipo de punto 4
plot 'salida.out' using 1:2 with linespoints lw 3 pt 4
Bash es un programa cuya función consiste en interpretar ordenes (Viene instalado en ubuntu).
sudo apt-get install gnuplot
Codigo de Gnuplot set term png
set ylabel 'y'
set xlabel 'x'
set output 'HolaMundo.png'
set key off
//utiliza el archivo ejecutable para la graficación con ancho de linea 3 y tipo de punto 4
plot 'salida.out' using 1:2 with linespoints lw 3 pt 4
Bash es un programa cuya función consiste en interpretar ordenes (Viene instalado en ubuntu).
#!/bin/bash #Envia los valores de a,b,c,min y max y Compila el archivo Perl y lo convierte \ en un ejecutable (En el ejecutable van los valores de x y y) perl HolaMundo.pl $1 $2 $3 $4 $5 > salida.out #Compila el archivo .plot gnuplot HolaMundo.plot #Ejecuta la imagen en el visor de imagenes de ubuntu eog HolaMundo.png
Imagenes de la Terminal
Corro el bash y le doy los valores de a,b,c y de min y max
viernes, 19 de agosto de 2011
Actividad 1
Actividad # 1
Esta entrada consiste en realizar un mapa conceptual de lo que es para nosotros la "Programación".
Suscribirse a:
Entradas (Atom)





