Sie sind auf Seite 1von 18

INFORMTICAPARA

INGENIERA
RamiroDiezZaera

3. Introduccinala
programacin
1.
2.
3.
4.
5.

Lenguajesdeprogramacin
Procesodeprogramacin
Flujodecontroldelprograma
Algoritmos
Codificacin,PruebasyDepuracin

1.Lenguajesdeprogramacin
Loslenguajesdeprogramacinson
aplicacionesespecficasdiseadasparacrear
otrasaplicacionesoprogramas.Son
programasparacrearprogramas.
Unlenguajedeprogramacintieneun
conjuntodeinstruccionesbsicas:un
vocabularioyunasintaxisquepermite
elaborarconjuntosdeinstruccionescomo
tareasosubprogramas.
Existenmuchoslenguajesdeprogramacin

Programa
Unprograma esunconjuntodeinstrucciones
convenientementeordenadasescritasenun
lenguajedeprogramacindeterminado,yque
indicanalordenadorqutareasdebeseguir.
Losprogramasescritosenunlenguajede
programacindeterminadodebentraducirse
paraqueseaninterpretables(ointeligibles)porel
ordenador.
Unprogramabienhechodebeser:
Exacto
Claro
Portable

1.Lenguajesdeprogramacin
Loslenguajesdeprogramacinseclasificanen:
Lenguajemquina
Lenguajedebajonivel(ensamblador)
Lenguajesdealtonivel

Lenguajemquina
Esellenguajenativodelasmquinas.
Cadaprocesador(ofamilia)tienesupropio
lenguaje.
EllenguajemquinadelosprocesadoresdeInteles
diferentedellenguajemquinadelosdeMotorola.

Ejemplodeprogramaencdigomquina
Esteesunejemplodeprogramaen
Hexadecimal,quealejecutarloimprimepor
pantallaelmensajeHola,Mundo
1E31C050BA0C01B409CD21C3486F6C
61206D756E646F2121210D0A24

Lenguajeensamblador
Ellenguajeensambladorsurgecomoherramientapara
simplificarlaprogramacinenlenguajemquina.
Sedaalasinstruccionesnombres(eningls)quenos
indicanyrecuerdanlaoperacinqueserealiza.
Ejemplo:ADD,SUB,SHIFT,etc.
Estosnombressellamanmnemnicos ysonms
sencillosderecordarquesusequivalentesencdigo
mquina.
Unprogramaescritoenlenguajeensambladorno
puedeserejecutadodirectamenteporlacomputadora,
sinoquerequiereunafasedetraduccinallenguaje
mquina

Ejemplodeprogramaenensambladorparalos
procesadoresIntel

EsunprogramaenEnsambladordel8086que
imprimeelmensajeHola,Mundoporpantalla
mov ah,9
mov dx,108
int 21
ret
db Hola,Mundo$
mov ax,ac00
int 21

Lenguajeensamblador
Ventajas:
Loslenguajesensambladorespresentanlaventajafrentea
loslenguajesmquinadesufacilidaddecodificacin.

Inconvenientes:
Dependendemuchodelamquina(Nohayportabilidad
delosprogramas).
Laprogramacinenensambladorescompleja.
Elprogramadordebeconocerlaestructuradelamquina,
(susregistros,organizacindelamemoria,etc.)

Lenguajesdealtonivel
Permitenalosprogramadoresescribirsus
programasdeunmodomsfciltodavaquelos
lenguajesensambladores
Elvocabulariodeloslenguajesdealtoniveles
similarallenguajehumano(Read,Write,Open,
etc.)
Losprogramasescritosenunlenguajedealto
nivelsonindependientesdelamquina
Losleguajesmsutilizados:COBOL,FORTRAN,
PASCAL,ADA,C/C++,JAVA,etc.

EjemplodeprogramaenC
ProgramaqueimprimeelmensajeHola,
Mundoporpantallaescritoenunlenguajede
altonivel(lenguajeC):
#include <stdio.h>
void main()
{
printf(Hola, mundo);
}

Lenguajesdealtonivel
Inconvenientes:
Losejecutablessondemasiadosgrandesyrequierenmsmemoria
parasuejecucin.
Eltiempodeejecucindelosprogramasesmuchomayor.
Losprogramasfuentetienenquesertraducidosparalaobtencinde
uncdigoejecutable.

