Un ejemplo de la vida diaria
Una receta es un algoritmo. Para preparar un té, por ejemplo:
- Hervir agua.
- Poner una bolsita de té en una taza.
- Verter el agua caliente en la taza.
- Esperar tres minutos.
- Retirar la bolsita.
Si cambias el orden (verter el agua antes de hervirla) el resultado ya no es el mismo. Esa es la primera idea: el orden de los pasos importa.
Las tres partes de un algoritmo
Todo algoritmo se puede ver como una caja con tres partes:
| Parte | Qué es | En el té | En un promedio |
|---|---|---|---|
| Entrada | Los datos con los que empieza | Agua, té y taza | Dos calificaciones |
| Proceso | Lo que se hace con los datos | Hervir, verter, esperar | Sumar y dividir entre 2 |
| Salida | El resultado | Una taza de té | El promedio |
Antes de escribir un programa conviene responder estas tres preguntas. En la escuela se le llama planteamiento del problema.
Qué debe cumplir un buen algoritmo
- Ser preciso: cada paso dice exactamente qué hacer. «Agrega un poco de sal» es ambiguo; «agrega una cucharadita de sal» no.
- Ser finito: termina. Un algoritmo que se repite para siempre no resuelve nada.
- Estar ordenado: los pasos van en una secuencia clara.
- Funcionar para varios datos: el mismo algoritmo del promedio sirve para cualquier par de calificaciones, no solo para 7 y 10.
De la idea al programa
Para que una computadora siga un algoritmo hay que escribirlo con reglas claras. Una forma de hacerlo es con pseudocódigo. Este algoritmo calcula el área de un rectángulo: la entrada son la base y la altura, el proceso es multiplicarlas y la salida es el área.
Algoritmo area_rectangulo
Escribir "Base:"
Leer base
Escribir "Altura:"
Leer altura
area <- base * altura
Escribir "Área: ", area
FinAlgoritmo
Con base 4 y altura 3 muestra Área: 12. Cambia los datos y el mismo algoritmo da otro resultado.
Formas de representar un algoritmo
- Lenguaje natural: frases como las de la receta.
- Pseudocódigo: frases cortas con palabras como
Leer,EscribirySi. - Diagrama de flujo: figuras unidas con flechas.
- Código: un lenguaje de programación como Python, C o Java.
Son formas distintas de contar lo mismo. Para comprobar que un algoritmo funciona, puedes hacer su prueba de escritorio.
Errores comunes
- Pasos ambiguos: «calcula el total» sin decir de qué.
- Olvidar un caso: dividir entre un número que puede ser cero.
- No terminar: una repetición que nunca llega a su condición de salida.
- Mezclar el orden: usar un dato antes de leerlo.
Preguntas frecuentes
¿Un algoritmo es lo mismo que un programa?
No. El algoritmo es la idea: los pasos para resolver el problema. El programa es esa idea escrita en un lenguaje que una computadora entiende.
¿Necesito una computadora para hacer un algoritmo?
No. Puedes escribirlo en papel, con frases o con un diagrama. La computadora hace falta cuando quieres ejecutarlo y ver el resultado.
¿Cuántos pasos debe tener un algoritmo?
Los que hagan falta, pero siempre un número finito. Un buen algoritmo es tan corto como se pueda sin dejar pasos ambiguos.