miércoles, 17 de noviembre de 2010

Tarea #8 - Lenguajes Multiparadigma

No pude, descargar los compiladores de ninguno de los dos lenguajes de programacion de oz ni go, y tampoco no pude encontrar ejemplos mas compliados, busque unos tutoriales pero aun asi no venia muchoo.

Oz
Es un lenguaje de programacion multi-paradigma y lenguaje de programacion esoterico.

Oz fue desarrollado en el laboratorio de programacion de sistemas en la universidad de Saarland por Gert Smolka y sus estudiantes a comienzos de 1990.

Oz tiene una implementacion de gran calidad, el sistema de Programacion Mozart, el cual fue liberado con una locencia de codigo abierto por el consorcio Mozart, ha sido portado a diferentes plataformas como unix, Microsoft Windows y Mac OS X.

Contiene una forma simple y bien hecha de la mayoria de los conceptos de los principales, paradigmas de programacion, incluyendo programacion logica, funcional, imperativa, orientada a objetos. Tiene una semantica formal simple y una implementacion eficiente, y con concurrencia que hace facil su uso y eficiente.

Codigo: {Show 'Hello World'}


Referencias:
http://www.docstoc.com/docs/25177415/Lenguajes-Bases-de-Datos-y-Aplicaciones-en-ambientes-distribuidos

http://www.mozart-oz.org/documentation/tutorial/node2.html#label8
---------------------------------------------------------------------------------------------

Go
Es un lenguaje de programacion concurrente y compilado inspirado en la sintaxis de C. Ha sido desarrollado por google y sus diseñadores iniciales son Robert Grisemer, Rob Pike, y Ken Thompson.

Esta disponible para sistemas operativos como GUN/Linux y Mac OS X

Codigo 

package main

import "fmt"

func main()
{
  fmt.Printf("Hola, mundo\n")
}

http://es.wikipedia.org/wiki/Go_%28lenguaje_de_programaci%C3%B3n%29
http://www.kriptus.com/lenguaje-de-programacion-de-google-go/

Como ven son los programas sencillos que puede haber en la programacion, no consegui mucho, de estos, como ya habia mencionado, y tambien como no sabia mucho de ellos, no consegui la informacion necesaria.

Tarea #7 - Lenguaje Orientado a Objetos

La orientacion a objetos, promete un amplio alcanse, desarrollo y mantenimiento del software ofreciendo una solucion a los pronlemas y preocupaciones que han existido desde el comiezo en el desarrollo del software: como falta de portabilidad de codigo, codigos difiles de modificar, ciclos largos, y tecnicas de codificacion.

Todo esto puede ser solucionado por un lenguaje oriendato a objetos, tiene 3 caracteristicas: debe esstar basado a objetos, basado en clases y capaz de tener herencia de clases. Muchos lenguajes cumplen con uno o dos de estos, pero es  menos que cumplan con los 3.

Alguna definicion como su nombre lo dice, objeto, que es como un conjunto complejo de datos y programas que poseen estructuras y forman parte de una organizacion.

Sus caracteristicas son no es dato simple, si no que contiene en su interior cierto numero de componentes bien estructurados, y en segundo lugar, cada objeto no es un ente aislado, sino que forma parte de una organizacion jerarquica o de otro tipo.

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



El primer programa en C++ lo que hace es pedirme dos datos, y al ingresarlos, me aparece un pequeño menu, de que es lo que quiero hacer, como las operaciones basicas que sabemos, y si ingresamos otra opciones nos aparece error, y que ingresemos otro
Codigo:


Y asi es como se ve ya ejecutandolo

El segundo programa en Java que es un programa facil, es la serie de binonacci, que me pregunte por la cantidad de numero, hasta cual quiero llegar, y luego ya me los imprime, el compilador que utilice es el eclipse.

Codigo:
 Y las imagenes en ejecucion, batalle un poco para poderlo ejecutar, ya que me salian error pero al final me funciono.
