Académique Documents
Professionnel Documents
Culture Documents
Algoritmos
Introduccin:
La historia ubica la invencin de los algoritmos en el siglo IX, por obra y gracia del
matemtico y astrnomo Mohamed ibn Musa-al Jwarizmi, de all su nombre. Desarroll frmulas
para posibilitar que con un nmero limitado de pasos e indicaciones claras de ejecucin se
pudieran resolver ecuaciones de primer y segundo grado. Desde la simplicidad de preparar una
ensalada, a la posibilidad de resolver un problema complejo que nos preocupa los algoritmos son
de inestimable ayuda.
Un algoritmo es un mtodo para resolver un problema, debe presentarse como una
secuencia ordenada de instrucciones que siempre se ejecutan en un tiempo finito y con una
cantidad de esfuerzo tambin finito. En un algoritmo siempre debe haber un punto de inicio y un
punto de terminacin, estos deben ser nicos y deben ser fcilmente identificables.
Cabe aclarar que no slo son aplicables en problemas intelectuales o matemticos, si no que
son aplicables en todo tipo de problemas relacionados con actividades cotidianas, inclusive t
mismo tienes y ejecutas tus propios algoritmos para realizar algunas de tus actividades diarias.
Los algoritmos pueden clasificarse en dos tipos:
Cualitativos. Son aquellos en los que no se realizan clculos matemticos, como: la
bsqueda de un nmero telefnico en un directorio, escribir una receta de cocina o encender una
computadora.
Cuantitativos. Son aquellos en los que si intervienen los clculos numricos, por ejemplo: el
clculo de la nmina de una empresa, el clculo de un volumen de un slido o conocer la edad de
una persona a travs de su fecha de nacimiento.
Informtica II
Informtica II
Ejemplo
Construir un algoritmo para calcular y desplegar el pago que habra que hacer un cliente
por un pantaln de $1500, con un 20% de descuento en caso de pagarse en efectivo.
Algoritmo
1.Inicio
1. Inicio
Pseudocdigo
Diagrama de flujo
Inicio
forma de pago
4.Si la forma de pago es 4.Forma_Pago = Efectivo?
efectivo entonces continua Si5 ; No6
y si no debe pagar $1500
Forma_Pago =
Efectivo?
SI
NO
6. Se le cobra al cliente.
6. Escribe Pago
Escribe Pago
7.Fin
7.Fin
Fin
Informtica II
Actividad 2
Algoritmos, Pseudocdigo y Diagrama de flujo
De manera similar realiza un algoritmo con sus 2 representaciones que calcule y despliegue el
pago que debe realizar un cliente por algn pantaln de precio X con Y porciento de descuento en
caso de pagarlo en efectivo. SUGERENCIA: Como no conoces los valores de X y Y debes preguntar (leer) primero
que valor van a tomar dentro del algoritmo y despus realizar las operaciones necesarias.
Algoritmo
Pseudocdigo
Diagrama de flujo
Informtica II
Actividad 3
Algoritmos, Pseudocdigo y Diagrama de flujo
Ordena los siguientes pseudocdigos para que cumplan con la funcin para la que fueron
diseados y construye su diagrama de flujo.
1. Algoritmo para calcular la suma de dos nmeros cualesquiera y desplegar el resultado.
Pseudocdigo Ordenado
Diagrama de flujo
*Inicio.
*Leer A.
*Establecer la variable
Suma en 0 (Suma = 0).
*Desplegar Suma.
*Leer B.
*Suma = A + B.
*Fin.
2. Algoritmo para determinar si un nmero cualquiera N > 0 es par o impar utilizando la funcin
mod y desplegar el resultado.
Pseudocdigo Ordenado
Diagrama de flujo
*Inicio.
*Si N mod 2 = 0, entonces,
desplegar El nmero es
par, Ir al paso 6.
*Si N <= 0, entonces, volver
al paso 2.
*Desplegar El nmero es
impar.
*Leer N.
*Fin.
Informtica II
3. Algoritmo para calcular y desplegar la comisin de un vendedor tomando en cuenta que, si
la venta es menor a $5,000.00 la comisin ser de un 5% sobre la venta, de lo contrario, la
comisin ser de un 7% sobre la venta.
Pseudocdigo Ordenado
Diagrama de flujo
*Inicio.
*Com = Venta * .07.
*Leer Venta.
*Si Venta < 5000, entonces,
Com = Venta * .05, Ir al
paso 5.
*Desplegar Com.
*Fin.
*Inicio.
*Leer A.
*Establecer la variable
Producto en 0.
*Desplegar Producto.
*Leer B.
*Producto = A * B.
*Fin.
Informtica II
Actividad 4
Algoritmos, Pseudocdigo y Diagrama de flujo
Lee con atencin los siguientes planteamientos y anota en el crculo una V si es verdadero
y una F si es falso.
1. Un algoritmo siempre debe tener un objetivo.
2. Los algoritmos deben ser infinitos.
3. Al seguir ms de una vez un algoritmo podemos obtener un resultado
diferente.
4. Cuando el algoritmo tiene un orden, con instrucciones claras, es preciso
5. Las instrucciones de los algoritmos pueden ser ambiguas
6. Es recomendable enumerar cada paso para facilitar su comprensin.
7. En la redaccin de algoritmos no importa si las instrucciones son frases
largas y poco concretas.
8. Los problemas complejos pueden dividirse en mdulos o subalgoritmos.
9. Los valores constantes son aquellos que pueden variar en el algoritmo.
10. Los valores variables cambian durante el desarrollo del algoritmo.
11. Un diagrama de flujo es la representacin grfica de un algoritmo.
12. El smbolo para representar una operacin es el crculo.
13. El pseudocdigo es mucho ms cercano al lenguaje de mquina.
14. Las lneas de flujo pueden ir en 2 direcciones a la vez.
19
Informtica II
Actividad 5
Algoritmos
Lee los siguientes algoritmos y verifica si cumplan con las caractersticas de los
algoritmos, justifica tu observacin.
Algoritmo para lavar una pecera.
1. Inicio
2. Desconectar los equipos de la pecera
3. Quitar la tapa de la pecera
4. Sacar el agua
5. Sacar a los peces
6. Lavar la pecera
7. Introducir a los peces
8. Llenar de agua
9. Poner la tapa
10. Conectar los equipos
11. Fin
Algoritmo para plantar un rbol.
1. Inicio
2. Elegir el lugar apropiado para plantarlo
3. Cavar un agujero
4. Introducir un poco de abono en el agujero
5. Quitar el exceso de tierra de las races
6. Desenredar las races
7. Introducir el rbol en el agujero
8. Quitar la bolsa de plstico de las races del rbol
9. Rellenar el agujero con tierra
10. Compactar la tierra
11. Regar el rbol
12. Fin
En caso de que algn algoritmo sea incorrecto reformula de manera correcto.
Actividad 6
Algoritmos y Diagrama de flujo
Informtica II
Informtica II
todos los cambios de valores que sufren las variables, de tal manera que al finalizar se
sabe si el algoritmo realmente resuelve el problema planteado.
Ejemplo:
Problema: Calcular la suma de los nmeros pares comprendidos entre 1 y 100 y al final
desplegar su resultado.
Identificacin del problema:
Cules son los datos de entrada? los nmeros pares comprendidos entre 1 y 100
Cules son los datos de salida? la suma de los nmeros pares comprendidos entre 1 y 100?
Cmo podemos determinar los nmeros pares?, Una forma seria empezar con el nmero 2,
que es el primer nmero par entre 1 y 100, y despus avanzar de dos en dos, es decir 2, 4,
6,,100.
Otra forma seria utilizar la operacin aritmtica mod (proporciona el residuo de una divisin).
As, inicializaramos con el numero 1 y nos iramos de una en una analizando el residuo con
la operacin mod al dividir cada numero entre 2, y si nos da cero, quiere decir que el
nmero es par.
Planteamiento de alternativas: de la alternativa uno, se iran sumando los nmeros pares ya
establecidos, pudiendo decir 2, 4, 6, , 100 o a partir del dos se sumaria dos para obtener
el nmero par y se van sumando.
2 como base y se van sumando 2, de tal manera que a 2 le sumo 2 y nos dan 4, se suma 2+4,
luego a 4 le suman 2, nos dan 6, y as sucesivamente.
Eleccin de una alternativa: Se elige la ms fcil.
Desarrollo de la solucin: Se disea el algoritmo y queda as.
1.
2.
3.
4.
5.
6.
Inicio
Establecer la variable suma en 0 (Suma =0)
Establecer la variable Numero en 2 (Numero =2)
Sumar Numero a Suma (Suma = Suma + Numero).
Incrementar Numero en 2 (numero = Numero *2)
Si el Numero es <= 100, entonces
Volver al paso 4
En caso contrario
Desplegar el valor de la suma
7. Fin
Evaluacin de la solucin: Se hace una corrida de escritorio.
Informtica II
Actividad 7
Metodologa de solucin de problemas
Informtica II
2. Planteamiento: Encontrar los nmeros menores de 30, divisibles entre 3.
Identificacin del problema:
Planteamiento de alternativas:
Eleccin de una alternativa:
Desarrollo de la solucin:
Evaluacin de la solucin:
Informtica II
Actividad 8
Algoritmos y Diagramas de Flujo
Informtica II
3. Unidades de medida
Algoritmo
1. INICIO
2. LEER NUM
3. DESPLEGAR PARA PULGADAS
A CM PRESIONE P, PARA LIBRAS A
KG PRESIONE L, PARA GALONES
A LT PRESIONE G
4. LEER RESP
5. SI RESP = P, ENTONCES
CONV = NUM * 2.54
IR AL PASO 10
6. SI RESP = L, ENTONCES
CONV = NUM * .453
IR AL PASO 10
7. SI RESP = G, ENTONCES
CONV = NUM * 3.785
IR AL PASO 10
8. DESPLEGAR ERROR EN LA
RESPUESTA
9. IR AL PASO 4
10. DESPLEGAR NUM
11. FIN
*
Si
No
*
Si
No
No
Si
*
+
*
*
Informtica II
Actividad 9
Algoritmos y Diagramas de Flujo
El ejemplo muestra el diagrama de flujo para determinar Cul de los 3 nmeros dados es
mayor? Escribe su algoritmo a un lado.
Ahora analzalo y salo como base para generar el diagrama de flujo para determinar
Cul de los 4 nmeros dados es menor?
Informtica II
Actividad 10
Algoritmos y Diagramas de Flujo
El ejemplo muestra Cmo calcular la edad que cumplir una persona en este ao, conociendo su
ao de nacimiento? Escribe a un lado su algoritmo.
Inicio
Leer Ao_Nac
Edad = 2012 Ao_Nac
Edad
Fin
Ahora elabora un diagrama para determinar la edad que tendra al da de hoy utilizando la fecha de
nacimiento completa. Toma en cuenta que pudo haber cumplido aos o no.
28
Informtica II
Actividad 11
Algoritmos y Diagramas de Flujo
Completa el siguiente diagrama de flujo y escribe su algoritmo.
29
Informtica II
Actividad 12
Algoritmos y Diagramas de Flujo
Elige una figura geomtrica: ________________________________________
Realiza un algoritmo y su diagrama de flujo para calcular su rea y su permetro.