Está en la página 1de 17

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
Describe
la
lgica
de
computacinnecesaria
para
resolver un problemasin describir
un flujo de controlde ningn tipo.
Programacin Funcional
Declarativa
TIPOS
PROGRAMACIN

Programacin Lgica
Programacin No Estructurada
Imperativa

Programacin Estructurada
Programacin Procedimental

Describe secuencia de comandos


que detallan de forma clara
cmo dar solucin a un
problema y modifican el estado

Programacin Modular
Programacin Orientada a Objetos

PROGRAMACIN FUNCIONAL
Paradigma de programacin basado en la definicin de
funciones aritmticas como estructura de control principal.
PROGRAMA
CARACTERSTICAS
No contienen sentencias de (display "Hola elige alguna
funcin")
asignacin.
No
contienen
efectos (display "Raiz, suma, cuadrado,
potencia o resta")
colaterales.
Los
programas
son (define(raiz X)(sqrt X))
(define(cuadrado X)(* X X))
transparentes
(define(suma X Y)(+ X Y))
referencialmente.
Las
repeticiones
de (define(potencia X Y)(expt X Y))
instrucciones se lleven a (define(resta X Y)(- X Y))
LENGUAJES:
cabo por medio de funciones
Haskell
recursivas.
Miranda
Lisp
Scheme

PROGRAMACIN FUNCIONAL
EJECUCIN
DE
UN PROGRAMA
La 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.

EJECUCIN

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))

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
EJEMPLO
Laura, 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 mango
A Neto le gusta la papaya
A Jorge le gusta la fresa
A Laura le gusta la manzana
El mango y la papaya son las nicas que tienen oferta.

EJECUCI
N

PROGRAMACIN LGICA

EJECUCI
N

persona(neto).
persona(carmen).
persona(laura).
persona(jorge).PROGRAMA
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_gu

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
Los
Los
Los
Los
Los
Los
Los
Los

nietos son Alejandro, Pedro y Valeria.


padres de Alejandro son Patricia y Jos.
padres de Pedro son Ana y Juan.
padres de Valeria son Carmen y Ernesto.
padres de Patricia son Celso y Antonia.
padres de Jos son Adolfo y Mara.
padres de Ana son Jorge y Liz.
padres de Juan son Mario y Rosa.
padres de Carmen son Israel y Daniela.

PROGRAMACIN LGICA
padre(ernesto, valeria).
PROGRAMA
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).

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).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
Datos
Instrucciones

PROGRAMACIN ESTRUCTURADA
Programas de estructura clara que utilizan tres estructuras bsicas de
control lgico: secuencia, seleccin e iteracin.

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.

También podría gustarte