lunes, 22 de noviembre de 2010

Reporte#9

Hola Dra Sara y compañeros
Aqui les dejo mi clase, algo tarde pero fue porque tuve algunas complicaciones....
Saludos*
http://www.youtube.com/watch?v=sS4KcybeszY

jueves, 18 de noviembre de 2010

Reporte#8 Programa Multiparadigma

Hola Dra Sara y compañeros de clase, en este reporte nos toco hacer lo que es un programa en un lenguaje multiparadigma, primero les pondre mas o menos a que nos referimos con multiparadigma:

Son los lenguajes que soportan mas de un paradigma, permiten crear programas usando mas de un estilo de programacion.
El objetivo es permitir a los programadores utilizar el mejor paradigma para cada programa, sabiendo que ninguno resuelve todos los problemas de la forma más fácil y eficiente posible.
Los paradifgmas son:
  • Imperativo
  • Logico
  • Funcional
  • Estructurado
  • Orientado a objetos

Para elaborar este reporte use el lenguaje de programacion Falcon (El que habia escogido en el reporte#2 ya que me acorde que este es multiparadigma y me llamo la atencion usarlo)
Primero baje el compilador desde la pagina del lenguaje:

Powered by Falcon

Despues ya bajado empeze a escribir el siguiente codigo en un bloc de notas y es importante que guardemos el archivo con extension ". fal"

saying= List ("ten", "un", "buen", "dia")
for elem in saying
>> elem
formiddle: >> " "
forlast: > "!"
end










Este codigo es una simple iteracion sobre una lista
he aqui lo que me imprimio al hacer click en el archivo ya guardado despues del bloc de notas:


-----------------------------------------------------------------------
Ahora continuemos con otro ejemplo....

Este codigo lo que hace es que te manda notificaciones aleatorias de personas con suerte de un rango de 11 personas...

class Person (number)
id=number
init
if random (0,1): subscribe( "lucky", self)
end

//se recibe una notificacion de la suerte

function on_lucky (data)
>data, " ", self.id, "is lucky!"
end
end
//creamos a todas las personas

for i in [1:11]: Person(i)

//suertudas

broadcast ("lucky", "Person")




Aqui les muestro lo que me imprimio al abrirlo 2 veces el programa, como se daran cuenta, el resultado es diferente ya que siempre saldran personas aleatorias con suerte :




Bueno, esos es todo, espero les haya gustado mi reporte y haber cumplido con lo pedido...
Saludos!!

miércoles, 17 de noviembre de 2010

Reporte #7 Programacion Orientado a Objetos

Hola Dra Sara y compañeros de clase aqui les dejo unos programas en C++ y en Java sobre Programacion Orientado a Objetos.

------------------
Java
Este primer programa lo hize del fibonacci en java



y lo que me corrio el programa:


El compilador que use fue el eclipse.
(NOTA: En lo personal batalle mucho para usar eclipse, otras opciones que se pueden usar es descargar los paquetes en ubuntu o bien este compilador: jCreator. Es un poco mas sencillo pero por motivos de tiempo no pude adentrarme mas y asi.

Ahora bien, les explicare un poco sobre la Programacion Orientada a Objetos

Clase: son las definiciones de las propiedades y el comportamiento de un tipo de objeto en concreto

Objeto:Son las instancias a las clases, enntidades de un conjunto de propiedades o atributos (datos) y de funcionalidad (métodos) y que son los mismos que consecuentemente reaccionan a eventos.

Metodo: Es lo que el objeto hace, es el algoritmo del problema, la accion que se va a hacer

En comparación con un lenguaje imperativo, una "variable", no es más que un contenedor interno del atributo del objeto o de un estado interno, así como la "función" es un procedimiento interno del método del objeto.

Aqui hize otro programa de numeros primos, pero no me pudo compilar...por lo mismo que les mencionaba que batalle en eclipse y en el Jcreator me marcaba error.

public class numeros_primos {
public static void main(String[] primos){
System.out.println("1");
for (int i=1;i<=100;i++){
int contador=0;
for(int j=1; j<=i; j++){
if (i%j==0) contador++;
}
if (contador==2) System.out.println(i);
}
}
}






---------------------------------------
C ++

Este es un programa en C++ que me muestran los numeros primos:


#include
#define LIM 26
int main()
{
unsigned int num, n, p, i, num_columnas;
cout << "Introduzca la cantidad de numeros primos que quiere obtener: ";
cin >> num;
cout << '\n' << endl;
num_columnas = 0 ;
n = 2;
i = 1;
while(i <= num)
{
for(p = 2; n % p != 0; p++);
if(p == n)
{
cout << n <<", ";
if(++num_columnas % 10 == 0)
cout << "\n" << endl;
i++;
}
n++;
}
cout << "\n" << endl;
system("pause");
return 0;
}


Esto fue lo que imprimio el programa:









Espero haber cumplido con lo pedido
Saludos!!

jueves, 11 de noviembre de 2010

Reporte#6 Lenguajes Imperativos

Hola Dra y compañeros de clase, este es mi reporte de lenguajes imperativos

PASCAL



En pascal el programa que hize fue base a lo que habia explicado una compañera sobre detectar si una palabra es palindromo o no.
Aqui les muestro el codigo, el compilador es Free Pascal.



Esto fue lo que me imprimio el programa:

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

C

Aqui les hize un programa que te pida el numero de filas y columnas para hacer una matriz:
Como el lenguaje es en C no explicare en si el codigo ya que es algo entendible...

#include
#include
void tamano();
void asignar();
void imprimir();
int I,F,J,C,M[50][50];
main()
{
tamano();
asignar();
imprimir();
getche();
return 0;
}
void tamano()
{
do
{
printf("Filas");
scanf("%d",&F);
printf("Columnas");
scanf("%d",&C);
}while(F!=C);
return;
}
void asignar()
{
for(i=0; i
for(j=0; j
if(i == j){
matriz[i][j] = 1;
}
else{
matriz[i][j] = 0;
}
}
for(i=0; i
printf("\t");
for(j=0; j
printf("%4d", matriz[i][j]);
}
printf("\n");
}
printf("\n\n");

system("pause");
return 0;
}

he aqui lo que me imprime el programa considerando 5 filas y 5 columnas:


---------------------------------------------------------------------------
Fortran


aqui les dejo mi programa en fortran del fibonacci, lamentablemente no entiendo porque no me pudo compilar y batalle con ese aspecto......



-----------------------------------------------------------------------------------
ALGOL


Aqui les pongo un ejemplo del promedio(media)del valor absoluto de un vector en Algol:

begin
integer N;
Read Int (N);

begin
real array Data [1: N];
real sum, avg ;

integer 1;
sum: -0;
for 1: -1 step 1 until N do
begin real val
Read Real (val);
Dara[1]:-if val <0 then - val else val
end;

for 1: -1 step 1 until N do
sum: -sum + Data [1];
avg:-sum/N;
print Real (avg)
end
end

Si aprecian bien el codigo podemos ver que utilizamos un tipo de arreglos y asi y despues declaramos tambien variables para poder sacar lo que vale el vector, no lo pude compilador pero espero puedan entenderle



Cualquier cosa no duden en comentar mi blog
Saludos..!!!

miércoles, 10 de noviembre de 2010

Reporte # 5 Problema Logico

Hola Dra y compañeros de clase pues en esta entrada les explicare como solucionar el problema que escogi en clase y les pondre un programa ejemplo de prolog.

El problema que escogi se llama Ten balls in Five lines

Que quiere decir? Significa que debemos acomodar 10 bolas en 5 lineas....
pero lo complicado es que en cada linea debe de haber unicamente 4 bolas.

Para poder solucionar este problema en particular lo que hize fue primero en una hoja dibujar todas mis posibilidades hasta que me saliera, lamentablemente no fue una buena opcion.

Lo que hize fue recordar sobre la teoria de grafos y me base en eso para poder solucionar el problema.
Como eran 5 lineas se me ocurrio que podia hacerse en forma de estrella y lo que hize fue poner cada bola en las esquinas y ya asi poner las bolas en las lineas restantes.
He aqui en la imagen la solucion del problema :



------------------------------------------------------------------------
Ahora les pondre un programa ejemplo de prolog:

Primero les mostrare el codigo y les ire explicando

/*programa*/
domains
marca,color=symbol
precio,kilometraje=real
predicates
vehiculo(marca,precio,color,kilometraje)
automovil(marca,precio,color,kilometraje)
camioneta(marca,precio,color,kilometraje)
clauses
vehiculo(M,P,C,K):-
automovil(M,P,C.K);
camioneta(M,P,C,K).
automovil(ford,70000,blanco,35000).
automovil(nissan,65000,negro,48000).
camioneta(chevrolet,98000,rojo,60000).

bueno les explicare algunos conceptos del codigo:
domains: Esto se refiere a los tipos de datos del programa, osea lo que haremos.
predicates: son las relaciones, estos son muy importantes ya que son los que unen los objetivos con los hechos
clauses: son los hechos, lo que es la informacion concreta.
Goal: Son los objetivos, como quien dice, lo que le preguntaremos al programa

Estos son los objetivos que hize.

1-Cuales son las marcas y colores de los vehiculos?
(En el programa se pone)
vehiculo(Marca,_,Color,_)

2-Existe algun vehiculo de color rojo?
vehiculo(_,_,rojo,_)

3-Cual es el precio del vehiculo de color negro?
vehiculo(_,Precio,Negro,_)

Esta es la pantalla del programa:


Espero haber cumplido con lo pedido, cualquier cosa no duden en comentar....
Saludos..!!!!

jueves, 28 de octubre de 2010

Presentacion Distancia de Edicion

Hola compañeros aqui les muestro lo que es la presentacion de distancia de edicion de nuestro equipo Saludos..!!!

domingo, 24 de octubre de 2010

Reporte #4 Lenguaje funcionales

Hola compañeros aqui les muestro lo que es mi reporte #4 se trata de programar con lenguajes funcionales

Q

El primer lenguaje que escogi fue el Q es un lenguaje de programación funcional basado en reescritura de términos.
La verdad decidi programar en este lenguaje ya que me fue facil instalarlo y a la hora de programar es bastante sencillo

Programa para calcular el factorial:
Lo primero que hize fue escribir el codigo en el editor:

fac N = N*fac(N-1) if N>0;
= 1 otherwise;


Despues guardas el archivo como extension ".q" y tecleas F9 para que el interprete lea el codigo ,despues de esto aparecera la direccion del programa abajo del editor.

Ya interpretado nos pediran que escribamos una expresion, por ejemplo:
poner fac 5 (es muy importante que para ver el resultado pongamos fac (espacio) 5 ya que es la funcion y si no lo ponemos no nos mostrara el resultado)

y ya despues nos dara el calculo del factorial de 5 como lo muestra la imagen del programa:



---------------------------------------------------------------------
DrScheme (DrRacket)

Para mi segundo programa use el DrScheme (ahora llamado DrRacket)
decidi usarlo porque me llamaba la atencion usar scheme y fue lo mas sencillo que pude encontrar, baje lo que es el DrRacket y me parecio sencillo ya que ahi desde el menu puedes elegir el tipo de lenguaje que vas a usar para programar.

Despues escribi el codigo en el editor:

(define Pi 3.141592)
Pi
(define radio 10)
radio
(define circuferencia(* 2 Pi radio))
circuferencia
> circuferencia

Explicare en si lo que es el codigo primero definimos lo que es Pi =3.141592 despues definimos lo que es el radio =10, y definiremos la formula para sacar circuferencia= * 2 Pi radio (se multiplica)
el resultado es= 62.83184

aqui les muestro la imagen de mi programa:




Espero le hayan entendido a mi reporte y haber cumplido con lo pedido cualquier sugerencia no duden en comentar
Saludos..!!