Desde el punto de vista informático un algoritmo es cualquier procedimiento computacional bien definido que parte de un estado inicial y un valor o un conjunto de valores de entrada, a los cuales se les aplica una secuencia de pasos computacionales finitos, produciendo una salida o solución. Se puede considerar al algoritmo como una herramienta para resolver un cálculo computacional bien especificado. Independientemente de la clasificación y el tipo de algoritmo, básicamente todos están compuestos de tres partes principales: Entrada: Se trata del conjunto de datos que el algoritmo necesita como insumo para procesar. Proceso: Son los pasos necesarios aplicados por el algoritmo a la entrada recibida para poder llegar a una salida o resolución del problema. Salida: Es el resultado producido por el algoritmo a partir del procesamiento de la entrada una vez terminada la ejecución del proceso. Además del tipo de algoritmo existen una serie de características comunes a todos, a continuación, se mencionan alguna de ellas. Exactitud: el algoritmo tiene que indicar un orden claro de la ejecución de cada paso, estos no pueden ser ambiguos (debe existir una confiabilidad). Estar definido: si se realiza la ejecución de un mismo algoritmo en distintas instancias utilizando la misma entrada, debe resultar en la misma salida. Completo: en la solución se deben considerar todas las posibilidades del problema. Finito: necesariamente un algoritmo debe tener un número finito de pasos. Instrucciones entendibles: Las instrucciones que lo describen deben ser claras y legibles. General: debe poder abarcar problemas de un mismo tema soportando las distintas variantes que se presentan en la definición del problema. 2. Conceptos Básicos de la Programación.
Un Programa de Computadora es un conjunto de instrucciones que producirá la
ejecución de una determinada tarea. En esencia un programa es un medio para conseguir un fin.
El Proceso de Programación es un proceso de solución de problemas y el desarrollo
de un programa que requiere de las siguientes fases: a. Definición y análisis del problema. b. Depuración y validación del programa.
c. Diseño de algoritmos.
d. Documentación.
e. Codificación del programa.
f. Mantenimiento.
Los Elementos Básicos constitutivos de un Programa son:
a. Palabras reservadas. b. Identificadores.
c. Caracteres.
d. Constantes.
e. Variables.
f. Expresiones.
g. Instrucciones.
3. Concepto de Diagrama de Flujo y Pseudocódigo en la Programación.
Un Diagrama de Flujo representa la
esquematización gráfica de un algoritmo, el cual muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema. Su correcta construcción es sumamente importante porque, a partir del mismo se escribe un programa en algún Lenguaje de Programación. El pseudocódigo es una forma de expresar los distintos pasos que va a realizar un programa, de la forma más parecida a un lenguaje de programación. Tanto el pseudocódigo como los diagramas de flujo sirven para representar de un modo fácil de entender para personal no-técnico los pasos que realizará, por ejemplo, un algoritmo. La diferencia principal entre ambas es que el pseudocódigo es un medio escrito en algún lenguaje, por ejemplo, español, mientras que el diagrama de flujo es una representación gráfica que utiliza símbolos establecidos. El pseudocódigo es una versión simplificada de los conceptos de algunos lenguajes de programación.
4. Cómo define “Pensar como Programador”
Una de las habilidades más importantes que necesitas
saber para ser programador, más allá de la lógica, más allá de las tecnologías; bueno, es simple y asequible. Para pensar como programador debes aprender a formular preguntas. Desde el contextualizar, acotar el alcance y formular la pregunta para dar un resultado que pueda ser usado para tomar decisiones. Si, los lenguajes y los algoritmos son necesarios, pero, son el mínimo, se da por hecho que los sepas. Pensar como un programador implica, principalmente, ser persistente y meticuloso, además de prestar atención a los detalles. Toma este reto con entusiasmo, pero no olvides revisar tu trabajo cuidadosamente a lo largo del proceso a fin de asegurarte de que no haya errores en el sistema.