Semana 1
Semana 1
Semana 1
FUNDAMENTOS DE
PROGRAMACIÓN
¿Qué es la lógica?
Es la forma mas OBVIA y mas FÁCIL
de hacer algo.
Lógica es la rama del conocimiento
que nos permite determinar que algo
está aprobado por la razón como
bien deducido o bien pensado.
Introducción
“El proceso de preparar programas para una
computadora digital tiene un atractivo
especial, no sólo porque puede ser
recompensado económica y científicamente,
sino también porque puede ser una
experiencia estética como la poesía y la
música”.
Donald E. Knuth
La programación de computadoras
Tradicionalmente la mayoría de los cursos
de programación para principiantes se
centran en la enseñanza de un lenguaje
de programación, dejando en segundo
plano la enseñanza de la lógica de la
programación.
Programar una computadora consiste en
escribir las instrucciones para que la
computadora realice una tarea.
Se suele decir que la computadora
resuelve problemas.
Lo correcto es decir que la computadora
ejecuta las instrucciones que resuelven el
problema.
Al conjunto de instrucciones específicas
para que la computadora realice la tarea
se le llama programa.
¿Qué es un Algoritmo?
Es un conjunto de pasos secuenciales y
ordenados que permiten lograr un
objetivo.
Un algoritmo se estructura comenzando
en un Inicio y terminando en un Fin.
Algoritmo
Es una secuencia de pasos o procesos
lógicamente relacionados entre sí a fin de
obtener la solución a un problema
planteado.
Es una lista de instrucciones para efectuar
paso a paso un proceso.
Es un método para resolver un problema
mediante una serie de datos precisos,
definidos y finitos.
Objetivo: Adquirir el libro El
Coronel no tiene quien le escriba de
Gabriel García Márquez
Algoritmo Adquisicion_Libro
Inicio
1. Saber cuál es el libro que se quiere adquirir
2. Desplazarnos hacia una librería
3. Preguntar si tienen el libro que necesitamos
4. Si lo tienen
adquirirlo y Parar allí (dentro de este algoritmo) Si no
lo tienen
ir al paso 2
Fin
todo algoritmo debe ser probado
antes de ser ejecutado
Precisamente éste es el tercer concepto
que tendremos claro es la PRUEBA.
Que para efectos técnicos se llamará la
Prueba de Escritorio.
¿Qué es pues la Prueba de Escritorio? Es la
simulación de la puesta en marcha de un
algoritmo.
LOS ALGORITMOS SE
CLASIFICAN EN :
Algoritmos Informales: no son
realizables a través de un computador.
Algoritmos Computacionales:
algoritmos que deben ser preferiblemente
implementados en un computador para
aprovechar su velocidad de procesamiento.
Transcripción: “convertimos” un
algoritmo a un Lenguaje de Programación
usando reglas (sintaxis).
¿Qué son las reglas sintácticas de un
Lenguaje de Programación? Son todas las
restricciones técnicas (y algunas veces
caprichosas) sobre las cuales está construido
el Lenguaje.
¿Qué es pues un Programa? Es un
algoritmo escrito con las instrucciones, las
restricciones y las reglas de un Lenguaje de
Programación
Digitación: escribimos al computador el
programa que hemos acabado de escribir en
papel.
Compilación: Es el proceso a través del cual
el computador revisa que el programa que
hemos digitado se ajuste a las reglas
sintácticas de un determinado Lenguaje de
Programación.
Ejecución o Puesta en Marcha: es poner
a “correr” nuestro programa o sea en
condiciones de ser ejecutado por el
Elementos básicos en el diseño de
algoritmos
A. HERRAMIENTAS PARA EL DISEÑO DE
ALGORITMOS.
i. Pseudocódigo
ii. Diagramas de Flujo de Datos.
B. DECLARACIÓN DE LOS DATOS
C. DECLARACIÓN DE LOS DATOS
D. METODOLOGÍA A SEGUIR EN EL
DISEÑO DE ALGORITMOS
PASOS PARA PLANTEAR LA
SOLUCIÓN A UN PROBLEMA:
1. Análisis del problema: Identificar las entradas,
procesos y salidas del problema, declaración
de variables.
2. Diseño del Algoritmo: Describe la secuencia
ordenada de los pasos, sin ambigüedad, es
decir, siendo preciso y veraz en la búsqueda
de la solución al problema.
3. Codificación del Algoritmo: Es la expresión
en un lenguaje de programación de los pasos
definidos en el algoritmo.
4. Ejecución y validación del programa por el
computador.
CARACTERÍSTICAS DE
ALGORITMOS:
1. Un algoritmo debe ser preciso e indicar el orden
de realización de cada paso.
2. Un algoritmo debe estar bien definido, hay que
evitar toda ambigüedad al definir cada paso. Puesto
que el lenguaje humano es impreciso, los
algoritmos se expresan mediante un lenguaje
formal, ya sea matemático o de programación para
un computador.
3. Un algoritmo debe ser “FINITO”.
4. Entrada: El algoritmo tendrá cero o más
entradas.
5. Salida: El algoritmo tiene una o más salidas, en
relación con las entradas.
Ejemplos de Algoritmos:
Encontrar el promedio de un conjunto
de números.
1. Sumar los números dados.
2. Contar dichos números.
3. Dividir el resultado obtenido en el
punto 1 entre el resultado obtenido
en el punto 2.
Ejemplo: Hacer una llamada telefónica
1. Inicio
2. Desbloquear el teléfono
3. SI esta registrado
4. Buscar el número en contactos
5. Realizar llamada
6. Hablar lo deseado
7. SI NO
8. Digitar el número a llamar.
9. Verificamos si suena ocupado.
10. Si suena ocupado
11. Pensar algo malo
12. Tomar un café y tranquilizarse.
13. Fin SI
14. Finalizar llamada
15. Fin.
Un algoritmo para el proceso de
cambiar una llanta que está bajo de
aire de un automóvil
1. Levantar el carro con la gata hidráulica.
2. Quitar los tornillos del aro.
3. Quitar la llanta dañada.
4. Poner la llanta de repuesto.
5. Apretar los tornillos.
6. Bajar el carro con la gata.
Versión Nº 2
1.- Sacar la llanta de repuesto y herramientas de la maletera.
2.- Verificamos si está dañado la llanta de repuesto.
Si lo está vamos al punto 3.
Si no lo está vamos al punto 4.
3.- Vociferamos ruidosamente algo.
Nos vamos caminando a buscar ayuda ó telefoneamos
alguien para que ayude.
Vamos al punto 14.
4.- Verificamos si la llanta bajo de aire es la llanta delantero.
Si lo es:
4.1.- Quitamos la tapa del centro de la rueda delantera.
4.2.- Aflojamos los tornillos.
4.3.- Levantamos el carro por delante, junto a la llanta dañado.
4.4.- Vamos al punto 5.
Si no lo es:
4.1.- Quitamos la tapa del centro de la rueda trasera.
4.2.- Aflojamos los tornillos.
4.3.- Levantamos el carro por detrás, junto la llanta dañada.
5.- Quitamos los tornillos.
6.- Quitamos la llanta dañada.
7.- Ponemos la llanta de repuesto.
8.- Colocamos los tornillos y las tapas.
9.- Bajamos el carro con la gata hidráulica.
10.- Guardamos la llanta dañado, el gata y las herramientas en la
maletera.
11.- Nos limpiamos con estopa las manos.
12.- Encendemos el vehículo.
13.- Continuamos manejando.
14.- Fin.
Versión Nº 3
1.- Observamos si la llanta de repuesto está vacío.
Si lo está vamos al punto 2.
Si no lo está vamos al punto 3.
2.- Llamamos a un taller.
Vamos al punto 12.
3.- Levantamos el carro con la gata hidráulico.
4.- Quitamos un tornillo.
5.- Observamos si hemos quitado todos los tornillos.
Si lo hemos quitado vamos al punto 6.
Si no lo hemos quitado vamos al punto 4.
6.- Quitamos la llanta dañada.
7.- Ponemos la llanta de repuesto.
8.- Apretamos un tornillo.
9.- Verificamos si se han apretado todos los
tornillos.
10.- Si lo hemos apretado, vamos al punto 11
Si no lo hemos apretado vamos al punto 8.
11.- Bajamos el carro con el gata hidráulico.
12.- Fin.
EVALUACIÓN
Realizar un algoritmo para cruzar una
calle por un paso de peatones.
Algoritmo para cocinar un huevo duro.
Realizar un algoritmo para cruzar
una calle por un paso de peatones
1. Inicio
2. Mirar a la derecha e izquierda
3. Mientras pasen coches
Esperar
Mirar a la derecha e izquierda
Fin_mientras
4. Cruzar calle
5. Fin
Algoritmo para cocinar un huevo duro
algoritmo huevo
Inicio
1. Llenar una olla con agua
2. Encender fuego
3. Poner la olla al fuego
4. Repetir la acción “esperar”
Hasta que el agua hierva
5. Introducir huevo
6. Esperar 10 minutos
7. Apagar el fuego
8. Tirar el agua
9. Extraer huevo de la olla
fin