01-Tipos de Programación

17
Tipos de Programación Prof. Jannelly Bello

description

Diferentes Tipos de Programacion

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.