Download - 01-Tipos de Programación.pdf
-
Tipos de Programacin
Prof. Jannelly Bello
-
CONTENIDO PROGRAMTICO Qu es un Paradigma?
Qu es Programacin ?
Qu es un Paradigma de Programacin?
Tipos de Programacin
Programacin Declarativa
Programacin funcional
Programacin Lgica
Programacin Imperativa
Programacin no estructurada
Programacin Estructurada
Programacin Procedimental
Programacin Modular
Programacin orientada a objetos
-
PARADIGMA DE PROGRAMACIN
Qu es un Paradigma?
Modelo o patrn a seguir en cualquier contexto.
Qu es Programacin ?
Conjunto de instrucciones que una vez ejecutadas realizarn una o varias tareas en una computadora
Qu es un Paradigma de Programacin?
Coleccin de patrones conceptuales que juntos modelan el proceso de diseo y determinan la estructura del programa.
-
TIPOS DE PROGRAMACIN
TIPOSPROGRAMACIN
Imperativa
Declarativa
Programacin Funcional
Programacin Lgica
Programacin No EstructuradaProgramacin Estructurada
Programacin Procedimental
Programacin Modular
Programacin Orientada a ObjetosDescribe secuencia de comandos que detallan de forma clara cmo dar solucin a un problema y modifican el estado de un programa.
Describe la lgica de computacinnecesaria para resolver un problemasin describir un flujo de controlde ningn tipo.
-
PROGRAMACIN FUNCIONAL
Paradigma de programacin basado en la definicin de funciones aritmticas como estructura de control principal.
(display "Hola elige alguna funcin")(display "Raiz, suma, cuadrado, potencia o resta")(define(raiz X)(sqrt X))(define(cuadrado X)(* X X))(define(suma X Y)(+ X Y))(define(potencia X Y)(expt X Y))(define(resta X Y)(- X Y))
PROGRAMACARACTERSTICAS No contienen sentencias de
asignacin. No contienen efectos colaterales. Los programas son transparentes
referencialmente. Las repeticiones de instrucciones
se lleven a cabo por medio de funciones recursivas.
LENGUAJES: Haskell Miranda Lisp Scheme
-
PROGRAMACIN FUNCIONAL
EJECUCINEJECUCIN DE UN PROGRAMALa ejecucin de un programa funcional consiste en el clculo del valor asociado al dato de entrada de acuerdo con las definiciones dadas para las funciones en el programa.
(display "Hola elige alguna funcin")(display "Raiz, suma, cuadrado, potencia o resta")(define(raiz X)(sqrt X))(define(cuadrado X)(* X X))(define(suma X Y)(+ X Y))(define(potencia X Y)(expt X Y))(define(resta X Y)(- X Y))
PROGRAMA
-
PROGRAMACIN FUNCIONAL
Ejemplo de denicin de funcin en Haskell:doble x = x + x
Ejemplo de evaluacin:doble 3 = 3 + 3 [def. de doble]
= 6 [def. de +]
Ejemplo de evaluacin anidada :doble (doble 3) = doble (3 + 3) [def. de doble]
= doble 6 [def. de +]= 6 + 6 [def. de doble]= 12 [def. de +]
-
PROGRAMACIN LGICA
Paradigma de programacin que emplea la lgica en la solucin de problemas
CARACTERSTICAS Permite formalizar hechos del mundo real:
las aves vuelan - los pinginos no vuelan - "pichurri" es un ave"sandokan" es un perro - "alegra" es un ave
Permite formalizar reglas o restricciones:una mascota vuela si es un ave y no es un pingino
Establecer hiptesis que no son ms que preguntas o incgnitas, por ejemplo:
"pichurri" vuela ? qu mascotas vuelan ?
LENGUAJES: PROLOG
-
PROGRAMACIN LGICA
EJEMPLOLaura, Jorge, Carmen y Neto fueron al super mercado ya que era martes de frutas y verduras y tenan muchas ganas de frutas. Cada uno tiene una fruta que le gusta y solo comprarn esa fruta si y solo si esta en oferta y les gusta.
A Carmen le gusta el mangoA Neto le gusta la papayaA Jorge le gusta la fresaA Laura le gusta la manzanaEl mango y la papaya son las nicas que tienen oferta.
-
PROGRAMACIN LGICA
persona(neto).persona(carmen).persona(laura).persona(jorge).fruta(mango).fruta(fresa).fruta(papaya).fruta(manzana).le_gusta(neto,papaya).le_gusta(carmen, mango).le_gusta(laura, manzana).le_gusta(jorge,fresa).tiene_oferta(mango).tiene_orerta(papaya).puede_comprar(X,Y):-persona(X),fruta(Y),le_gusta(X,Y), tiene_oferta(Y).
PROGRAMA
EJECUCIN
-
PROGRAMACIN LGICA
En el rbol genealgico de una familia se tiene lo siguiente. Alejandro es hijo de Patricia y Jos. Patricia es hija de Celso y Antonia y Jos es hijo de Adolfo y Mara; Pedro es hijo de Ana y Juan. Ana es hija de Jorge y Liz y Juan es hijo de Mario y Rosa; Valeria es hija de Carmen y Ernesto. Carmen es hija de Israel y Daniela y Ernesto es hijo de Ral y Adriana.
Quines son los abuelos de Alejandro, Pedro y Valeria?
Los nietos son Alejandro, Pedro y Valeria.Los padres de Alejandro son Patricia y Jos.Los padres de Pedro son Ana y Juan.Los padres de Valeria son Carmen y Ernesto.Los padres de Patricia son Celso y Antonia.Los padres de Jos son Adolfo y Mara.Los padres de Ana son Jorge y Liz.Los padres de Juan son Mario y Rosa.Los padres de Carmen son Israel y Daniela.Los padres de Ernesto son Raul y Adriana.
-
padre(ernesto, valeria).padre(jose, alejandro).padre(juan, pedro).padre(raul, ernesto).padre(adolfo, jose).padre(mario, juan).padre(israel, carmen).padre(celso, patricia).padre(jorge, ana).madre(carmen, valeria).madre(patricia, alejandro).madre(ana, pedro).madre(adriana, ernesto).madre(maria, jose).madre(rosa, juan).madre(antonia, patricia).madre(liz, ana).madre(daniela, carmen).
PROGRAMACIN LGICA
PROGRAMAabuelos_paternos(Z,X):- padre(Y,X), padre(Z,Y).abuelos_paternos(Z,X):- padre(Y,X), madre(Z,Y).
abuelos_maternos(Z,X):- madre(Y,X), padre(Z,Y).abuelos_maternos(Z,X):- madre(Y,X), madre(Z,Y).c
-
PROGRAMACIN NO ESTRUCTURADA
Programas que constan de un solo programa principal que contiene instruccionesque modifican datos que son a su vezglobalesen el transcurso de todo el programa
PROGRAMA
DatosInstrucciones
-
PROGRAMACIN ESTRUCTURADA
Programas de estructura clara que utilizan tres estructuras bsicas de control lgico: secuencia, seleccin e iteracin.
A
B
Secuencial Seleccin Iterativa
-
PROGRAMACIN PROCEDIMENTAL
Combinar las secuencias de instrucciones repetibles en un solo lugar: Procedimientos. El programa principal coordina las llamadas a procedimientos y pasa los datos apropiados en forma de parmetros.
-
PROGRAMACIN MODULAR
Consiste en dividir un programa en mdulos o subprogramas con el fin de hacerlo ms legible y manejable.
-
PROGRAMACIN P.O.O
Paradigma de programacin que concibe a un sistema como un conjunto de entidades que representan al mundo real, losobjetos, que tienendistribuida la funcionalidad e informacinnecesaria y quecooperan entre spara el logro de un objetivo comn.
Pgina 1CONTENIDO PROGRAMTICOPARADIGMA DE PROGRAMACINTIPOS DE PROGRAMACINPROGRAMACIN FUNCIONALPROGRAMACIN FUNCIONALPROGRAMACIN FUNCIONALPROGRAMACIN LGICAPROGRAMACIN LGICAPROGRAMACIN LGICAPROGRAMACIN LGICAPROGRAMACIN LGICAPROGRAMACIN NO ESTRUCTURADAPROGRAMACIN ESTRUCTURADAPROGRAMACIN PROCEDIMENTALPROGRAMACIN MODULARPROGRAMACIN P.O.O