01-Tipos de Programación
-
Upload
kender-correia -
Category
Documents
-
view
9 -
download
0
description
Transcript of 01-Tipos de Programación
Principios de la Programacin Orientada a Objetos
PROGRAMACIN FUNCIONAL
EJECUCIN
EJECUCIN 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
CONTENIDO PROGRAMTICOQu es un Paradigma?Qu es Programacin ?Qu es un Paradigma de Programacin?Tipos de ProgramacinProgramacin DeclarativaProgramacin funcionalProgramacin LgicaProgramacin ImperativaProgramacin no estructuradaProgramacin EstructuradaProgramacin ProcedimentalProgramacin ModularProgramacin orientada a objetosPROGRAMACIN FUNCIONALParadigma 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))PROGRAMA
CARACTERSTICASNo 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 MirandaLispScheme
PROGRAMACIN LGICAParadigma de programacin que emplea la lgica en la solucin de problemas
CARACTERSTICASPermite 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 FUNCIONALEjemplo 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 LGICAEJEMPLOLaura, 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.EJECUCINPROGRAMACIN 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).PROGRAMAEJECUCINPROGRAMACIN 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 LGICAPROGRAMA
abuelos_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).cPROGRAMACIN NO ESTRUCTURADAProgramas que constan de un solo programa principal que contiene instruccionesque modifican datos que son a su vezglobalesen el transcurso de todo el programaPROGRAMA
DatosInstruccionesPROGRAMACIN ESTRUCTURADAProgramas de estructura clara que utilizan tres estructuras bsicas de control lgico: secuencia, seleccin e iteracin.
ABSecuencialSeleccinIterativaPROGRAMACIN PROCEDIMENTALCombinar 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 MODULARConsiste en dividir un programa en mdulos o subprogramas con el fin de hacerlo ms legible y manejable.
PROGRAMACIN P.O.OParadigma 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.