2023-10-07
Imagina que eres una persona a la que le encanta la cocina, sobre todo los postres, y decides compartir tus recetas con tus amigos para que puedan probar, por ejemplo, un delicioso pai de limón ¿Cómo le harías entonces para poder compartir esas recetas con tus amigos? La respuesta a simple vista es obvia, mediante un recetario. Bueno, algo tan simple como una lista de pasos en un recetario permiten que las personas puedan ejecutar las instrucciones para crear un pai de limón. Cuando manejamos lenguajes de programación y decidimos comunicarlos con los demás sucede lo mismo, salvo que en nuestro caso podemos encontrarnos con ciertas dificultades como, por ejemplo, que la persona no conozca la sintaxis del lenguaje de programación, que el código sea demasiado extenso cómo para incluirlo en una lista de instrucciones, o más aún, que a quien deseamos reportarle nuestros códigos ni siquiera tenga dominio de los lenguajes de programación.
La necesidad de comunicar procesos no es una situación aislada para los programadores, en nuestro día a día nos encontramos con actividades que requieren se realicen a través de instrucciones que pueden o no estar descritas en un papel o simplemente se tiene el hábito para realizarlas. En el campo de la programación y la ciencia, a este conjunto de instrucciones se le denomina algoritmo.
Un algoritmo (nombrado así en honor al matemático Mohamed ben Musa al-Khwarizmi) se define como un conjunto de pasos definidos y ordenados de manera lógica para, consecuentemente, obtener un resultado. Entonces, se dice que los algoritmos deben cumplir todas las siguientes características:
Por lo tanto, un programa debe tener la siguiente secuencia:
Existen diversas maneras de representar un algoritmo, dependiendo el enfoque y características de la información a procesar, arquitecturas y tipo de trabajo. Generalmente, se emplean la descripción narrada, pseudocódigo y diagrama de flujo.
La descripción narrada consiste en describir los pasos o instrucciones de manera entendible para el ser humano, lo cual se realiza mediante una lista ordenada. En cambio, el pseudocódigo interpreta esas instrucciones a una sintaxis próxima al lenguaje de programación con la que se pretende trabajar. Por ejemplo ¿Cómo sería la descripción narrada para el proceso de retirar dinero de un cajero automático?
Retiro de cajero automático
1. Inserte la tarjeta en la terminar del cajero. Y espere.
2. Introduzca su número NIP para validar su información y espere. En caso de ser incorrecto el proceso se detendrá y se expulsará la tarjeta de la termina.
3. Diríjase al apartado de “retiro en efectivo” e ingrese la cantidad a retirar y espere, en caso de no tener fondos de clic en “terminar proceso” para retirar la tarjeta.
4. Espere hasta la realización de la transacción, dé clic en “terminar” una vez retirado el dinero e impreso el ticket de retiro.
5. Retire la tarjeta y espere hasta ver la pantalla de inicio del sistema.
El pseudocódigo se compone de un conjunto de palabras reservadas y de instrucciones proporcionadas por quién lo escribe, representando una instrucción cercana a un lenguaje de programación real para la solución del problema.
Las palabras reservadas cumplen con tareas específicas dentro del algoritmo, estas ya están definidas y no pueden ser ocupadas como identificadores. Por lo general, la mayoría de los lenguajes de programación tienen las siguientes palabras reservadas:
Consideremos ahora el siguiente ejemplo: elabore un pseudocódigo para un programa validar si un número es par o impar:
Algoritmo <Par_o_Impar>
Integer numero;
Imprimir(“Ingrese el número entero”);
Leer numero;
Si(numero % 2 == 0)
Imprimir(“El número es par”);
SiNo
Imprimir(“El número es impar”);
FinSi
Fin Algoritmo
Muchas ocasiones el programador maneja códigos extensos, para poder darle mantenimiento a futuro, añadir o eliminar instrucciones se puede recurrir al uso de comentarios. Los comentarios que se inserten no modificarán la ejecución del código, se pueden añadir de dos maneras, dependiendo del lenguaje de programación:
//Este es un comentario de una sola línea
/*Este es un comentario multilínea, puede usarlas
Para escribir textos largos. Este no alterará la
Ejecución del algoritmo. */
Texto creado bajo la licencia de Raiko EngineLink. Queda estrictamente prohibida la replicación de este y todos los contenidos creados fuera de esta plataforma. ©, Todos los derechos reservados. Descubre cómo hacemos esto.