Want to make creations as awesome as this one?

Transcript

2. DISEÑO DE ALGORITMOS

START

fundamentos de programacion

ÍNDICE

2.1

Conceptos básicos

2.2

Metodología de la programación

2.3

Diagramas de flujo

2.4

Pseudocódigos

2.4.1

Algoritmos en pseudocódigo

La relación matemática y de las ciencias de la computación con los algoritmos reside principalmente en que ambas disciplinas los necesitan para resolver problemas. Los programadores se encargan del diseño de algoritmos, que serán ejecutados por un ordenador para producir la solución al problema planteado.

2.1 Conceptos básicos

Los algoritmos son un conjunto de reglas predefinidas que se deben seguir para resolver un problema, su importancia reside en esa utilidad: ofrecer soluciones a una solicitud concreta.

Aunque se conciba como un concepto complejo, lo cierto es que los algoritmos forman parte del día a día y resuelven cálculos de forma automática, que permiten, por ejemplo, conocer de forma rápida la predicción del tiempo de un lugar concreto.

2.1 Conceptos básicos

Un algoritmo es un conjunto ordenado de operaciones que conducen a la resolución de un problema concreto, sin ambigüedad, en un tiempo finito. Estas operaciones matemáticas están presentes en operaciones de todo tipo, desde una suma a las acciones que se realizan en Internet.

A la hora de diseñar algoritmos hay que cumplir con una serie de requisitos que son clave para no cometer errores: -Deben tener un principio y un fin. La finitud es una característica clave de estos procesos matemáticos. -Deben ser precisos. Los algoritmos deben precisar el orden de realización de cada acción, de forma clara, sin ambigüedades. -Secuencia clara. Esta sucesión de pasos debe tener un orden inalterable. -Ser repetibles. Estos procesos se pueden repetir tantas veces como se desea, pero es necesario que devuelvan siempre los mismos resultados frente a la misma solicitud.

En el diseño de algoritmos hay un objetivo: analizar en detalle y comprender la naturaleza del problema. Esto es primordial para obtener una idea general y certera de lo que realmente hay que hacer o lo que se solicita. Otro punto a tener en cuenta es que los algoritmos son independientes tanto del lenguaje de programación como del ordenador donde se ejecuta.

2.1 Conceptos básicos

Claves del diseño de algoritmos

Otra de las claves del algoritmo es que en él se plasman las tres partes de una solución informática:Entrada. Conjunto de datos con los que el algoritmo procesa la información. Proceso. Cálculos necesarios para llegar a resolver el problema. Salida. Es el resultado o resultados finales obtenidos después de procesar los cálculos.

¿Cómo se verifica si el algoritmo cumple con los estándares de calidad? Para ello, es necesario que los algoritmos estén compuestos de las siguientes características, complementarias a las anteriormente descritas:-Validez. El algoritmo diseñado responde exactamente a la solicitud concreta que se ha realizado, es decir, hace lo que se le pide que haga. -Eficiencia. Debe responder al problema en el menor tiempo posible. -Optimización. El algoritmo que se ha desarrollado es el mejor para resolver el problema que se desea.

2.1 Conceptos básicos

Diálogo o intercambio: el programa empieza por identificar el problema. Luego se centra en la comprensión del mismo. Cuanta mayor información se obtenga en esta primera fase, más acertada será la programación de la solución. Especificación: en esta segunda etapa se establecen de manera precisa las condiciones que debe cumplir el programa para alcanzar su objetivo, que es la solución del problema identificado. Todo lo relativo a la solución debe quedar descrito y clarificado en este punto. Diseño: el siguiente paso consiste en la construcción de un algoritmo que siga las especificidades descritas en el punto anterior. Codificación: esta fase es una de las más importantes de todo el proceso. El algoritmo que se ha diseñado anteriormente es traducido al lenguaje propio de la programación. O, dicho de otra forma, el programa cobra entidad. Verificación: en última instancia, los responsables del proyecto realizan una serie de pruebas para confirmar la viabilidad y la utilidad de la solución. Si cumple con lo establecido en la fase de diseño, se implementa en procesos que lo requieran. Si no es así, se deben tomar medidas para corregir los fallos que impidan su normal desarrollo. Mantenimiento: la solución implementada, que ya ha adquirido la categoría de programa informático, precisa mantenimiento cada cierto tiempo. También de esto depende su grado de eficiencia.

2.2 Metodología de la programación

La metodología de programación es el enfoque teórico - práctico que hace posible encontrar soluciones a problemas complejos partiendo del análisis y apoyándose en la planificación. Este planteamiento hace posible maximizar la eficiencia del desarrollo del software al ganar en visibilidad y control.

La programación, resumiendo, determina el proceso para la creación de una solución de carácter informático, cualquiera que sea su objetivo o naturaleza. Cada problema es distinto, del mismo modo que los pasos para implementar la solución. Pero al margen de esto, los programas informáticos diseñados para tal fin no pueden obviar una serie de elementos básicos. Veamos en qué consisten:

Es importante resaltar que el Diagrama de Flujo muestra el sistema como una red de procesos funcionales conectados entre sí por "Tuberías" y "Depósitos" de datos que permite describir el movimiento de los datos a través del Sistema. Este describirá: Lugares de Origen y Destino de los datos, Transformaciones a las que son sometidos los datos, Lugares en los que se almacenan los datos dentro del sistema, Los canales por donde circulan los datos. Además de esto podemos decir que este es una representación particular de un Sistema, el cual lo contempla en términos de sus componentes indicando el enlace entre los mismos

2.3 Diagramas de flujo

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.

SALIDA DE INFORMACIO N EN PANTALLA

SALIDA DE INFORMACION IMPRESA

FLUJO DEL PROGRAMA

CONECTOR FUERA DE PAG

DECISION

CONECTOR

ENTRADA/SALIDA

PROCESO

INICIO / FIN

2.3 Diagramas de flujo

2.4 Pseudocódigos

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. Su principal función es la de representar por pasos la solución a un problema o algoritmo, de la forma más detallada posible, utilizando un lenguaje cercano al de programación. El pseudocódigo no puede ejecutarse en un ordenador ya que entonces dejaría de ser pseudocódigo, como su propio nombre indica, se trata de un código falso (pseudo = falso), es un código escrito para que lo entienda el ser humano y no la máquina.

2.4.1 Algoritmos en pseudocódigo

Todo algoritmo en pseudocódigo tiene la siguiente estructura general:

¡GRACIAS!