Primeramente pregunto, el numero de datos, hasta donde quiero que lleguen.
Y la imagen ya en la ejecucion


Ojala puedan entenderle, y al padecer, asi era este reporte, si tienen una duda, me comentan

miércoles, 10 de noviembre de 2010

Tarea #6 - Lenguajes Imperativos

Mis 4 programas seran en Pascal, C, Fortran y Algol
--------------------------------------------------------------
Pascal

Lo que hace es pedirnos un rango, y nos dara la seria de fibonnaci hasta tal numero que tecleamos.
Codigo
uses crt;
var i,j,c,x,r: byte;

begin clrscr;
 i:=0;  
 j:=1;
 x:=0;
write<´Rango:   ´>; read<r>;
writeln;
writeln<´La secuencia de Fibonacci de 0 - ´,r, ´es:  ´>;
writeln;
for c:=1 to r do
begin
 write <x, ´ ´>;
x:=i+j;
j:=i;
i:=x;
end;
readkel;
end.

http://sourceforge.net/projects/freepascal/files/


-------------------------------------------------------------------------------------------------------
C
Lo que hace es sacar el factorial de un numero.
Codigo
#include <stdio.h>
int factorial(int n){
  if(n <= 0) return 1;
  else return n * factorial(n-1);
}main()
{
  int n;
  int factoial(int);
  scanf("%d", &n);
  printf("Factorial de %d es %d.\n", n, factorial(n));}



-------------------------------------------------------------------------------------------------------
Fortran
Lo que hace es calcular el seno de teta 

Codigo
implicit none                                                       Declarar Variables
integer i
real x,s,pi
pi = acos(-1.0)                                                   Calcular pi.
open(10,file=’seno.dat’)                                     Abre el archivo
do i=0,100
x = 2.0*pi*real(i)/100.0                                    Calcula X de 0 a 2/pi y su seno
s = sin(x)
write(10,’(2f10.4)’) x,s
end do                                                               Se cierra el archivo
close(10)
end program seno                                            


----------------------------------------------------------------------------------------------------
Algol
Este progrma hace la conversion de grados Farenheit a grados Celsius

Codigo
fahrenheit
begin
    real fahrenheit;
    print ("Diga los grados Fahrenheit:  ");
    read (fahrenheit);
    print("Celsius ", (fahrenheit-32-0 * 5.0/9.0);
end
finish



Ojala pueden entenderle a los 4 programas y ya no pude conseguir un compilador para algol ni fortran, y que las otras dos imagenes se visualicen bien, ya que me comentaron mucho que no se veian bien las demas
me dicen para modificarlas

Tarea #5 - Problema Logico

Caballeros y Bribones 2

*Hay 3 personas (Alex, Arroyo y Cody), uno de ellos es un caballero, otro un bribon, y un espia.
     El caballero siempre dice la verdad,
     El bribon siempre miente,
     Y el espia puede mentir o decir la verdad.

Ellos son llevados antes un juez, que quiere identificar el espia.
     Alex dice: Yo no soy un espia
     Arroyo dice: yo soy un espia
     Cody dice yo soy el espia.

El juez pregunta: ¿Es arroyo realmente un espia?
¿Cody puede dar una respuesta de modo que él no se condene como un espía?

Solucion
Si Arroyo contesta NO, arroyo seria bribon o espia,
                     -Si es espia, entonces, alex sera el caballero, y cody el bribon.
                     -Si es el bribon, entonces, alex seguiria siendo caballero, y cody el espia

Si Cody contesta NO, cody seria bribon o caballero,
                     -No se podra sacar conclucion ya que no concuerda nada.
Si cody contesta SI entonces
                    -seria por que el es el espia

Asi es como se resolveria, preguntandole a el si es el espia o no, y como explique arriba si contesta no, no concuerda nada, y si contesta si, se afirmaria que el es el espia.

Alex es Caballero, Arroyo el Bribon y Cody el espia