Unidad 1

Conocer la técnica de creación de algoritmos para la resolución de problemas:

Algoritmo:

Es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite llevar a cabo una actividad mediante pasos sucesivos que no generen dudas a quien deba hacer dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.En términos de programación, un algoritmo es una secuencia de pasos lógicos que permiten solucionar un problema.

Características:

Finitud:
El algoritmo debe acabar tras un número finito de pasos. Es más, es casi fundamental que sea en un número razonable de pasos.

Definibilidad:
El algoritmo debe definirse de forma precisa para cada paso, es decir, hay que evitar toda ambigüedad al definir cada paso. Puesto que el lenguaje humano es impreciso, los algoritmos se expresan mediante un lenguaje formal, ya sea matemático o de programación para un computador.

Entrada:
El algoritmo tendrá cero o más entradas, es decir, cantidades dadas antes de empezar el algoritmo. Estas cantidades pertenecen además a conjuntos especificados de objetos.Se trata siempre de cantidades representativas del mundo real expresadas de tal forma que sean aptas para su interpretación por el computador.

Salida:
El algoritmo tiene una o más salidas, en relación con las entradas.

Efectividad:
Se entiende por esto que una persona sea capaz de realizar el algoritmo de modo exacto y sin ayuda de una máquina en un lapso de tiempo finito.

Expresar un algoritmo en palabras:

Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.
La descripción de un algoritmo usualmente se hace en tres niveles:

Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.

Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución.

Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones.

También es posible incluir un teorema que demuestre que el algoritmo es correcto, un análisis de complejidad o ambos.

Algoritmo es un paso previo:

1)Para escribir un problema, Antes debo pensar en el algoritmo; ¿Como Resolver el problema?

2)El programa es la expresión de un algoritmo en un lenguaje de programación determinado


Expresión de un algoritmo:

1)Palabras

2)Gráficos Y Diagramas De Flujo

3)Pseudocódigo

Tipos De Algoritmos:

Algoritmos cualitativos: cuando se hace a través de palabras, es decir, las instrucciones son verbales. Sucede, por ejemplo, con recetas de cocina.
Algoritmos cuantitativos: cuando se hace a través de cálculos numéricos. Se puede hacer un algoritmo, por ejemplo, para obtener la raíz cuadrada de un número.



Lenguajes Algorítmicos:

•Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo (diagrama de flujo).

Resultado de imagen para algoritmos graficos

•No Gráficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocódigo).

Imagen relacionada

Diagrama de flujo
Se basan en la utilización de diversos símbolos para representar operaciones especificas. Se les llama diagramas de flujo porque los símbolos utilizados se conectan.

Resultado de imagen para diagrama de flujo

Metodología para la solución de problemas por medio de un computador:


Definición del problema.

Esta fase está dada por el enunciado del problema, el cual requiere una definición clara y precisa. Es importante que se tenga claridad de el problema y conozcas lo que se deseas que realice la computadora para la resolución; mientras esto no se conozca del todo no es recomendable continuar. Tomate el tiempo necesario para realizar esta actividad.

Análisis del problema.
Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir:

Los datos de entrada.

Cual es la información que se desea producir (salida).

Los métodos y fórmulas que se necesitan para procesar los datos.

Una recomendación práctica es el que nos pongamos en el lugar de la computadora y analicemos qué es lo que necesitamos que nos proporcionen y en qué secuencia u orden para producir los resultados que necesitamos.

Diseño del algoritmo.
Las características de un buen algoritmo son:

Debe tener un punto particular de inicio.

Debe ser definido, no debe permitir dobles interpretaciones. (Muy importante!)

Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema.

Debe ser finito en tamaño y tiempo de ejecución.

Codificación (escritura) y prueba.
La escritura es la operación de escribir la solución del problema de acuerdo a una lógica , en una serie de instrucciones detalladas, en un código reconocible. Cuando hacemos la codificación es poner las mismas instrucciones pero en un lenguaje entendible para la computadora (sintaxis). Posteriormente debemos probarlo, hacer lo que se conoce como "corrida manual". Esto no es mas que seguir exactamente las instrucciones tal y como las escribimos, y ver si tenemos las salidas deseadas. Los errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a una solución sin errores puede ser extenso. En la medida de que se haga bien la escritura, las pruebas saldrán con los resultados deseados y no tendremos más problemas de los que estamos resolviendo. Los errores lógicos (derivados de no escibir las instrucciones bajo una lógica) son los más difíciles de resolver, y son los que mayormente contribuyen a desistir de que resolvamos el problema.

Metodología para la creación de algoritmos:

Dado un determinado problema, el programador debe idear una solución y expresarlo usando un algoritmo,luego de esto debe codificarlo en un determinado lenguaje de programación y por ultimo ejecutar el programa en el pc el cual refleja una solución del problema inicial.

Partes de un algoritmo:






No hay comentarios.:

Publicar un comentario