La principal razón para que las personas aprendan lenguajes de programación es utilizar la
computadora como herramienta para la solución de problemas. Dos fases son muy identificadas para lograr la
solución de problemas:
Fase de resolución del problema
Fase de implementación (realización) en un lenguaje de programación.
Analisis del
problema
Validación del
programa
Programa de
trabajo
Análisis del problema. El primer paso para la solución de un problema es el análisis del mismo. Se debe
examinar cuidadosamente el problema a fin de obtener una idea clara sobre lo que se solicita y determinar los
datos necesarios para conseguirlo.
Analisis del
problema
Diseño del algoritmo. Puede ser definido como la secuencia ordenada de pasos, sin ambigüedades, que
conducen a la solución de un problema.
Verificación de algoritmos. Una vez terminado de escribir un algoritmo es necesario comprobar que realiza
las tareas para las que se ha diseñado y produce el resultado correcto y esperado. Para esto aplicamos la
Prueba de escritorio. Comprobación manual usando datos significativos que abarquen todo el posible rango
de valores.
1.2.- Fase de implementación
Una vez que el algoritmo esta diseñado, representado gráficamente mediante una herramienta de
programación (Diagrama de flujo, diagrama de N-S o pseudocódigo) y verificado se debe pasar a esta fase de
codificación, traducción de un algoritmo a un determinado lenguaje de programación, que deberá ser
completada con la ejecución y comprobación del programa en una computadora.
2. CONCEPTO DE ALGORITMO
Para representar un algoritmo se debe utilizar algún método que permita independizar dicho
algoritmo del lenguaje de programación elegido. Ello permitirá que un algoritmo pueda ser codificado
indistintamente en cualquier lenguaje. Para conseguir este objetivo se precisa que el algoritmo sea
representado gráficamente o numéricamente, de modo que las sucesivas acciones dependan de la sintaxis de
ningún lenguaje de programación, es decir su codificación.
Los métodos usuales para representar un algoritmo son:
1. Lenguaje español.
2. Formulas.
3. Diagramas de flujo.
4. Diagrama N-S (Nassi-Schneiderma).
5. Lenguaje de codificación de algoritmos (Pseudocodigo).
Los métodos 1 y 2 no suelen ser fáciles de transportar en un programa. Una descripción en español
narrativa no es satisfactorio ya que es demasiado prolija y generalmente ambigua, una formula, sin embargo
es un buen sistema de representación, por ejemplo la formula para halla el área de un circulo.
S = x R2
Signífica
1. Eleve R al cuadrado
2. Reemplacé el valor de el símbolo por 3.141592
3. Multiplique el resultado del paso 1 por le paso 2
Sin embargo no es frecuente que un algoritmo pueda ser expresado por medio de una formula.
Diagramas de flujo
Un diagrama de flujo (FlowChart) es una de las técnicas de representación de algoritmos mas antigua
y a la vez mas utilizada, un diagrama de flujo en un diagrama que utiliza los símbolos (cajas) estándares,
cada caja representa un comando. En su interior de las cajas los pasos a seguir por el algoritmo unidos por
flechas entre si, denominadas líneas de flujo que indican la secuencia en que se deben ejecutar
Se puede escribir mas de un paso del algoritmo en una sola caja excepto en al del inicio y fin, el uso de
las flechas significa que la caja no necesita estar escrita debajo de su predecesora, sin embargo abusar
demasiado de esta flexibilidad conduce a diagramas de flujo complicados e ininteligibles.
Ejemplo de diagrama de flujo:
INICIO
SI NO
A>=0
FIN
Inicio
Leer (a)
A>=0
True False
fin
Pseudocódigo
Inicio
Leer un valor para A
Si el valor de A es mayor o igual que Cero entonces
Escribir que el numero ingresado es positivo
Sino
Escribir que el numero ingresado es negativo
fin
Para diseñar un algoritmo se debe comenzar por identificar las tareas mas importantes para resolver
le problema y disponerlas en le orden en el que han de ser ejecutadas. Los pasos en esta primera descripción
de actividades deberán ser refinados añadiendo detalles a los mismo e incluso, algunos de ellos, pueden
requerir un refinamiento adicional antes que podamos obtener un algoritmo claro preciso y completo. Este
método de diseño de los algoritmos en etapas, yendo de los conceptos generales a los de detalle a través de
refinamientos sucesivos, se conoce como método descendente (Top Down). En un algoritmo se debe
considerar tres partes:
Como ejemplo imagínese que desea desarrollar un algoritmo que calcule la superficie de un rectángulo
proporcionándole su base y altura. Lo primero que deberá hacer es plantearse y contestar a las siguientes
preguntas:
Especificaciones de entrada
Especificaciones de salida
Paso 1 Entrada de base y altura desde periférico de entrada por ejemplo teclado
Paso 2 Cálculo de la superficie, multiplicando la base por la altura
Pase 3 Salida por pantallas de base, altura y superficie.
Como habíamos mencionado antes el algoritmo debe ser independiente de cualquier lenguaje de
programación particular pero fácilmente traducible a alguno de ellos.
Después de echar agua en al tetera, se pone al fuego y se espera a que el agua hierva (hasta que
suene el pitido de la tetera). Introducimos el te y se deja un tiempo hasta que este hecho.
1. Tomar la tetera.
2. Llenar de agua.
3. Encender el fuego.
4. Poner la tetera al fuego.
5. Mientras no hierva el agua esperar.
6. Tomar la bolsa de te
7. Introducir en la tetera
8. Mientras no este hecho el te esperar
9. Echar el te a al taza.
10. Fin.
1. Inicio.
2. Si gato del coche esta averiado llamar a la estación de servicio y bifurcar al punto 11; en caso
contrario, continuar el proceso.
3. Levantar el coche con el gato.
4. Aflojar y sacar los tornillos de las ruedas.
5. Si NO todos los tornillos están flojos y quitados, bifurcar al paso 4; en caso contrario, continuar
el proceso.
6. Quitar la rueda.
7. Poner la rueda de repuesto.
8. Poner los tornillos y apretarlos.
9. Si NO están puestos todos los tornillos volver al paso 8, en caso contrario continuar el proceso.
10. Bajar el gato.
11. Fin.
Después de echar agua en al tetera, se pone al fuego y se espera a que el agua hierva (hasta que
suene el pitido de la tetera). Introducimos el te y se deja un tiempo hasta que este hecho.
1. Tomar el periódico.
2. Mientras no lleguemos a la cartelera pasar la hoja.
3. Mientras no se acabe al cartelera leer película.
4. Si nos gusta recortarla.
5. Elegir una de las películas seleccionadas
6. Trasladarse a la sala
7. Si NO hay entadas bifurcar al punto 16; caso contrario continuar
8. Si hay cola, ponerse al ultimo.
9. Mientras no llegue a la taquilla avanzar.
10. Si NO hay entradas bifurcar al punto 16; caso contrario compra entrada
11. Leer el lugar de la entrada
12. Buscar lugar
13. Sentarse
14. Ver película
15. Fin
Ejercicios Propuestos