Programas, Algoritmos

13
Introducci´ on a la programaci´on Roberto Carlos Abreu D´ ıaz Outline La disciplina de la programaci´on Programas Algoritmos Caracter´ ısticas de los algoritmos Representaci´ on de los algoritmos Resoluci´onde problemas por computadora Programaci´ on Modular Introducci´on a la programaci´ on Roberto Carlos Abreu D´ ıaz January 11, 2010

description

Programas y Algoritmo

Transcript of Programas, Algoritmos

Page 1: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Introduccion a la programacion

Roberto Carlos Abreu Dıaz

January 11, 2010

Page 2: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

La disciplina de la programacionProgramas

AlgoritmosCaracterısticas de los algoritmosRepresentacion de los algoritmos

Resolucion de problemas por computadora

Programacion Modular

Page 3: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Programas

Secuencia de instrucciones que especifican como ejecutaruna computacion (¿o cocinar una salsa? )

Page 4: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Tipos de instrucciones

I entrada: Leer del teclado, archivo o algun dispositivo

I salida: mostrar data en pantalla o enviar data a unarchivo u otro dispositivo

I aritmeticas: operaciones simples como adicion ymultiplicacion

I ejecuciones condicionales: evaluar ciertas condicionesy ejecutar la secuencia de sentencias apropiada

I repeticion: ejecutar cierta accion repetidamente,usualmente con cierta variacion

Estas instrucciones son practicamente todas las queexisten

Page 5: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

¿Que es un algoritmo?

¿Que es un algoritmo?

Informalmente, un algoritmo es una sucesion deinstrucciones utilizada para resolver algun problema.

I recetas, procedimientos

I por ejemplo:encontrar numeros primos, encontrar elMCD, etc...

Page 6: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Caracterısticas de los algoritmos

I deben ser definidos: cada paso debe de tener unsignificado claro y estar libre de ambiguedades

I deben ser correctos: deben actuar conforme a comofueron definidos

I debe terminar

Page 7: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Representacion de los algoritmos

I narrativamente

I graficamente

I pseudo-codigo

Page 8: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Narrativamente

Page 9: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Graficamente

Page 10: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Pseudo-codigo

I INICIO

I lista = 0

I indice = 0

I suma = 0

I lista = leer(lista)

I desde indice hasta CuentaElementos(lista)I INICIO

I suma = suma + lista(indice)I indice = indice + 1I FIN

I Imprimir(“Total de elementos = ” + suma)

I FIN

Page 11: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

¿Los algoritmos son programas, o viceversa?

No.

I Los programas de cierta manera son implementacionesde los algoritmos en un lenguaje de programacion

I Frecuentemente los programas constan con mas de unalgoritmo

I Los programas se ejecutan

Page 12: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Resolucion de problemas con computadora

Cada programador resuelve cada programa de unamanera distintaPero hay ciertos pasos generales que se observan siempre.

I Analisis

I Diseno

I Codificacion

I Compilacion y ejecucion

I Prueba y depuracion

I Documentacion

Page 13: Programas, Algoritmos

Introduccion a laprogramacion

Roberto CarlosAbreu Dıaz

Outline

La disciplina de laprogramacion

Programas

Algoritmos

Caracterısticas de losalgoritmos

Representacion de losalgoritmos

Resolucion deproblemas porcomputadora

ProgramacionModular

Programacion Modular