Professional Documents
Culture Documents
Matemáticas Aplicadas y
Computación
Andrés Hernández Balderas
2014
2. La programación
"Primero resuelve el problema. Entonces, escribe el código."
John Johnson
"No hay lenguaje de programación, no importa su estructura,
que impida que los programadores hagan malos programas."
Larry Flon
#include <stdio.h>
Int main()
{ Intérprete
printf(“Hola mundo”);
return 0;
}
2.1.3 Traductores del lenguaje
(compiladores e intérpretes)
• Compilador: Analiza el programa fuente y lo traduce
completo a otro equivalente escrito en lenguaje
máquina. La computadora ejecutará este nuevo
programa hasta que esté completamente traducido. Su
acción equivale a la de un traductor humano, que toma
un libro y produce otro equivalente escrito en otra
lengua. La traducción se realiza solo una vez. Los errores
de sintaxis se detectan antes de la ejecución.
Prolog
varon(enrique).
mujer(maria).
mujer(susana).
mujer(ana).
teme_a(susana,pablo).
teme_a(jorge,enrique).
teme_a(maria,pablo).
/* Esta linea es un comentario */
quiere_pero_teme_a(X,Y) :- quiere_a(X,Y), teme_a(X,Y).
querido_por(X,Y) :- quiere_a(Y,X).
puede_casarse_con(X,Y) :- quiere_a(X,Y), varon(X), mujer(Y).
puede_casarse_con(X,Y) :- quiere_a(X,Y), mujer(X), varon(Y).
2.2.4 Lenguajes funcionales
• Se basa en construir programas a partir de
funciones, es decir, una función está formada de
pequeñas funciones.
• Una función puede tener cualquier número de
argumentos, incluyendo cero, y debe devolver un
solo valor.
• La definición de función proporciona un
parámetro formal (nombre) y la llamada a la
función proporciona un argumento real (un
valor)
2.2.4 Lenguajes funcionales
(define !
(lambda (n)
(if (= n 0)
1
Scheme
(* n (! (- n 1)))
)
)
)
2.2.5 Lenguajes orientados a objetos
• La programación orientada a objetos trata de
amoldarse al modo de pensar del humano y no al
de la máquina. Esto es posible gracias a la forma
racional con la que se manejan las abstracciones
que representan las entidades del dominio del
problema, y a propiedades como la jerarquía o el
encapsulamiento.
• El elemento básico de este paradigma no es la
función (elemento básico de la programación
estructurada), sino un ente denominado objeto.
2.2.5 Lenguajes orientados a objetos
}
}
Java
class Viaje {
String destino;
C#
}
Verificación
Definición del Verificación del
manual del
problema programa
algoritmo