Cap 5 tema algoritmos

Post on 19-Feb-2017

135 views 0 download

Transcript of Cap 5 tema algoritmos

Universidad Pedagógica Nacional de Francisco Morazán

PREUFOD

Clase: INFORMATICA BASICA.

Lic. Marció Rodas.

Exposición:

AlgoritmosCap. 5

Tegucigalpa M.D.C. 8 de Junio del 2016

Hemos visto que antes de que una computadora pueda realizar una tarea, hay que proporcionarle un algoritmo que le diga de forma precisa qué hacer; en consecuencia, el estudio de los algoritmos es la piedra angular de las Ciencias de la computación.

Es un conjunto de pasos lógicos ordenados, secuencialmente y finita, escritos de tal forma que permiten visualizar la solución de un problema determinado en un momento específico.

concepto de algoritmo

El término algoritmo se utiliza a menudo en aplicaciones prácticas o en contextos informales para hacer referencia a conjuntos de pasos que no necesariamente definen procesos que terminen.

La naturaleza abstracta de los algoritmos

Es importante hacer hincapié en la diferencia entre un algoritmo y su representación, una distinción análoga a la que existe entre una historia y un libro. Una historia es de naturaleza abstracta o conceptual; un libro es una representación física de una historia. Si traducimos un Libro a otro idioma o lo volvemos a reeditar con un formato distinto, lo único que cambia es la representación de la historia, pero la propia historia continuará siendo la misma.

En cada caso, el algoritmo subyacente es el mismo, solo cambia la representación.

Representación de algoritmos

El objetivo es introducir los conceptos básicos de primitivas y pseudocódigo, así como establecer un sistema de representación para nuestro uso.

PrimitivasLa representación de un algoritmo requiere algún tipo de lenguaje. En el caso de los seres humanos, este puede ser un lenguaje natural (inglés, español, ruso, japonés) o quizá un lenguaje gráfico,

A menudo, dichos canales naturales de comunicación conducen a que se produzcan malentendidos,

También pueden surgir problemas debidos a malentendidos concernientes al nivel de detalle requerido.

pueden surgir problemas de comunicación cuando el lenguaje utilizado para representar un algoritmo no está definido de forma precisa o cuando no se proporciona la información con el suficiente detalle.

Las Ciencias de la computación tratan de resolver estos problemas estableciendo un conjunto bien definido de elementos fundamentales de construcción de software (building block) a partir de los cuales puedan construirse representaciones de algoritmos.

Esos elementos se denominan primitivas.

Un conjunto de primitivas junto con una serie de reglas que indiquen cómo pueden combinarse esas primitivas para representar ideas más complejas constituye un lenguaje de programación.

Cada primitiva tiene su propia sintaxis y semántica. La sintaxis hace referencia a la representación simbólica de la primitiva; la semántica hace referencia al significado de la primitiva. La sintaxis de aire está compuesta por cuatro símbolos, mientras que la semántica establece que es una sustancia gaseosa que rodea a nuestro planeta.

El expresar algoritmos de forma tan detallada resulta tedioso por lo que solemos emplear un conjunto de primitivas de 'alto nivel', cada una de los cuales es una herramienta abstracta construida a partir de las primitivas de 'bajo nivel' proporcionadas por el lenguaje máquina.

El resultado es un lenguaje de programación formal, en el que los algoritmos pueden expresarse con un nivel conceptualmente mayor que en el lenguaje máquina.

Pseudocódigo

En general, un pseudocódigo es un sistema de notación en el que las ideas pueden expresarse informalmente durante el proceso de desarrollo del algoritmo. Una forma de obtener un seudocódigo es simplemente relajar las reglas del lenguaje formal en el que vaya a escribirse la versión final del algoritmo. Desarrollar una notación coherente y concisa para la representación de estructuras semánticas que se repiten. A su vez, esas estructuras serán las primitivas con las que trataremos de expresar futuras ideas

PSEUDOCÓDIGO: Cómo se Hace?

Descubrimiento de algoritmos

El desarrollo de un programa está compuesto por dos actividades: descubrir el algoritmo subyacente y re presentar dicho algoritmo en forma de programa.

ALGORITMO: Definición del Problema

Está dada por el enunciado del problema, el cuál debe ser

claro y completo

Es importante que conozcamos exactamente

que se desea.

Mientras qué esto no se comprenda, no tiene caso pasar

a la siguiente etapa.

Proceso

ALGORITMO: Análisis del Problema

Entendido el problema para resolverlo es preciso analizar

Los datos de salida o

resultados que se esperan

Los datos de entrada que nos

suministran

Áreade

Trabajo

Fórmulas Recursos

ALGORITMO: ElementosDefinición

de variables y constantes

ProcesoEstructuras de control

Entrada SalidaEs necesario

identificar que datos se necesitan

ingresar, cuales sirven de forma auxiliar y cuales se van a generar. Cuerpo del algoritmo

ALGORITMO: Quienes pueden hacer un algoritmo?

Toda persona, implícitamente y diariamente diseña y realiza algoritmos, para dar solución a situaciones cotidianas de forma natural.Sin embargo el programador, diseña el algoritmo consiente de que al realizar cada paso obtendrá la solución de un problema específico.