Modulo II - Desalog
Modulo II - Desalog
Modulo II - Desalog
de un Algoritmo
Julian Velasquez
2.1
Herramientas para algoritmos
Definición de Algoritmo
Según el autor Luis Joyanes “El algoritmo es
una serie de operaciones detalladas y no
ambiguas para ejecutar paso a paso que
coinciden con la resolución de problemas, y
estos se representan mediante una
herramienta o técnica”.
Tomar en cuenta de algoritmo a programa
Variables Constantes
A= 10
B=15
C= 20
A=A+B
B= B-10
Prueba de Escritorio
Es importante destacar que la prueba de escritorio puede
ser una técnica muy útil para depurar programas y
encontrar errores, especialmente en programas pequeños.
Sin embargo, para programas más grandes y complejos,
puede resultar tedioso y poco práctico realizar esta prueba
de forma manual. En estos casos, es común utilizar
herramientas de depuración y pruebas automatizadas.
Prueba de Escritorio ( practica)
Prueba de Escritorio ( practica)
Tipos de datos
Los datos a procesar por una
computadora pueden ser:
• Simples
• Estructurados
Tipos de datos
Simples Estructurados
Solo ocupan una casilla en memoria los datos estructurados que contienen varios
entre estos grupos se componentes que estos casos pueden
encuentran: enteros, reales, ser varios datos simples o varios datos
caracteres, booleanos. estructurados, dentro de este grupo se
encuentran arreglos, cadenas de
caracteres y registros.
Tipos de datos Simples
Datos numéricos Enteros (128, -456)
Enteros (números Reales (7.5, -128.6)
naturales)
Reales (son
números naturales
con parte decimal)
Carácter ‘a’ ‘-‘ ‘9’
Cadena “abcd” “$9#7” “Juan
Lopez”
Lógicos True y False
Operadores
● Aritméticos
● Relacionales
● Lógicos
Operadores Aritmeticos
Sirven para realizar operaciones aritméticas
básicas. Estos operadores siguen las reglas
algebraicas típicas de jerarquía o prioridad.
Tabla de Operadores
Aritmeticos
Operador Uso
+ Suma
- Resta
* Multiplicación
/ División
** Potencia
Jerarquia de Operadores
Aritmeticos
Operador Jerarquía Uso
** Mayor Potencia
*, /, mod Multiplicación,divis
ión,residuo
+,- Suma, resta
() Los paréntesis
tienen mayor
prioridad
Ejemplos
7+5-6
Ejemplos
9+7*8-36/5
Practica en clase
1. 5+3*2-4
2. 8/4+5*2-1
3. 2*4+6/2-1
4. 12 - 4 * 2 + 6 / 3
5. 4*2/8+6-1
6. 3 + 5 * (8 - 4) / 2
7. (2**2 * 2**3)**2
2.3
Estructura de un algoritmo en
Diagrama de flujo
Diagrama de flujo
Los diagramas de flujo desempeñan un papel vital en
la programación de un problema, ya que facilitan la
comprensión de problemas complicados y sobre todo
aquellos que tienen procesos que son muy largos
Simbolos del Diagrama de flujo
Ejemplo
Establecer la solución con un diagrama de flujo para determinar el volumen de una
caja de dimensiones A, B y C
Ejemplo 2
Establecer la solución con un diagrama de flujo para
determinar el cambio que recibirá una persona al adquirir un
producto, también se plantea el siguiente dilema: “¿se debe
considerar que el dinero alcanzo para comprar el articulo?
Ejemplo 2
Diagrama de flujo Nassi-
Schneiderman N/S
Es una técnica que combina la descripción textual
que se utiliza en el pseudocodigo y la representación
grafica de los diagramas de flujo.
Estructuras de N/S
Ejemplo
Caso: determine cual de las dos cantidades es el
mayor
Practica
Construya un diagrama de flujo tal que dado los datos
A, B , C y D que representan números enteros, se
escriban los mismos en orden inverso.
Practica Para estos casos se recomienda
Realizar una tabla de pruebas de
Escritorio
Construya un diagrama de flujo dado los números
enteros A y B, escriba el resultado de la siguiente Prueba de escritorio
expresión:
Numero de Datos Resultado
ejecuciones
A B
3
Practica
Realice el algoritmo para encender un automóvil y
luego dibuje el diagrama de flujo.
2.4
Estructura de un algoritmo en
Pseudocodigo
Pseudocodigo
El pseudocodigo es una serie de pasos bien
detallados y claros que conducen a la resolución de
un problema.
Reglas de escritura de
1.Comenzar con la palabra "Inicio" y terminar con la palabra "Fin". un algoritmo en
2.Escribir cada paso en una línea nueva y comenzar cada línea con una palabra clave, pseudocodigo
como "Leer", "Escribir" o "Calcular".
3.Utilizar nombres descriptivos para las variables y asegurarse de que estén definidas
antes de usarlas.
4.Utilizar comentarios para explicar cualquier parte del algoritmo que pueda ser confusa
5.Utilizar sangría y espaciado para hacer que el código sea más legible y fácil de seguir.
7.Utilizar una sintaxis clara y consistente para asegurarse de que el algoritmo sea fácil
de entender y seguir.
Palabra clave Descripción
Inicio Marca el inicio del algoritmo
Fin Marca el final del algoritmo
Leer Lee un valor de entrada del usuario o de un archivo
Escribe un valor de salida en la pantalla o en un
Escribir
Imprimir
archivo
Similar a Escribir, pero específico para la impresión
Palabras claves
Si Inicio de una estructura condicional (if)
Parte de la estructura condicional (if) que se ejecuta
Entonces
si la condición es verdadera
Parte de la estructura condicional (if) que se ejecuta
Sino
si la condición es falsa
Para Inicio de un bucle for
Parte de un bucle for que especifica la condición de
Hasta
finalización
Parte de un bucle for que especifica el incremento o
Paso
decremento
Mientras Inicio de un bucle while
Repetir Inicio de un bucle do-while
Parte de un bucle do-while que especifica la
Hasta que
condición de finalización
Segun Inicio de una estructura de selección múltiple (switch)
Parte de la estructura de selección múltiple (switch)
Caso
que especifica una opción
Parte de la estructura de selección múltiple (switch)
Defecto
que se ejecuta si ninguna opción coincide
Procedimiento Define una subrutina sin valor de retorno
Función Define una subrutina con valor de retorno
Retorna Devuelve un valor de una función
Variables Declaración de variables utilizadas en el algoritmo
Estructura del
Pseudocodigo
Nombre del problema
Comentarios
Proceso
Ejemplo
Nombre del problema
Comentarios
Proceso
Practica pseudocodigo
Se han dado 5 calificaciones de un estudiante, calcule el promedio
( Promedio = suma de calificaciones / cantidad de calificaciones)
Practica pseudocodigo
Diseñe un algoritmo en pseudocódigo
que solicite al usuario el monto de la factura y el porcentaje de propina deseado.
El algoritmo debe calcular y mostrar el monto de la propina a pagar.