miércoles, 4 de julio de 2012

Algoritmos culinarios y telefónicos

Para cuando leáis esto, yo estaré a unos cuantos miles de kilómetros de mi casa. Me voy de vacaciones dos semanas. Estaré en en lugar del desembarco más famoso de la historia (de la segunda guerra mundial): en Normandia.

Por lo tanto, aquí os dejo un post que escribí en el transporte público de camino al trabajo (¿o era de vuelta a casa?). Lo mismo da. Está escrito en junio. Como lo hice desde el móvil, y lo estoy editando desde el ordenador, puede que se me haya escapado alguna cosa. Aún así, aquí os lo dejo.

Por cierto, algún día os daré la explicación de este post.

#####

Acabo de pensar que esto debería de ir en la sección de diccionarios. Pero, lo voy a describir aquí. Algún día lo entenderéis.
Un algoritmo ser puede definir como el conjunto de pasos necesarios para llevar a cabo una acción. Y, aunque parezca mentira, los llevamos a cabo en nuestra vida diaria incluso sin darnos cuenta.
Un ejemplo. Hacer una tortilla francesa. Un posible algoritmo de varios podría ser:
- Coger una sartén.
- Ponerle un poco de aceite.
- Encender el fuego a media temperatura.
- Cascar dos huevos en un planto hondo.
- Batir los huevos.
- Ponerles un poco de sal. También ser les puede poner queso rayado.
- Volver a remover si hacer falta.
- Cuando hayamos terminado el aceite estará caliente y podremos verter el contenido del plato en la sartén.
- Veremos que se está cuajando (di el aceite está lo suficientemente caliente). Habrá que ir doblando la tortilla sobre sí misma con una espátula o espumadera.
- Una vez hecha al gusto del consumidor, se pasa el resultado final a un plato. Acordarse de apagar el fuego.
- Ya nos la podemos zampar. Tarde o temprano tocará fregar todos los bártulos.
Vale. Lo sé. He cogido un ejemplo muy complicado para explicar qué es un algoritmo.

Un ejemplo más sencillo: llamadas de teléfono desde unas línea fija.

- Descolgar el teléfono.
- Mirar si hay tono:
- - No hay tono:
- - - Colgamos.
- - - Esperar unos minutos.
- - - Volver a intentarlo.
- - Hay tono:
- - - Marcar número de teléfono
- - - Esperar respuesta:
- - - - No hay respuesta:
- - - - - Colgar. Esperar un tiempo y volver a intentarlo
- - - - Hay respuesta:
- - - - - Hablar largo y tendido (o no).
- - - - - Colgar.

Vale. Este es más sencillo, ¿Verdad? Este ejemplo del teléfono es uno de los primeros que hice años ha cuando empecé con esto de la programación. Es un ejemplo sencillo de entender para, prácticamente, todo el mundo.

Bueno. Estos ejemplos, aunque no tienen mucho que ver con el tema del que trata este blog, cada uno de los pasos y condiciones se podrían extrapolar a los procesos necesarios para hacer un programa. Soy consciente de que hay muchas más formas de hacerlos, pero esta es la que se me ha ocurrido en estos instantes. Es posible que en otras circunstancias los hubiese expresado de otra forma.

¿Se os ocurren otros ejemplos que se puedan explicar de una forma sencilla con condicionales, bucles y demás? 

No hay comentarios:

Publicar un comentario