# Fundamentos De la Programación --- ## Bases --- ## ¿Qué es un algoritmo? > “una serie de **pasos organizados** que describen el **proceso** que se debe seguir para dar **solución a un problema específico**” Oviedo Fadul, 2004 notes: - Los algoritmos pueden ser representados de forma gráfica o con pseudocódigo. - Los algoritmos deben ser lógicos, explícitos y exhaustivos. - Deben tener un inicio y un final. --- ## Partes de un algoritmo | | | | ------- | ------------------------------------------------- | | Input | Datos requeridos para que el algoritmo se ejecute | | Proceso | Operación lógica de instrucciones | | Output | Datos producidos por el proceso, resultado final | notes: - los datos es la información relevante - El proceso se encarga de transformar el input en output --- ## Resolución de problemas Norma tiene en su negocio 5482 libretas. Cuando comienza el año escolar vende 254 docenas de libretas. ¿Cuántas libretas quedan sin vender en el negocio de Norma? --- ## Resolución de problemas + Entrada: Norma tiene 5482 libretas + Salida: Libretas restantes en el negocio + Proceso: Restar 254 * 12 libretas a la entrada + Salida real: 2434 libretas notes: Operación real: `5482 - (254 * 12) = 5482 - 3048 = 2434` --- ## Diagramas de flujo Son gráficos similares a _"mapas conceptuales"_, los cuales nos permiten representar de manera visual, sencilla y no técnica algoritmos. notes: - mapa conceptual: agrupa conceptos sin un orden especifico. - diagrama de flujo: tiene una dirección en la que fluyen las instrucciones. --- ## Ejemplo diagrama de flujo ```mermaid flowchart TD start([Inicio]) ---> entrada1[/ 5482 libretas /] entrada1 --> proceso1(Restar 254 * 12 libretas) proceso1 --> salida1[/ 2434 libretas /] salida1 --> finish([Fin]) ``` notes: - [lista de símbolos](https://www.lucidchart.com/pages/es/simbolos-comunes-de-los-diagramas-de-flujo) --- ## Ejercicios notes: - [Contador de 1-50, números pares y caja con factura](https://drive.google.com/file/d/1D3DjW7ErHPLtnvvGFhSEgdOgUfz8Q-CR/view?usp=drive_link) - [Calculo de sueldos](https://drive.google.com/file/d/1L0qSfKjTxnJnzARlyh1vwzft2-ThIzsF/view?usp=drive_link) --- ## Ejercicio 01 Desarrollar un diagrama de flujo paras determinar la suma de los primeros 50 números enteros positivos (desde cero a 49) --- ## Solución 01 --- ## Ejercicio 02 Crear diagrama de flujo que determine si un número N ingresado por teclado es par. --- ## Solución 02 --- ## Ahora te toca a ti ![](Pasted%20image%2020240515122605.png) --- ## Ejercicio 03 Crear un diagrama de actividad de recepción y despacho de pedido con cobro de factura. --- ## Fin :3