TraductoresdeLenguajes:
Sonprogramasquetraducenunprogramafuenteescritoenun
lenguajedealtonivelacdigomquina.
Hay2tiposdetraductores:
compiladores
interpretes

Compiladores
Uncompiladoresunprogramaquetraduceun
programafuenteescritoenlenguajedealtonivel
acdigomquina.
Lacompilacinsueletenervariasfases:
Procesamientodelcdigofuente:
Eliminacindecomentarios,lneasenblanco,etc.
inclusindelosficheros,etc.

Compilacindelcdigopreprocesado.
Verificarycorregirerroresdecompilacin
Obtencindelprogramaobjeto.

Elmontaje(enlazadoolinkado)
juntaelprogramaobjetoconlasbibliotecasdelsistemapara
obtenerelejecutable

Intrpretes
Unintrpreteesuntraductorquetomaun
archivofuente,traduceyejecutalas
instruccionesunaporuna,hastallegaralfinal.
Uninterpretechequealoserroresenfasede
ejecucin.
Noseproduceningncdigoejecutable.
Unlenguajeconuntraductordetipointrprete
sedenominalenguajeinterpretado.
Haymuchoslenguajesinterpretados:Matlab,
Matemtica,Perl,JAVA,etc.

DiferenciasenteCompiladoreseInterpretes

Unejecutable(unprogramacompilado)
Esunprogramaautocontenido ysepuedeejecutar
porssolo
Solofuncionasobrelaplataforma porlaquehasido
creado(mquinaysusistemaoperativo).

Unprogramainterpretable(comounprograma
deMatlab)
Requiereuninterpreteparasuejecucin(Matlab)
Sonindependientesdelasplataformas.

Lavelocidaddeejecucindeunprograma
compiladoesmsrpido(de10a20veces)que
ladeunarchivointerpretable.

2.Procesodeprogramacin
Laprogramacineselprocesodeconstruccinde
unprogramaparasolucionarunproblema
determinado.
Obtenerlasolucindeunproblemacomprende:
Unanlisisdetalladodelproblema.
Labsquedadeestrategiasqueconduzcanala
solucin
Codificarestainformacinenunlenguajede
programacindeterminado.
Realizarpruebassobreelprograma.

2.Procesodeprogramacin

Proceso de la
Programacin

Etapa 1
de
Programacin

Fase 1:
Definicin del
Problema

Etapa 2
de
Programacin

Fase 2:

Fase 3:

Anlisis
del Problema

Diseo
Algoritmo
Diagrama de Flujo
Prueba de Escritorio

Fase 4

Fase 5

Fase 6

Codificacin

Depuracin

Mantenimiento
del programa

2.Procesodeprogramacin
Fase1:Definicindelproblema
Elproblematienequeestardefinidoycomprendidoclaramente.
Ejemplos:
Determinarsiunestudianteaprobosuspendilaasignaturade
matemticas.Tomarcomobaseelpromediodesus3notas.El
promediodebesermayoroiguala5.
Calcularelpromediodelacotizacindeldlardelosltimos20
das.
LapoblacinestudiantildelaUEMseincrementaarazndeun3%
anual.Silapoblacinactualesde8000alumnos.Calcularla
poblacinquetendrdentrode10aos

2.Procesodeprogramacin
Fase2:Anlisisdelproblema
Consisteenanalizarpuntoporpuntoel
problemaquesepresenta.
Pensarenlasoperacionesquesenecesitan
pararesolverlo,lostiposdedatosquesevana
manejardentrodelprograma.
Sedebenespecificarlosdatosdeentrada,
procesoysalida.

2.Procesodeprogramacin
Fase2:Anlisisdelproblema
ENTRADA
Cal1
Cal2
Cal3

Dolar

Poblacin
estudiantil actual:
PE

PROCESO

P=(Cal1+Cal2+Cal3) / 3

La cotizacin del da: cotiza


Acum=Acum +Cotiza
Incrementar el contador
Calcular el promedio Prom=Acum/20

PE= PE(1+ .03)

SALIDA
Calificacin de :
Aprobado o Suspenso y el
Promedio: P

