"Capataces y Obreros: Estructuras de Programación: Parte I - Introducción"

Day 2,830, 09:00 Published in Argentina Argentina by Gerardo Antonio Uroz
PROGRAMACION

1º Articulo: Resolución de Problemas utilizando Algoritmos:


Voy a repetir en este artículo los temas que se tienen que repasar previos, aqui dejo los links.


http://www.erepublik.com/es/article/-construyendo-a-termi-neytor--2539348/1/20
http://www.erepublik.com/es/article/-arrastrando-cadenas--2539381/1/20
http://www.erepublik.com/es/article/-arquitectura-interna-del-cerebro-de-termy-neitor--2542921/1/20
http://www.erepublik.com/es/article/-c-mo-piensa-termy-neitor--2541337/1/20


Contenido

Vamos a comenzar este tema describiendo la forma en que se tienen que plantear las soluciones de un problema para que pueda ser resuelto utilizando computadoras.


La siguiente imagen ilustra el concepto básico de utilizar la computadora como una herramienta que nos ayuda a realizar nuestras tareas diarias más eficientemente.



La computadora está ejecutando un programa al que se le entregan un conjunto de datos de entrada (temperaturas, notas, edades, etc) y con esos datos se realizará un proceso (Ej.: promedio de temperaturas, máximas y mínimas, alumnos aprobados y no aprobados, % de jóvenes, adultos y adultos mayores en una determinada sociedad), el cual generará los resultados buscados.

Esos resultados pueden ser intermedios o finales, que en caso de ser finales son las salidas del proceso hacia el medio ambiente.

Temperaturas:




Los desarrolladores se abocarán a construir el proceso utilizando estructuras algorítmicas, lo que dará como resultado un algoritmo, que va a ser una de las soluciones al problema expresado a través de alguna herramienta que nos permita representarlo y tenerlo registrado, y a la mano para cuando nos vuelva a hacer falta.

Definición del Algoritmo:

En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-Juarismi1 ) es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.


Algo mas sobre algoritmo ...

Otra definición

Otras mas ....


Podemos decir entonces como conclusión de todas estas definiciones que un algoritmo es:

"Un conjunto finito de pasos que se realizan en una única secuencia que resuelve un problema"

Algunas Características:

Las entradas se tienen que acotar, filtrar, adecuar, basados en dominios de validez de datos. En el caso de los ejemplos anteriores, las temperaturas van a ser números reales que tendrán significado dentro del dominio del problema, en este ejemplo si hablamos de las temperaturas ambiente podemos decir que:

Mínimas son las temperaturas de las regiones de fríos extremos del planeta: antátida, groenlandia, siberia, etc. Tal vez para esto serían -70ºC

Máximas: son las temperaturas que se registran en las zonas mas cercanas el ecuador y los desiertos. Para este extremos superior 60ºC.

Dominio de validez para este ejemplo sería no menor a -70ºC y no mayor a 60ºC, y en términos computacionales números reales que varíen entre -70 y +60.

Intentar ingresar valores para las entradas fuera de este rango de validez en el algoritmo será bloqueado y debidamente tratado, informado del error al usuario e instándolo a corregir la entrada.


Temperaturas en Mendoza:

Una idea de dominio de validez ...

Como se observa en esta imagen están todas las temperaturas con sus máximas, mínimas y promedios.

Las salidas van a ser el resultado de aplicar el proceso sobre las entradas.


Proceso: es un conjunto de operaciones que se realizan sobre las entradas para obtener las salidas. Este proceso se desarrolla utilizando el concepto de algoritmo.

Entonces, a través de un algoritmo se van a expresar las operaciones que se realizan sobre las entradas para obtener las salidas. Esto muestra que todo proceso tiene un algoritmo que lo representa.

De esta forma un algoritmo representa una posible solución a un problema, pero expresado en términos de pasos a realizar y que expresan la idea solución del problema, que se ejecutan en una determinada secuencia y que tiene comienzo y fin.

Hasta aquí la introducción teórica al proceso de desarrollo lógico.