Sunteți pe pagina 1din 18

TCNICO MEDIO EN PROGRAMACIN

INTRODUCCIN A LA LGICA DE PROGRAMACIN


Fases de desarrollo de un programa
Presentado por: Pablo Lanzas E-mail: pablor.lanzas@gmail.com

Algoritmos
El objetivo principal de esta asignatura es ensear a resolver problemas mediante una computadora. El programador de computadora es antes que nada una persona que resuelve problemas, por lo que para llegar a ser un programador eficaz se necesita aprender a resolver problemas de un modo riguroso y sistemtico.

Algoritmos
El algoritmo es un mtodo para resolver un problema. La resolucin de un problema exige el diseo de un algoritmo que resuelva el problema propuesto.
Problema Programa de computadora

Diseo del algoritmo

Resolucin de problemas
Las fases para la resolucin de un problema son: 1. Diseo del algoritmo, que describe la secuencia ordenada de pasos sin ambigedades que conducen a la solucin de un problema dado. (Anlisis del problema y desarrollo del algoritmo). 2. Expresar el algoritmo como un programa en un lenguaje de programacin adecuado (fase de codificacin). 3. Ejecucin y validacin del programa por la computadora.

Resolucin de problemas
Para llegar a realizar un programa es necesario el diseo previo de un algoritmo, ya que sin algoritmo no puede existir un programa. Los algoritmos son independientes del lenguaje de programacin y de la computadora que los ejecuta. El algoritmo planteado puede ser expresado en un lenguaje de programacin diferente y ejecutarse en una mquina distinta.

Resolucin de problemas
En esencia, la solucin de un problema se puede expresar mediante un algoritmo

Escritura de algoritmos
Un algoritmo consiste en realizar una descripcin paso a paso con un lenguaje natural. Debemos recordar que un algoritmo es un mtodo o conjunto de reglas para solucionar un problema. Dichas reglas deben tener las siguientes propiedades: Deben ser secuencias definidas de pasos hasta que se obtenga un resultado coherente. Solo puede ejecutarse una operacin a la vez.

Escritura de algoritmos
El flujo de un algoritmo es secuencial; consideremos el algoritmo que responde a la pregunta Qu hacer para ver la pelcula de Harry Potter? La respuesta es muy sencilla y puede ser descrita en forma de algoritmo general de modo similar a: 1. Ir al cine 2. Comprar una entrada 3. Ver la pelcula 4. Regresar a casa

Escritura de algoritmos
El algoritmo anterior cuenta de cuatro etapas bsicas, cada una de las cuales debe ser ejecutada antes de realizar la siguiente. En trminos de computadoras, cada accin se codificar en una o varias sentencias que ejecutan una tarea particular.

Representacin grfica de los algoritmos


Los algoritmos deben representarse utilizando algn mtodo que permita independizar dicho algoritmo del lenguaje de programacin elegido. Permitiendo que el algoritmo puede ser codificado en cualquier lenguaje de programacin. Este objetivo se consigue mediante una representacin grfica o numrica. Los mtodos usuales para representar un algoritmo son: Diagrama de flujo, Diagrama N-S (NassiSchneiderman), Lenguaje de especificacin de algoritmos: pseudocdigo, lenguaje espaol, ingls, frmulas.

Diagramas de flujo
Un diagrama de flujo (flowchart) es una de las tcnicas de representacin de algoritmos ms antigua y a la vez ms utilizada, aunque su empleo ha disminuido considerablemente, sobre todo desde la aparicin de lenguajes de programacin estructurados. Un diagrama de flujo utiliza los smbolos (cajas) estndar y que tiene los pasos de algoritmo escritos en esas cajas unidas por flechas, denominadas lneas de flujo, que indican la secuencia en que debe ejecutar.

Smbolos de diagramas de flujo

Smbolos de diagramas de flujo

Smbolos de diagramas de flujo

Smbolos de diagramas de flujo

Smbolos de diagramas de flujo

Pseudocdigo
El pseudocdigo es un lenguaje de especificacin de algoritmos. El pseudocdigo naci como un lenguaje similar al ingls y era un medio para representar bsicamente las estructuras de control. El pseudocdigo no puede ser ejecutado por una computadora (es un borrador).

Pseudocdigo
La ventaja principal del pseudocdigo es que el programador se puede centrar en la lgica y en las estructuras de control y no preocuparse de las reglas de un lenguaje especfico. Es fcil de modificar. Fcil traduccin a lenguajes de programacin estructurados.

S-ar putea să vă placă și