Imprimir el da y su cotizacin
Promedio de las 20
cotizaciones

Poblacin estudiantil
dentro de 10 aos: PE

2.Procesodeprogramacin
Tiposdedatos

Tipos de Datos

Variables

Constantes

Datos que cambian o


modifican su valor
durante el desarrollo
o ejecucin de un
pograma.

Datos que no cambian


su valor durante el
desarrollo o ejecucin
de un programa

Numricas

Alfanumricas

Representan el valor
numrico especificado.
se puede realizar
operaciones aritmticas.
Ejemplo: 3, 100 ,Pi

Representan los letreros


especificados
no se pueden realizar
operaciones aritmticas
Ejemplo: CASA 10

Numricas
Almacenan datos
numricos: Trabajo,
Contador, .
Ejemplo: SUMA= A+B

Alfanumricas
Almacenan letras,
nmeros y caracteres
especiales.
Ejemplo: A$= Espaa
RESULTADO = Aprobado

2.Procesodeprogramacin
Operadores:
Tipos de Operadores
Permiten realizar operaciones
aritmticas, lgicas o de
comparacin con los diferentes
tipos de datos

Aritmticos:
+-*/

Comparacin
= < > >= <=

Lgicos:
NOT Negacin
AND Conjuncin
OR Disyuncin

2.Procesodeprogramacin
Fase3:Diseo
Consisteendesarrollarelprocedimiento(paso
apaso)pararesolverelproblema
EnestafasesediseaelAlgoritmo,Diagrama
deFlujoysellevaacabolaPrueba

2.Procesodeprogramacin
Algoritmo:
Eselconjuntodepasosordenadosdeforma
lgicaquedescribenlasolucindeunproblema
oparallevaracabounatareadeterminada.
Debencontarconlassiguientescaractersticas:

Tenerprincipioyfin
Contarconunacantidadfinitadepasos
Lospasosdebenestarordenadoslgicamente
Lospasosdebenbuscarsolucionarelproblemade
maneralgica

2.Procesodeprogramacin
TiposdeAlgoritmos:
Secuenciales:Lospasosseejecutandeprincipio
afinsinsaltos,brincosnibifurcaciones.
Condicionales:Setienelanecesidaddetomar
decisionesenalgunosdelospasosdebidoa
condicionesopreguntasquenosllevena
responderverdaderoofalsooseguirporun
caminouotro.
Cclicosoprocesosrepetitivos:Sonaquellos
dondehayaccionesqueserepitenhastaqueuna
condicinsecumpla.

2.Procesodeprogramacin.Algoritmos
Ejemplo1:Promediodelasnotas(condicional)
1. Inicio
2. Pedirnotas
3. Calcularelpromedio
4. Sipromedio esmayoroiguala5,entonces
imprimeAprobado,elpromedio yvaalpaso6
5. Sipromedio noesmayoroiguala5,entonces
imprimeSuspenso,yelPromedio
6. Fin

2.Procesodeprogramacin.Algoritmos
Ejemplo2:CotizacionesdelDlar(Cclico)
1. Inicio
2. Inicializarelcontadordedasa1
3. Preguntarsielcontadordedasesmayora20
4. S:
a)
b)

calcularelpromediodelascotizacionesdelosltimos20das
Imprimirelpromedio,iralpaso6

5. No:
a)
b)
c)
d)

Pedirlacotizacindelsiguienteda
Acumularlacotizacin(S=S+Cotizacin)
Incrementarelcontadordedasenuno(i=i+1)
Iralpaso3

6. Fin

2.Procesodeprogramacin.Algoritmos
Ejemplo3:Poblacinestudiantil(Cclico)
1. Inicio
2. Determinarlapoblacinactual
3. Inicializara1elcontadordeaos
4. Preguntarsielcontadoresmenorque10
5. S:
a) calcularlapoblacinestudiantil
b) incrementaren1elcontadordeaos
c) iralpaso4

6. No:ImprimirlaPoblacinestudiantil
7. Fin

3.Flujodecontroldelprograma
OrganigramasoDiagramasdeflujo
Sondibujosquerepresentandemaneragrfica
enqueconsistenlastareasarealizarycmo
estnorganizadasdichastareas.
Lastareasserepresentanmedianterectngulos,
rombos,romboides,etc.yelflujodetareas
medianteflechasqueenlazanlasdiferentes
tareas.

