Está en la página 1de 22

Ing.

Ramiro Soto
Que es un Algoritmo?
Problema Operación y Solución

Conjunto ordenado y finito de opera-


ciones que permite hallar la solución
de un problema. Según la RAE
Partes de un algoritmo

• Input (entrada). Información que damos al algoritmo con la que va a trabajar para ofrecer la solución esperada.
• Proceso. Conjunto de pasos para que, a partir de los datos de entrada, llegue a la solución de la situación.
• Output (salida). Resultados, a partir de la transformación de los valores de entrada durante el proceso.
Características
Precisos. Objetivos, sin ambigüedad.

Ordenados. Presentan una secuencia clara y precisa para poder llegar a la solución.

Finitos. Contienen un número determinado de pasos.

Concretos. Ofrecen una solución determinada para la situación o problema planteados.

Definidos. El mismo algoritmo debe dar el mismo resultado al recibir la misma entrada
Tipos de Algoritmos

Cuantitativos
Cualitativos

Contienen operaciones
Descripción con palabras
Matemáticas
Resolución de Problemas
PSEUDOCÓDIGO
Es un conjunto de instrucciones escritas en lenguaje fuente (humano=idioma) que describe la
secuencia de un proceso o algoritmo y no tiene limitaciones de sintaxis.
El pseudocodigo representa la estructura de un algoritmo por lo cual debe cumplir con las
siguientes restricciones:
Debe contener un numero finito de pasos o instrucciones
Las instrucciones se deben ordenar en un orden lógico y en una secuencia cronológica. Debe
devolver siempre el mismo resultado.
Las instrucciones se expresan en lenguaje fuente.
Realice un algoritmo para preparar una taza de café.
Realice un algoritmo para cambiar una llanta pinchada de un vehículo
desde el momento en que este va en movimiento.
Describa los pasos para hacer una llamada telefónica
Algoritmos condicionales
Este tipo de algoritmos incluye dentro de su estructura varias alternativas de una solución,
considerando posibles problemas de ejecución en su secuencia.
1. INICIO Realice un algoritmo para
2. PONER INTERMITENTES cambiar una llanta pinchada de
3. VER RETROVISORES un vehículo desde el momento
4. BUSCAR LUGAR PARA ESTACIONAR en que este va en movimiento.
5. APAGAR VEHICULO (No hay llanta de repuesto)
6. BAJAR DEL VEHICULO
7. BUSCAR HERRAMIENTA Y LLANTA
“Decisión” (PINCHADA, NO TENEMOS, NO HERRAMIENTAS )

8. LLAMAR POR AYUDA


8. AFLOJAR TUERCAS
9. AFLOJAR TUERCAS
9. LEVANTAR CON EL TRICKET
10. LEVANTAR CON EL TRICKET
10. RETIRAR TUERCAS
11. RETIRAR TUERCAS
11. RETIRAR LLANTA
12. RETIRAR LLANTA
12. Llevar a reparar llanta
13. REEMPLAZAR LLANTA
13. REEMPLAZAR LLANTA
14. COLOCAR Y APRETAR TUERCAS
14. COLOCAR Y APRETAR TUERCAS
15. BAJAR EL TRICKET
15. BAJAR EL TRICKET
16. GUARDAR HERRAMIENTAS Y LLANTA
16. GUARDAR HERRAMIENTAS Y LLANTA
17. SUBIR AL VEHICULO
17. SUBIR AL VEHICULO
18. VERIFICAR RETROVISORES
18. VERIFICAR RETROVISORES
19. ENCENDER VEHICULO
19. ENCENDER VEHICULO
20. CONTINUAR CON EL VIAJE
20. CONTINUAR CON EL VIAJE
21. FIN
21. FIN
Variable
Consiste en un nombre cuya función es representar Un nombre de variable se debe de especificar de acuerdo a las
cualquier tipo de valor (numero o texto), puede cambiar siguientes reglas:
durante el curso de la ejecución de un programa.
◦ No puede estar formado solo por números
◦ No puede contener espacios en blanco ni caracteres
Una variable es donde se guarda (y se recupera) datos especiales
que se utilizan en un programa.
◦ Siempre debe de iniciar con un carácter alfanumérico
(letra)
Cuando escribimos código, las variables se utilizan para: ◦ Se aconseja que el nombre de la variable haga referencia
al valor que representa.
Guardar datos y estados.
◦ No puede ser una palabra reservada (if, for, while)
Asignar valores de una variable a otra.
Representar valores dentro de una expresión Ej. Nombre
matemática.
Suma
Mostrar valores por pantalla. N1
Pro_1
Estructura de un algoritmo
Un algoritmo en cualquiera de sus Ej. El siguiente algoritmo permite calcular la
representaciones debe incluir la siguiente suma de dos números cualquiera.
estructura:

1. Inicio
1. Inicio
2. Suma dos números
2. Encabezado
3. Tener los 2 números X, Y
3. Declaración de variables
4. Suma = X + Y Suma = num1 + num2
4. Detalle de instrucciones
5. Devolver resultado “Suma”
5. Establecimiento de solución
6. Fin
6. Fin
Ej. El siguiente algoritmo permite calcular la suma de dos
números cualquiera.
1. Inicio 1. Inicio
2. Suma dos números 2. Suma dos números enteros o con decimales
3. Tener los 2 números X, Y Indique el valor de los 2 números
4. Suma = X + Y o Suma = num1 + num2 3. (ingresar valor ) num1 = ## num2= ##
5. Devolver resultado “Suma”
4. Suma = num1= ## + num2= ##
6. Fin
5. Devolver resultado “Suma = ##”
6. Fin
Constante
Consiste en un valor generalmente numérico que no cambia entras las ejecuciones de un
algoritmo.

Ej. IVA = 12%


Pi = 3.1416
SOFTWARE
IEEE, "software es la suma total
de los programas de ordenador,
procedimientos, reglas, la
documentación asociada y los
datos que pertenecen a un
sistema de cómputo" y "un
producto de software es un
producto diseñado para un
usuario".
Ciclo de Vida del Software

Documentación
Análisis. El problema se analiza teniendo presente la especificación de los requisitos dados por el cliente de la empresa o por
la persona que encarga el programa.

• Diseño. Una vez analizado el problema, se diseña una solución que conducirá a un algoritmo que resuelva el problema.

• Codificación (implementación). La solución se escribe en la sintaxis del lenguaje de alto nivel (por ejemplo, Pascal) y se
obtiene un programa fuente que se compila a continuación.

• Ejecución, verificación y depuración. El programa se ejecuta, se comprueba rigurosamente y se eliminan todos los errores
(denominados “bugs”, en inglés) que puedan aparecer.

• Mantenimiento. El programa se actualiza y modifica, cada vez que sea necesario, de modo que se cumplan todas las
necesidades de cambio de sus usuarios.

• Documentación. Escritura de las diferentes fases del ciclo de vida del software, esencialmente el análisis, diseño y
codificación, unidos a manuales de usuario y de referencia, así como normas para el mantenimiento.
Ejercicios
1. Elaborar un algoritmo que permita calcular la multiplicación de dos números cualquiera.

2. Elaborar un algoritmo que pueda convertir una cantidad de segundos en horas.


Tareas

Registrarse con el correo de la universidad en https://www.lucidchart.com/pages/es

Instalar: http://pseint.sourceforge.net/

También podría gustarte