Professional Documents
Culture Documents
Competencia especfica
a desarrollar:
Profesor:
Equipo: 8
Alumnos:
HERRERA PIMBER GUADALUPE
GUZMN GUERRERO GLADIS
LOPEZ MIRANDA ITZEL
MIRANDA CAMPOS CESAR AUGUSTO
CERVANTES MUNDO ANGEL EDUARDO
LAGUNAS MENDEZ FREDDY
11320582
11320207
12320109
10320147
12320008
12320018
PROGRAMACION REPRESENTATIVA
PROGRAMACION
P. Declarativa
P. Lgica
P. Funcional
P. Multiparadigma
CONSISTE EN:
Programacin en el que
el
programador
especifica
que
debe
computarse en lugar de
como deben realizarse
los cmputos.
Computacin
en
la
mquina, deduccin en
la lgica y satisfaccin en
un modelo estndar de la
teora.
En
programacin
funcional la descripcin
de dominios conduce a la
idea de tipo de datos.
CARACTERISTICAS
-Programa= Lgica +
Control
-Comprobacin de las
expresiones.
-expresiones funcionales
-concepto matemtico de
funcin
Consiste
en
la -Permiten
la
gestin
integracin
de
los automtica
de
la
distintos paradigmas de memoria.
programacin
-responder a diferentes
declarativa.
consultas (objetivos)
-estructuras de datos.
EJEMPLOS:
Programacin declarativa:
Funcin que invierte el orden de los elementos en una lista.
rev :: [t] [t]
rev [ ] = [ ]
rev (x : xs) = app (rev xs) [x]
Programacin logica:
% Hechos:
es_espaol("Manolo").
es_italiano("Marco").
es_colombiano("Marcelo").
% Reglas:
es_europeo(A) :- es_espaol(A).
es_europeo(A) :- es_italiano(A).
es_americano(A) :- es_colombiano(A).
es_terricola(A) :- es_europeo(A).
es_terricola(A) :- es_americano(A).
son_del_mismo_continente(A,B) :- es_europeo(A), es_europeo(B).
son_del_mismo_continente(A,B) :- es_americano(A), es_americano(B).
Programacion funcional
Programacin multiparadigma
package main
import "fmt"
func main() {
var a int
var c int
c=5
fmt.Printf("La serie del 5 :)...\n")
for n := 1; n < 11; n++ {
a=n*c
fmt.Printf("%d ,", a)
}
}
INTRODUCCIN
Los primeros lenguajes de programacin de alto nivel se disearon durante los
aos 1950. Desde entonces los lenguajes de programacin han sido una
fascinante y prolfica rea de estudio para los cientficos de la computacin y los
ingenieros.
El estudio de los lenguajes de programacin, es llamado a veces lingstica de la
programacin, por analoga con la lingstica de los lenguajes naturales. La
analoga se basa en el hecho en que ambos; lenguajes naturales y lenguajes de
programacin, poseen sintaxis (forma) y semntica (significado). La analoga no
puede tomarse en todo el contexto, Los lenguajes de programacin no pueden ser
comparados con los lenguajes naturales en trminos de su rango de expresividad
y subjetividad. Por otro lado, un lenguaje natural no es ms ni menos que un grupo
de personas que hablan y escriben, as que la lingstica natural est restringida al
anlisis de los lenguajes existentes; mientras que los lenguajes de programacin
son concienzudamente diseados y se pueden implementar en computadoras.
CONCEPTOS BSICOS
Cada lenguaje de programacin es una creacin y como tal ha sido
cuidadosamente diseado. Algunos lenguajes han sido diseados por personas
nicas, como por ejemplo Pascal. Otros, han sido diseados por un grupo grande
de personas, tales como PL/l y Ada. La experiencia sugiere que aquellos lenguajes
diseados por personas nicas o grupos pequeos, tienden a ser ms compactos
y coherentes que aquellos lenguajes diseados por grandes grupos.
Un lenguaje de programacin, digno de su nombre, debe reunir ciertos requisitos.
El lenguaje de programacin debe ser universal. Es decir, cualquier problema
debe tener una solucin que puede ser programada en el lenguaje y dicha
solucin ser implementada en cualquier computador. Este requisito es uno de los
ms fuertes y pocos lenguajes lo poseen. Se dice que cualquier lenguaje en el
cual pueden definirse funciones recursivas se considera universal. De otro lado, un
lenguaje sin recursin ni iteracin no puede ser universal. Existen ciertos
lenguajes de aplicacin que no son universales, pero s podran ser
razonablemente descritos as mismos, como lenguajes de programacin.
El lenguaje de programacin debe ser implementarle en una computadora, es
decir; debe ser posible ejecutar un programa en trminos del lenguaje en cualquier
mquina. La notacin matemtica generalmente no es implementable porque en
su notacin es posible formular problemas que no pueden ser resueltos por
cualquier computador. Los lenguajes naturales tampoco son implementables por
razones totalmente diferentes: ellos son tan imprecisos y tienden a ser muy
ambiguos.
SINTAXIS Y SEMNTICA
Cada lenguaje tiene sintaxis y semntica:
ENFOQUE HISTRICO
Los lenguajes de programacin de hoy son el producto de un desarrollo que se
inici en los 1950's. Numerosos conceptos de lenguajes han sido inventados,
examinados e implementados en sucesivos lenguajes. Con muy pocas
excepciones, el diseo de cada lenguaje ha sido fuertemente influenciado por la
experiencia con los lenguajes iniciales. Los lenguajes de hoy no son el producto
final del desarrollo del diseo del lenguaje; nuevos conceptos y paradigmas estn
siendo desarrollados y el escenario de los lenguajes de programacin de los
prximos diez aos podra ser un poco diferente al de hoy.
PARADIGMAS DE LA PROGRAMACION.
Para que una computadora realice una tarea, debe programrsela para que lo
haga colocando en la memoria principal un algoritmo apropiado el cual es
expresado en lenguaje mquina. En los inicios de la programacin, esta tarea era
onerosa por lo laborioso y difcil de disear cada algoritmo (sin contar los errores
en que se podra incurrir). El gran paso se dio cuando se empez a dar
CRG
CRG
MULTI R0
ALM
STOP
R2
R3
R2 R3
R0
TARIFA
HORAST
PAGO
paradigma declarativo
paradigma funcional
Una de las bondades importantes de los lenguajes orientados a objetos es que las
definiciones de los objetos pueden usarse una y otra vez para construir mltiples
objetos con las mismas propiedades o modificarse para construir nuevos objetos
con propiedades similares pero no exactamente iguales.
Herencia es tambin vista como un concepto clave dentro del mundo de los
objetos. En este contexto, la herencia es la habilidad para organizar las
clases de objetos en una jerarqua de subclases y superclases y las
operaciones dadas para una clase se pueden aplicar a los objetos de la
subclase.
CONCLUSIONES
La comprensin bsica de los conceptos de los lenguajes de programacin y los
diferentes paradigmas son necesarios para todos los ingenieros de software, no
tanto para los especialistas en un lenguaje de programacin. Esto se debe a que
los lenguajes de programacin son una herramienta fundamental.
Los lenguajes de programacin influencian notablemente la manera en que
pensamos acerca del diseo y construccin del software y los algoritmos y
estructuras de datos que utilicemos para desarrollar software.
2. RBOLES DE DECISIN
Se trata de modelos de prediccin en los cuales se utilizan tcnicas mediante las
que se pueden analizar decisiones secuenciales basadas en el uso de resultados.
Estos rboles son utilizados para generar sistemas expertos, rboles de juegos o
bsquedas binarias. Mediante su uso, un sistema dotado de Inteligencia Artificial
podr tomar decisiones en situaciones previamente definidas.
En un rbol de decisin, se dispone de unas ciertas entradas o situaciones, a
partir de las cuales se devuelve un resultado, convergiendo as en una nueva
situacin donde una nueva decisin ha de ser tomada.
Esta accin ser realizada tantas veces como sea necesario, hasta llegar a un
punto final, llamado hoja en nuestro rbol de decisin, donde se determina la
accin a realizar tras el camino tomado, aquella que se ajusta a la situacin
requerida. Un ejemplo de rbol de decisin, binario en este caso, se muestra a
continuacin.
Cada nodo consiste en una posible situacin a la que se podra enfrentar el agente
a lo largo de una partida. A continuacin, veremos detalladamente en qu consiste
cada una de ellas, para tener especial cuidado a la hora de implementar nuestro
sistema, evitando implementaciones que puedan dar lugar a comportamientos
errneos del agente inteligente.