You are on page 1of 12

PROGRAMACIN 1

Introduccinala
programacin
Metodologaderesolucin
deproblemas

Universidad Catlica de La Plata


Facultad de Ciencias Exactas y Tecnologa

AndrsGaravaglia
AntonioRestelli

Contenido
Modelizacindeproblemasdelmundoreal
Etapasdelaresolucindeproblemasconcomputadoras
Lenguajesdeprogramacin
Algoritmos
Asignacin
Secuencia
Decisin
Repeticin
Seleccin
Iteracin

Modelizacin de problemas del


mundo real
Abstraccin de un problema y simplificar su expresin tratando de
encontrar los aspectos principales que se pueden resolver
(requerimientos), los datos que se han de procesar y el contexto del
sistema.
Abstraccin

Anlisis

Problema del
mundo real

Modelo

Sistema

Programa

Mdulo

Diseo de algoritmo

Descomposicin

Etapas de la resolucin de problemas

Anlisis del problema


1. Requerimientosdelusuario.

Especificacin de algoritmos
1. Eleccindealgoritmosparalos
mdulos

2. Objetivoaresolver.

2. Traduccindefuncionesen
algoritmos

3. Datosautilizar.
4. Transformacionesdeesosdatos.

Diseo de una solucin

Escritura de programas

1. Soft yHard requeridos.

1. Eleccindellenguaje.

2. Modularizacindelproblema.

2. Traduccindealgoritmoa
lenguaje.

3. Comunicacinentrelosmdulos
delsistema.

3. Depuracinerroressintcticos
4. Compilacin

Verificacin
1. Verificacinderesultadodeseado.
2. Verificacincondatosrepresentativos.

Lenguajes
Un lenguaje de programacin es un conjunto de smbolos y reglas
sintcticas y semnticas que definen su estructura y el significado de
sus elementos y expresiones. Es utilizado para controlar el
comportamiento fsico y lgico de una mquina.

Alto Nivel

Bajo Nivel
A:=10;

Instruccin

xor AX, 0
mov ax,bx
Instruccin
int 80h

Mquina
010110101

Instruccin

010110101

Instruccin

010110101
010110101

Instruccin
Instruccin

Instruccin
Instruccin

010110101
010110101
010110101
010110101

Algoritmos
Algoritmo es la especificacin rigurosa de la secuencia de pasos
(instrucciones) a realizar para alcanzar un resultado deseado en un
tiempo finito.

Propiedades

Finito: Debeterminardespusdeundeterminadonmerodepasos.

Precisin: Cadapasodebeestarrigurosamentedefinido.Demaneranoambigua.

Entrada: Puedetenerceroomasentradas.

Salida: Tieneunaomassalidas.

Eficacia: Seesperaqueseaeficazensentidoquetodaslasoperacionesque
realiceelalgoritmopuedanllegaraserrealizadasporunhombreutilizandolapiz
ypapel
Donald Knuth

Estructuras de control
Todos los lenguajes de programacin tienen un conjunto mnimo de
instrucciones que permiten especificar el control propio del algoritmo
que se quiere implementar. Este conjunto debe contener estructuras
mnimas de ASIGNACION, DECISIN E ITERACIN.

SECUENCIA

REPETICIN

DECISIN

ASIGNACIN

SELECCIN

ITERACIN

Estructuras de control
Secuencia

Laestructuradecontrolmassimplerepresentadaporunasucesinde
operaciones.Ej:asignacin(almacenarvalores).

Elordendeejecucincoincideconelordenfsicodelaaparicindelas
instrucciones.
Secuencia
Abrir billetera
Asignacin
Guardar moneda
Cerrar billetera

Estructuras de control
Repeticin

Consisteenrepetirnvecesundeterminadobloquedeacciones.

Seconsideraqueelnmerodevecesquesedebenejecutarlasaccionesesfijoy
conocidodeantemano.
Abrir billetera

Se repiti
5 veces?

Guardar moneda

Cerrar billetera

Estructuras de control
Decisin

Esimposiblelarepresentacinrealenunalgoritmosecuencialpuro.

Pormediodeunaestructuradedecisinbsicasepuedeoptarentredos
alternativasposibles.
Abrir billetera

Si

Hay
espacio?

Guardar moneda

Cerrar billetera

No

Estructuras de control
Seleccin

Esunaextensindelaestructurabsicadedecisin

Seutilizacuandolasalternativasseanmasdedos.
Leer Edad (Entre 1 y 100)

< 12
(12-20)
(21-65)
>65

ACCIONES < 12

ACCIONES (12-20)

ACCIONES (21-65)

Imprimir Nio

Imprimir Adolescente

Imprimir Adulto

ACCIONES >65

Imprimir Mayor

Estructuras de control
Iteracin

Consisteenrepetirundeterminadobloquedeinstruccionesdesconociendoel
nmeroexactodevecesqueseejecuta

Enlamayoradeloslenguajesexistenlasinstruccionesdecontroliterativas
condicionales.
Abrir billetera

Falso

Hay
espacio?

Verdadero
Guardar moneda

Cerrar billetera

You might also like