3.Flujodecontroldelprograma
Inicio o Fin

Indica donde comienza y termina el


programa

Proceso

Indica operaciones aritmticas o


transferencia de datos

Decisin

Comparacin lgica

Datos

Lectura Escritura de datos

Resultado

Indica el resultado final o parcial del


programa

Ciclos

Indica el flujo o direccin del proceso

Flujo

Indica el flujo o direccin del proceso

3.Flujodecontroldelprograma
Ejemplo:Organigramade
unprogramaquecalcula
elpermetroyelreade
unrectngulo:

3.Flujodecontroldelprograma
Ejemplosanteriores
Inicio

Inicio
Inicio

Cal1
Cal2
Cal3

SI
I=1

Prom= Acum/20
I>20

I= I + 1

PE = 8000
Prom

NO
Fin

AO = 1

Cotiza

P=(Cal1+Cal2+Cal3)/3

NO

SI
AO <=10

I, Cotiza

SI
P>=5?

NO
PE

Aprobado
P

Suspenso P

Acum=Acum + Cotiza

Fin
Fin

PE=PE+(PE*.03)
AO=AO + 1

Pseudocdigo
Elpseudocdigoesunatcnicaderepresentacinno
grficadelosalgoritmos.
Permitedescribirunalgoritmomedianteunlenguaje
intermedioentreellenguajenatural(elespaol)yun
lenguajedeprogramacin.
Lasestructurasylasintaxissonmslibresqueenun
lenguajedeprogramacinconcreto.
Esindependientedeloslenguajesdeprogramacin.
Fcildeentender,corregirymodificar.
Seutilizaparabuscarunaprimeraaproximacinal
diseodelosprogramas

3.Flujodecontroldelprograma
Inicio
tarea1
tarea2
...
tarean
Fin

Si(condicin)entonces
acciones
Fin_si

Si(condicin)entonces
acciones1
sino
acciones2
Fin_si

4.Codificacin,PruebasyDepuracin
Pruebas: consistenendarvaloralasvariableseneldiagramade
flujoycomprobarsielresultadoobtenidoeselesperado
Ejemplo Promedio
Prueba de Escritorio
Pedir las calificaciones
Promedio=(Cal1 +Cal2+Cal3)/3
Prueba 1
Promedio = 4.5
4.5 >=5
NO
Imprime Suspenso 4,5
Prueba 2
Promedio = 5
5 >=5
SI
Imprime Aprobado 5
Prueba 3
Promedio = 5.5
5,5>=5
SI
Imprime Aprobado 5.5

Ejemplo Cotizaciones
Prueba de Escritorio
I=1
Prueba 1: 1 > = 20
NO. Pedir la cotizacin (cotiza)
Imprimir I y la cotizacin (cotiza)
Acum=Acum +Cotiza
I=I+1
I=2
2>20
NO. Pedir la cotizacin (cotiza)
Imprimir I y la cotizacin (cotiza)
Acum=Acum +Cotiza
I=I+1
.
.
Prueba 2
I = 21
21>20
SI. Prom= Acum/20
Imprime Prom

Ejemplo Poblacin Estudiantil


Prueba de Escritorio
PE = 8000
AO = 1
Prueba 1: 1<=10
SI.
PE = PE + (PE * .03)
AO = AO + 1
2<=10
SI.
PE = PE + (PE * .03)
AO = AO + 1
.
.
10 = 10
SI.
PE = PE + (PE * .03)
AO = AO + 1
11<=10
NO.
Imprime PE

Procesodeprogramacin
Fase4:Codificacin
Eslatraduccindelalgoritmoaunlenguajede
programacindeacuerdoalasreglasgramaticalesode
sintaxisdelmismo.
Fase5:Depuracin
Enestafaseseverificaqueelprogramahayasido
codificadocorrectamente.Elprogramasedejalibrede
errorestantodesintaxiscomodelgica.
Fase6:Mantenimiento
Elprogramatienequeserrevisadoperidicamentepara
quitaroagregaroperacionesquelohagamsefectivo.

Das könnte Ihnen auch gefallen