Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sesion 01 - Fundamentos Algoritmos y Programas PDF
Sesion 01 - Fundamentos Algoritmos y Programas PDF
Implementación
Euclides, matemático griego inventor del método para encontrar el máximo común divisor de
dos números, se le considera con al-Khowârizmî el otro gran padre de la algoritmia y que se
define así: “Ciencia que trata los algoritmos”.
Revisión de versiones
#$?
Problema Algoritmo Programa
Premisa 2. Los algoritmos son independientes, tanto del lenguaje de programación en que
se codifican, como de la computadora que los ejecuta. En cada problema, el algoritmo se
puede codificar en cualquier lenguaje de programación disponible y ejecutarse en un sistema
de computadora distinta. Independencia de Software y Hardware.
Un algoritmo debe ser preciso e indicar el orden lógico de realización de cada paso.
Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe
obtener el mismo resultado cada vez.
Un algoritmo debe ser finito. Un algoritmo debe terminar en algún momento. Esto es,
“Debe tener un número finito de pasos con una solo punto de Entrada y un solo punto
de Salida”.
Por ultimo, un algoritmo (si consideramos estos tres atributos), cumple claramente con los
tres pasos establecidos en el Procesamiento Automático de Datos (DAP).
Ejemplo comentado 1.
Especificaciones de E/S:
Entrada: Solicitud, pedido de cliente
Salida : emitir pedido aprobado/desaprobado.
Entrada 1. Inicio.
2. Leer, “Pedido del cliente”
Proceso 3. Examinar record de crédito del cliente
4. Si el cliente es solvente, preparar pedido y ejecutar paso 5. Caso contrario,
denegar pedido e ir a paso 6
Salida 5. Escribir “Emitir pedido”
6. Fin.
leer(pedidoCliente)
[ es solvente ]
preparar Pedido( )
False True
Ejemplo comentado 2.
Algoritmo: Suma de todos los números pares menores e iguales a 100 (entre 2 y 100).
Análisis: El problema consiste en sumar la sucesión de pares: 2 + 4 + 6 + 8 +… +100.
Usaremos los identificadores NUMERO y SUMA (denominados variables en
términos de programa e inicializados en 2 y 0 respectivamente).
Así:
Inicializar: suma = 0 y numero = 2
Acumular: suma = suma + numero
Incrementar: numero = numero + 2 (hasta llegar a 100)
Especificaciones de E/S:
Entrada: sucesión de números pares (primer numero: 2, ultimo: 100)
Salida : acumulado de números pares (serie: 2+4+6+8+ …100)
Entrada 1. Inicio.
2. Establecer SUMA a 0. //inicializar acumulador
3. Establecer NUMERO a 2 //primer par: inicializar contador de pares
Proceso 4. Sumar NUMERO a SUMA, el resultado se acumula en SUMA
5. Incrementar NUMERO en 2 unidades, para obtener el siguiente par
6. Si NUMERO es <= 100, repetir el paso 4, caso contrario continuar con el
paso 7.
Salida 7. Escribir valor del acumulador SUMA
8. Terminar
// INICIALIZACION: de variables
suma = 0 : numero = 2
ACUMULACION:
El acumulador suma, opera
con la variable numero.