escribir(area)
Fin 42
2012 – Articulación - Algoritmia y programación
Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
leer(altura)
area = (base * altura) / 2
escribir(area)
Fin
Este es el algoritmo completo en pseudocódigo
1. Historia
Las dos cosas que han permitido que la ciencia avance al nivel
donde nos encontramos hoy son los libros, que han contribuido
a la difusión del conocimiento, y los algoritmos.
Dasgupta, Papadimitrio y Vazirani
1
2012 – Articulación - Algoritmia y programación
2. Historia
¿Cuánto es MCDXLVIII + DCCCXII?
¿Que numeros son?
¿Sabe usted como realizar la suma de
numeros romanos?
¿Cual es nuestro sistema de numeración?
2012 – Articulación - Algoritmia y programación
3. Historia
¿De dónde proviene la palabra algoritmo?
El imperio árabe invadió a la India.
– Mohammed Ibs-Musa Al-Juarizmi (780 -
850)– matemático y astrónomo de la “Casa
de la Sabiduría”-Bagdad escribe los
fundamentos del algebra.
– En el siglo XII Roberto de Chester – tradujo
las primeras versiones de la obra de Al-
Juarizmi del árabe al Latin - “algoritmus” -
“Algoritmo”
2012 – Articulación - Algoritmia y programación
4. Historia
4
2012 – Articulación - Algoritmia y programación
5. Conceptos
¿Que es un problema?
5
2012 – Articulación - Algoritmia y programación
6. Problema
Un problema es algo que hay que aclarar o
resolver.
Para resolver dicho problema, este se debe
identificar como tal, es decir, hay que realizar
una serie de acciones para encontrar una
solución y escribir dicha solución de la manera
mas clara posibel para que otras personas la
entiendan.
Para un problema existen diferentes maneras
de expresar una solución.
6
2012 – Articulación - Algoritmia y programación
7. Problemas y Soluciones
¿Que procedimiento seguirias para solucionar el laberinto?
7
2012 – Articulación - Algoritmia y programación
9. Problemas y Soluciones
Enunciado: En un estante de una biblioteca se
han colocado en forma ordenada los tres
tomos de el Quijote de la Mancha. Una polilla
empezó por taladrar la primera hoja del primer
tomo y prosiguió horizontalmente en el mismo
sentido, terminó su tarea con la última hoja del
último tomo.
¿Cuántas hojas taladro la polilla?
9
2012 – Articulación - Algoritmia y programación
10. Problemas y Soluciones
Enunciado: En un estante de una biblioteca se han
colocado en forma ordenada los tres tomos de el
Quijote de la Mancha. Cada uno de los cfuales tiene
100 hojas. Una polilla empezó por taladrar la primera
hoja del primer tomo y prosiguió horizontalmente en el
mismo sentido, terminó su tarea con la última hoja del
último tomo.
¿Cuántas hojas taladro la polilla?
10
2012 – Articulación - Algoritmia y programación
11. Problemas y Soluciones
Enunciado: Dos amigos pasean conversando de sus
respectivas familias.
– A: Por ciero – Pregunta A a B - ¿Que edad tienen tus
tres hijas?.
– B: El amigo responde: “el producto de sus edades es 36
y su suma casualmente, es igual al número de tu
casa”.....Tras pensar un rato,
– A: dice: “Me falta un dato”.
– B: Así que el amigo responde “...hummm es verdad, se
me había olvidado aclararte que la mayor toca el piano”.
¿Cuáles son las edades de las tres hijas?
11
2012 – Articulación - Algoritmia y programación
14. ¿Que es un Algoritmo?
Se denomina ALGORITMO a la descripción de la secuencia de
operaciones que hay que realizar para obtener unos resultados
deseados, a partir de unos datos iniciales.
14
2012 – Articulación - Algoritmia y programación
16. Clasificación de los algoritmos
Informales Computacionales
Son los algoritmos que Se trata de algoritmos
no pueden ser llevados que son llevados acabo
acabo por una en una computadora, los
computadora, pues quien cuales buscan
los ejecuta es el ser aprovechar su velocidad
humano y dan soluciones de procesamiento.
tales como ir al trabajo, ir
a la escuela, etc. Para
resolver estos problemas
se tiene que usar la
lógica.
16
2012 – Articulación - Algoritmia y programación
17. Componentes de un algoritmo
Entrada Proceso Salida
17
2012 – Articulación - Algoritmia y programación
18. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
18
2012 – Articulación - Algoritmia y programación
19. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
19
2012 – Articulación - Algoritmia y programación
20. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
20
2012 – Articulación - Algoritmia y programación
21. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
2.Diseñar el algoritmo y escibirlo en pseudocódigo.
21
2012 – Articulación - Algoritmia y programación
22. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
2.Diseñar el algoritmo y escibirlo en pseudocódigo.
3.Realizar una prueba de escritorio para el algoritmo.
22
2012 – Articulación - Algoritmia y programación
23. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
2.Diseñar el algoritmo y escibirlo en pseudocódigo.
3.Realizar una prueba de escritorio para el algoritmo.
4.Codificar el algoritmo usando un lenguaje de
programación.
23
2012 – Articulación - Algoritmia y programación
24. Usando Algoritmos
Pasos a seguir para resolver cualquier problema
usando algoritmos.
1.Análisis del problema
2.Diseñar el algoritmo y escibirlo en pseudocódigo.
3.Realizar una prueba de escritorio para el algoritmo.
4.Codificar el algoritmo usando un lenguaje de
programación.
5.Probar el algoritmo implementado.
24
2012 – Articulación - Algoritmia y programación
25. Ejemplo 1
Enunciado:Desarrolle un algoritmo que permita
calcular el área de un triangulo a partir de su
base y su altura.
1.Análisis del problema
Definir el problema con precisión
Identificar los datos de entrada
Entrada
?
25
2012 – Articulación - Algoritmia y programación
26. Ejemplo 1
Enunciado:Desarrolle un algoritmo que permita
calcular el área de un triangulo a partir de su
base y su altura.
1.Análisis del problema
Definir el problema con precisión
Identificar los datos de entrada
Identificar los datos de salida
Entrada Salida
? ?
26
2012 – Articulación - Algoritmia y programación
27. Ejemplo 1
Enunciado:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Definir el problema con precisión
Identificar los datos de entrada
Identificar los datos de salida
Identificar como transformar los datos de entrada en la
salida
Entrada Proceso Salida
? ? ?
27
2012 – Articulación - Algoritmia y programación
28. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Entradas: la base y la altura
h
b
28
2012 – Articulación - Algoritmia y programación
29. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Salidas: El área del triangulo
area
29
2012 – Articulación - Algoritmia y programación
30. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Proceso: Formula para transformar las entradas en
salidas.
area = (base * altura ) / 2
h
b
30
2012 – Articulación - Algoritmia y programación
31. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Al conjunto de entradas y salidas se les conoce como
las variables del algoritmo.
Variables de entrada : base, altura
Variables de salida: area
31
2012 – Articulación - Algoritmia y programación
32. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Las variables pueden ser numéricas(entero, real) o
también pueden contener texto.
Variables de entrada : base, altura ??
Variables de salida: area ??
32
2012 – Articulación - Algoritmia y programación
33. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
1. Análisis del problema
Las variables pueden ser numéricas(entero, real) o
también pueden contener texto.
Variables de entrada : base, altura tipo real
Variables de salida: area ?? tipo real
33
2012 – Articulación - Algoritmia y programación
34. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
El pseudocódigo es utilizado para describir
algoritmos en un lenguje humano simplificado que
no es dependiente de ningún lenguaje de
programación.
34
2012 – Articulación - Algoritmia y programación
35. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
Fin 35
2012 – Articulación - Algoritmia y programación
36. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
Fin 36
2012 – Articulación - Algoritmia y programación
37. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
Declaración de variables
area: real
Fin 37
2012 – Articulación - Algoritmia y programación
38. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
Fin 38
2012 – Articulación - Algoritmia y programación
39. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
leer(altura)
Fin 39
2012 – Articulación - Algoritmia y programación
40. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
Lectura de los datos de entrada
leer(altura)
Fin 40
2012 – Articulación - Algoritmia y programación
41. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
leer(altura)
area = (base * altura) / 2
Fin 41
2012 – Articulación - Algoritmia y programación
42. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
leer(altura)
area = (base * altura) / 2 Proceso
Fin 42
2012 – Articulación - Algoritmia y programación
43. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
leer(altura)
area = (base * altura) / 2
imprimir (area)
Fin 43
2012 – Articulación - Algoritmia y programación
44. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
base, altura: real
area: real
leer(base)
leer(altura)
area = (base * altura) / 2
imprimir (area) Salidas
Fin 44
2012 – Articulación - Algoritmia y programación
45. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
3. Realizar la prueba de escritorio
La prueba de escritorio es una herramienta para
entender que hace un determinado algoritmo, o para
verificar que la solución al problema es la correcta.
Es una simulación de la puesta en marcha de un
algoritmo.
45
2012 – Articulación - Algoritmia y programación
46. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
3. Realizar la prueba de escritorio
Inicio
base, altura: real base altura área
area: real
Fin 46
2012 – Articulación - Algoritmia y programación
47. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
3. Realizar la prueba de escritorio
Inicio
base, altura: real base altura área
area: real 2.0
leer(base)
Fin 47
2012 – Articulación - Algoritmia y programación
48. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
3. Realizar la prueba de escritorio
Inicio
base, altura: real base altura área
area: real 2.0 4.0
leer(base)
leer(altura)
Fin 48
2012 – Articulación - Algoritmia y programación
49. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
3. Realizar la prueba de escritorio
Inicio
base, altura: real base altura área
area: real 2.0 4.0 4.0
leer(base)
leer(altura)
area = (base * altura)/ 2
Fin 49
2012 – Articulación - Algoritmia y programación
50. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
3. Realizar la prueba de escritorio
Inicio
base, altura: real base altura área
area: real 2.0 4.0 4.0
leer(base)
leer(altura)
area = (base * altura)/ 2 4.0
imprimir(area)
Fin 50
2012 – Articulación - Algoritmia y programación
51. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
4. Codificar el algoritmo usando un lenguaje de
programación
Los algoritmos escritos se deben traducir a un lenguaje de
programación.
En nuestro caso usaremos Java, pero existen muchos otros
como son:
c , c++,Ruby
c# , php
51
2012 – Articulación - Algoritmia y programación
52. Ejemplo 1
Problema:Desarrolle un algoritmo que permita calcular
el área de un triangulo a partir de su base y su altura.
4. Codificar el algoritmo usando un lenguaje de
programación
En las proximas clases veremos como es el proceso para
codificar los algoritmos en el lenguaje de programación
Java.
52
2012 – Articulación - Algoritmia y programación
53. Ejercicios
Siguiendo la metodología propuesta anteriormente,
resuelva los siguietes problemas:
1. Desarrolle un algoritmo que lea el monto de una factura y
muestre el valor que se debe pagar por concepto del
impuesto de IVA(16%) y el valor total a pagar.
2. Una casa de cambio necesita un programa que lea el
valor en pesos, y muestre la cantidad correspondiente en
dolares.
3. Desarrolle un algoritmo que permita calcular el área de un
circulo a partir del radio.
53
2012 – Articulación - Algoritmia y programación