Sunteți pe pagina 1din 89

Alexander Oviedo Fadul

"DISEO ESTRUCTURADO DE ALGORITMOS"


ALEXANDER OVIEDO FADUL
Primera Edicin: Sincelejo, Marzo de 2004
Tiraje: 100 ejemplares
Derechos Reservados
Alexander Oviedo Fadul
E-mail: bladealexx@hotmail.com
Sincelejo - Sucre - Colombia
Cartula: Alexander Oviedo Fadul
Diagramacin y Diseo: Avelina Alfaro
Impresin y Encuadernacin :
Imprenor
Impreso en Colombia
Printed in Colombia
Agradecimientos Especiales a:
Jos de Jess Len Pereira
Ingeniero de Sistemas.
Elberto Carrillo Rincn
Ingeniero de Sistemas.
Ricardo Javier Pupo Monterrosa
Especialista en Pedagoga de la Lengua
No est permitida la reproduccin total o parcial de este libro, ni
su tratamiento informtico, ni la transmisin de ninguna forma
o por cualquier medio, ya sea electrnico, mecnico, por fotocopia,
por registro u otros mtodos, sin el permiso previo y por escrito
de los titulares del Copyright.
DERECHOS RESERVADOS. Copyright 2004,
Por Alexander Oviedo Fadul
INTRODUCCION..................................................................... 7
CAPITULO I.
CONCEPTOSBSICOSYMETODOLOGA
PARALASOLUCINDEPROBLEMASPORMEDIO
DECOMPUTADORAS ............................................................... 9
1.1 Objetivoseducacionales ................................................. 9
1.2 Introduccin ................................................................ 11
Delosproblemasalosprogramas ............................... 11
Brevespracticasdeprogramacin................................ 11
1.3 Definicindelenguaje .................................................. 13
1.4 Definicindealgoritmo ................................................. 14
1.5 Algoritmoscotidianos ................................................... 14
1.6 Definicindelenguajesalgortmicos ............................... 14
1.7 Metodologaparalasolucindeproblemaspormedio
decomputadora........................................................... 15
1.7.1 Definicindelproblema................................................. 15
1.7.2 Anlisisdelproblema.................................................... 15
1.7.3 Diseodelalgoritmo..................................................... 15
1.7.4 Codificacin................................................................. 16
1.7.5 Pruebaydepuracin..................................................... 16
1.7.6 Documentacin............................................................ 16
1.7.7 Mantenimiento............................................................. 17
CAPITULO II.
ENTIDADESPRIMITIVASPARAELDESARROLLODE
ALGORITMOS ....................................................................... 19
2.1 Objetivoeducacional .................................................... 19
2.2 Tiposdedatos ............................................................. 21
2.3 Expresiones ................................................................ 21
2.4 Operadoresyoperandos ............................................... 22
2.5 Identificadorescomolocalidadesdememoria................... 26
Cont enido Cont enido
CAPITULO III.
TCNICASDEDISEO ........................................................... 29
3.1 Objetivoeducacional .................................................... 29
3.2 Topdown .................................................................... 31
3.3 Bottomup................................................................... 31
CAPITULO IV.
TCNICASPARALAFORMULACINDEALGORITMOS ................. 33
4.1 Objetivoeducacional .................................................... 33
4.2 Diagramadeflujo ........................................................ 35
4.3 Pseudocodigo .............................................................. 36
4.4 Diagramaestructurado(nassi-schneiderman) .................. 37
CAPITULO V.
ESTRUCTURASALGORITMICAS ............................................... 39
5.1 Objetivoeducacional .................................................... 39
5.2 Secuenciales ............................................................... 41
Asignacin ................................................................ 41
Entrada .................................................................... 41
Salida ...................................................................... 42
5.3 Condicionales .............................................................. 45
Simples .................................................................... 45
Mltiples .................................................................. 46
5.4 Repeticinfilacondicional .............................................. 58
CAPITULO VI.
ARREGLOS ........................................................................... 71
6.1 Objetivoeducacional .................................................... 71
6.2 Vectores ..................................................................... 73
6.3 Matrices...................................................................... 75
CAPITULO VII.
MANEJODEMDULOS ........................................................... 79
7.1 Objetivoeducacional .................................................... 79
7.2 Definicin.................................................................... 81
7.3 Funcin ...................................................................... 81
7.4 Manipulacin ............................................................... 82
APENDICE ............................................................................ 83
BIBLIOGRAFIA ...................................................................... 85
PROYECTOCENTRODEINVESTIGACION .................................. 87
Gracias a t Dios por entregarle la victoria a tu pueblo sobre la
incredulidad del mundo actual. Por nuestra fe firme y activa,
conciliadora de la materia con el espritu.
A los miles de jvenes con espritu sobrenatural que armados
con fe y alegra, se enfrentan a la vida moderna, seguros de
descansar en el seor.
A la fuente del progreso humano, que es la felicidad de Dios y la
victoria sobre las miserias sociales.
ALEXANDER OVIEDO FADUL
Agradecimient os
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
6
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
7
Diseo Estructurado de Algoritmos tiene como propsito bsico
introducir al lector en el maravilloso mundo de la programacin.
Contiene aspectos tericos y tambin prcticos, estos por medio de
problemas, anlisis y solucin de los mismos.
Vale la pena aclarar que el libro utiliza un lenguaje sencillo, por cuanto
asistimos a una gran crisis de claridad, precisin y concisin en el uso
de nuestro idioma y en general en la redaccin de textos tcnicos.
La metodologa a travs de la cual se presenta los captulos es muy
clara, en donde hay una exposicin, explicacin y aplicacin para que
ustedes queridos amigos creen nuevos ejemplos en su entorno y puedan
cumplir con el objetivo propuesto en cada unidad. Cada unidad consta
de varios aspectos tericos que se desarrollan basndose en la solucin
de problemas a travs de varios mtodos.
En este texto hay una clara explosin, los ejercicios y las actividades
que se presentan lo hacen accesible y til para ustedes, quienes desean
adquirir una formacin en el mundo de la informtica.
Los textos se han seleccionado de acuerdo con palpitantes temas de la
informtica y con la representatividad de autores escogidos. Aqu
encuentran los alumnos el abecedario para el desarrollo de algoritmos,
adems, seguro les servir de material de apoyo a profesores y
catedrticos.
Con la temtica espero estimular la creatividad y la investigacin en
cada uno de ustedes.
Int roduccin
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
8
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
9
1.1. OBJETIVO EDUCACIONAL:
Elalumno:
Conocerlaterminologarelacionadaconlosalgoritmos;as
como la importancia de aplicar tcnicas adecuadas de
programacin.
Conocerlametodologaencadaunadesusetapas.
CONCEPTOS BSICOS Y METODOLOGA
PARA LA SOLUCIN DE PROBLEMAS POR
MEDIO DE COMPUTADORAS.
1.1 Objetivoseducacionales
1.2 Introduccin
Delosproblemasalosprogramas
Brevespracticasdeprogramacin
1.3 Definicindelenguaje
1.4 Definicindealgoritmo
1.5 Algoritmoscotidianos
1.6 Definicindelenguajesalgortmicos
1.7 Metodologaparalasolucinde
problemaspormediodecomputadora
1.7.1 Definicindelproblema
1.7.2 Anlisisdelproblema
1.7.3 Diseodelalgoritmo
1.7.4 Codificacin
1.7.5 Pruebaydepuracin
1.7.6 Documentacin
1.7.7 Mantenimiento
El acto de fe es el resultado de un razonamiento elaborado en la inteligencia, pero
transformado en conviccin y compromiso en los dominios de la voluntad, con la
ayuda de la gracia de Dios. Es un acto racional, pero que desborda sus propios limites
en un arrojo de la voluntad que va ms all de los motivos y que en la penumbra se
compromete por amor
(E. NEIRA, S. J., Una lgica del problema de Jess, Madrid 1963, p. 248)
Capt ulo I
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
10
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
11
1.2 INTRODUCCIN
Lacomputadoranosolamenteesunamaquinaquepuederealizarprocesospara
darnosresultados,sinquetengamoslanocinexactadelasoperacionesquerealiza
parallegaraesosresultados.Sinoquetambinpodemosdisearsolucionesala
medida,deproblemasespecficosquesenospresenten.Aun,sienestosseinvolucran
operacionesmatemticascomplejasy/orepetitivas,ounvolumenmuygrandede
datos.
Eldiseodesolucionesalamedidadenuestrosproblemas,requierecomoenotras
disciplinasunametodologaquenosenseedemaneragradual,laformadellegar
aestassoluciones.
Alassolucionescreadasporcomputadoraselesconocecomoprogramasynoson
mas que una serie de operaciones que realiza la computadora para llegar a un
resultado,conungrupodedatosespecficos.Loanteriornosllevaalrazonamiento
dequeunprograma nossirveparasolucionarunproblemaespecifico.
Parapoderrealizarprogramas,ademsdeconocerlametodologamencionada,
tambindebemosconocer,demaneraespecificalasfuncionesquepuederealizarla
computadoraylasformasenquesepuedenmanejarloselementosquehayenla
misma.
Computadora: Esundispositivoelectrnicoutilizadoparaprocesarinformaciny
obtenerresultados.Losdatosylainformacinsepuedenintroducirenlacomputadora
comoentrada(input)yproducirposteriormenteunasalida(output).
CONCEPTOS BSICOS Y METODOLOGA
PARA LA SOLUCIN DE PROBLEMAS
POR MEDIO DE COMPUTADORAS.
Proceso de informacin en la computadora
Dat os de
Ent rada
Dat os de
Salida
Proceso
Organizacin fsica de una computadora
Disposit ivos
de Ent rada
Disposit ivos
de Salida
Memor ia
Unidad de
Cont rol
Unidad
Arit .- Log
CPU
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
12
Dispositivos de Entrada:Comosunombreloindica,sirvenparaintroducirdatos
(informacin)enlacomputadoraparasuproceso.Losdatosseleendelosdispositivos
deentrada(teclado,scanners(digitalizadoresderastreo),mouse(ratn),trackball
(boladeratnestacionario),joystick(palancasdejuego),lpizptico)ysealmacenan
enlamemoriacentralointerna.
Dispositivos de Salida: Muestran los datos procesados que se convierte en
informacinparaelusuarioatravsdemonitores,impresoras.
La Unidad Central de Procesamiento (C.P.U)sedivideendos:
Unidaddecontrol
UnidadAritmtico-Lgica
Unidad de Control:Coordinalasactividadesdelacomputadoraydeterminaque
operacionessedebenrealizaryenqueorden;asmismocontrolatodoelproceso
delacomputadora.
Unidad Aritmtico - Lgica:Realizaoperacionesaritmticasylgicas,talescomo
suma,resta,multiplicacin,divisinycomparaciones.
La Memoriadelacomputadorasedivideendos:
MemoriaCentraloInterna
MemoriaAuxiliaroExterna
Memoria Central (interna):LaCPUutilizalamemoriadelacomputadorapara
guardarinformacinmientrastrabajaconella;mientrasestainformacinpermanezca
enmemoria,lacomputadorapuedeteneraccesoaellaenformadirecta.Estamemoria
construidainternamentesellamamemoriadeaccesoaleatorio(RAM).
Lamemoria internaconstadedosreasdememoria:
La memoria RAM (Randon Access Memory): Recibe el nombre de memoria
principalomemoriadelusuario,enellasealmacenainformacinsolomientrasla
computadora esta encendida. Cuando se apaga o arranca nuevamente la
computadora,lainformacinsepierde,porloquesedicequelamemoriaRAMes
unamemoriavoltil.
LamemoriaROM (Read Only Memory):Esunamemoriaestticaquenopuede
cambiar,lacomputadorapuedeleerlosdatosalmacenadosenlamemoriaROM,
peronosepuedenintroducirdatosenella,ocambiarlosdatosqueahseencuentran;
porloquesedicequeestamemoriaesdesololectura.Losdatosdelamemoria
ROMestngrabadosenformapermanenteysonintroducidosporelfabricantede
lacomputadora.
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
13
Memoria Auxiliar (Externa):Esdondesealmacenantodoslosprogramasodatos
queelusuariodesee.Losdispositivosdealmacenamientoomemoriasauxiliares
(externasosecundarias)mascomnmenteutilizadosson:cintasmagnticasydiscos
magnticos.
1.3 DEFINICIN DE LENGUAJE
Lenguaje:Esunaseriedesmbolosquesirvenparatransmitirunoomasmensajes
entre dos entidades diferentes. A la transmisin de mensajes se le conoce
comnmentecomocomunicacin.
Lacomunicacinesunprocesocomplejoquerequiereunaseriedereglassimples,
peroindispensablesparapodersellevaracabo.Lasdosprincipalessonlassiguientes:
Losmensajesdebencorrerenunsentidoalavez.
Debeforzosamenteexistir4elementos:Emisor,Receptor,Mediode
ComunicacinyMensaje.
Lenguajes de Programacin
Esunconjuntodesmbolos,caracteresyreglas(programas)quelepermitenalas
personascomunicarseconlacomputadora.
Loslenguajesdeprogramacintienenunconjuntodeinstruccionesquenospermiten
realizar operaciones de entrada/salida, calculo, manipulacin de textos, lgica/
comparacinyalmacenamiento/recuperacin.
Loslenguajesdeprogramacinseclasificanen:
Lenguaje Maquina: Son aquellos cuyas instrucciones son directamente
entendiblesporlacomputadoraynonecesitantraduccinposteriorparaquelaCPU
puedacomprenderyejecutarelprograma.Lasinstruccionesenlenguajemaquina
seexpresanentrminosdelaunidaddememoriamaspequeaelbit(dgitobinario
0o1).
Comoejemplo,observelasiguienteinstruccinescritaenlenguajemquina:1001
111110111101
Lenguaje de Bajo Nivel (Ensamblador):Enestelenguajelasinstruccionesse
escribenencdigosalfabticosconocidoscomomnemotcnicosparalasoperaciones
ydireccionessimblicas.
Como ejemplo, observe las siguientes instrucciones escritas en el lenguaje
ensamblador:
MOVAX,A
ADDAX,B
MOVC,AX
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
14
Lenguaje de Alto Nivel:Loslenguajesdeprogramacindealtonivelsonaquellos
enlosquelasinstruccionesosentenciasalacomputadorasonescritasconpalabras
(engeneraleningles),loquefacilitalaescrituraycomprensindelprograma.
Existen muchos lenguajes de alto nivel entre los que se pueden mencionar los
siguientes:C,C++,Java,Pascal,Eiffel,Clipper,Ada,Smalltalk,VisualBasic,etc.
Alprogramaescritoenunlenguajedeprogramacindealtonivelseconocecomo
cdigofuenteoprogramafuente.Porejemplo,aquestaelcdigofuentecompleto
deunprogramasimpleescritoenJava:
importjava.io.*;
publicclassBienvenida
{
publicstaticvoidmain(Stringargs[])throwsIOException
{
System.print.out(BienvenidoaJava);
}
}
1.4 DEFINICIN DE ALGORITMO
La palabra algoritmo se deriva de la traduccin al latn de la palabra rabe
alkhowarizmi,nombredeunmatemticoyastrnomorabequeescribiuntratado
sobremanipulacindenmerosyecuacionesenelsigloIX.
Un algoritmo es una serie de pasos organizados que describeel proceso que se
debeseguir,paradarsolucinaunproblemaespecfico.
1.5 TIPOS DE ALGORITMOS
Cualitativos:Sonaquellosenlosquesedescribenlospasosutilizandopalabras.
Cuantitativos:Sonaquellosenlosqueseutilizanclculosnumricosparadefinir
lospasosdelproceso.
1.6 LENGUAJES ALGORTMICOS
Sonunaseriedesmbolosyreglasqueseutilizanparadescribirdemaneraexplcita
unproceso.
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
15
Tipos de Lenguajes Algortmicos
Grficos:Sonlasrepresentacionesgrficasdelasoperacionesquerealizaun
algoritmo(diagramadeflujo).
No Grficos:Representaenformadescriptivalasoperacionesquedeberealizar
unalgoritmo(pseudocdigo).
1.7 METODOLOGA PARA LA SOLUCIN DE PROBLEMAS POR MEDIO
DE COMPUTADORA
1.7.1 Definicin del Problema
Estafaseestdadaporelenunciadodelproblema,elcualrequiereunadefinicin
clara y precisa. Es importante que se conozca lo que se desea que realice la
computadora;mientrasestonoseconozcadeltodonotienemuchocasocontinuar
conlasiguienteetapa.
1.7.2 Anlisis del Problema
Unavezquesehacomprendidoloquesedeseadelacomputadora,esnecesario
definir:
Losdatosdeentrada.
Cualeslainformacinquesedeseaproducir(salida)
Losmtodosyfrmulasquesenecesitanparaprocesarlosdatos.
Una recomendacin muy practica es el que nos pongamos en el lugar de la
computadorayanalicemosquehaylanecesidadquenosordenenyenquesecuencia,
paraproducirlosresultadosesperados.
1.7.3 Diseo del Algoritmo
Lascaractersticasdeunbuenalgoritmoson:
Tenerunpuntoparticulardeinicio.
Serdefinido,nodebepermitirdoblesinterpretaciones.
Sergeneral,esdecir,soportarlamayoradelasvariantesquese
puedanpresentarenladefinicindelproblema.
Serfinitoentamaoytiempodeejecucin.
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
16
1.7.4 Codificacin
Lacodificacineslaoperacindeescribirlasolucindelproblema(deacuerdoala
lgicadeldiagramadeflujoopseudocdigo),enunaseriedeinstruccionesdetalladas,
enuncdigoreconocibleporlacomputadora,laseriedeinstruccionesdetalladasse
leconocecomocdigofuente,elcualseescribeenunlenguajedeprogramacino
lenguajedealtonivel.
1.7.5 Prueba y Depuracin
Loserroreshumanosdentrodelaprogramacindecomputadorassonmuchosy
aumentan considerablemente con la complejidad del problema. El proceso de
identificaryeliminarerrores,paradarpasoaunasolucinsinerroresselellama
depuracin.
Ladepuracino pruebaresultaunatareatancreativacomoelmismodesarrollo
delasolucin,porellosedebeconsiderarconelmismointersyentusiasmo.
Resultaconvenienteobservarlossiguientesprincipiosalrealizarunadepuracin,ya
quedeestetrabajodependeelxitodenuestrasolucin.
1.7.6 Documentacin
Eslaguaocomunicacinescritaessusvariadasformas,yaseaenenunciados,
procedimientos,dibujosodiagramas.
A menudo un programa escrito por una persona, es usado por otra. Por ello la
documentacinsirveparaayudaracomprenderousarunprogramaoparafacilitar
futurasmodificaciones(mantenimiento).
Ladocumentacinsedivideentrespartes:
DocumentacinInterna
DocumentacinExterna
ManualdelUsuario
Documentacin Interna: Son los comentarios o mensaje que se aaden al
cdigofuenteparahacermasclaroelentendimientodeunproceso.
Documentacin Externa: Se define en un documento escrito los siguientes
puntos:
DescripcindelProblema
NombredelAutor
Algoritmo(diagramadeflujoopseudocdigo)
DiccionariodeDatos
CdigoFuente(programa)
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
17
Manual del Usuario:Describepasoapasolamaneracomofuncionaelprograma,
conelfindequeelusuarioobtengaelresultadodeseado.
1.7.7 Mantenimiento
Sellevaacabodespusdeterminadoelprograma,cuandosedetectaqueesnecesario
haceralgncambio,ajusteocomplementacinalprogramaparaquesigatrabajando
demaneracorrecta.Parapoderrealizarestetrabajoserequierequeelprograma
estecorrectamentedocumentado.
Captulo I
Conceptos Bsicos y Metodologa para la solucin
de problemas por medio de computadoras
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
18
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
19
2.1 OBJETIVO EDUCACIONAL:
Elalumno:
Conocerlasreglasparacambiarformulasmatemticas
aexpresionesvalidasparalacomputadora,ademsde
diferenciarconstanteseidentificadoresytiposdedatos
simples.
ENTIDADES PRIMITIVAS
PARA EL DESARROLLO DE
ALGORITMOS
2.1 Objetivoeducacional
2.1 Tiposdedatos
2.2 Expresiones
2.3 Operadoresyoperandos
2.4 Identificadorescomolocalidades
dememoria
Nuestra fe es nuestra certeza, es nuestra base; es nuestra luz, nuestro consue-
lo, nuestra esperanza; ser maana nuestra felicidad. . .
Nuestra fe es la vida; es la belleza, la fuerza y la luz; es la libertad, el progreso:
es todo lo que puede desear
(PAULO VI, 8-IX-1963)
Capt ulo II
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
20
Captulo I
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
21
2.2 TIPOS DE DATOS
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple
carcter, tal como b, un valor entero tal como 35. El tipo de dato determina la
naturalezadelconjuntodevaloresquepuedetomarunavariable.
Numricos
Simples Lgicos
Alfanumricos(string)
Tiposde
datos Arreglos(Vectores,Matrices)
Estructurados Registros
(Def.porel Archivos
usuario) Apuntadores
Tipos de Datos Simples
Datos Numricos: Permitenrepresentarvaloresescalaresdeformanumrica,
esto incluye a los nmeros enteros y los reales. Este tipo de datos permiten
realizaroperacionesaritmticascomunes.
Datos Lgicos:Sonaquellosquesolopuedentenerdosvalores(ciertoofalso)
yaquerepresentanelresultadodeunacomparacinentreotrosdatos(numricos
oalfanumricos).
Datos Alfanumricos (String):Esunasecuenciadecaracteresalfanumricos
quepermitenrepresentarvaloresidentificablesdeformadescriptiva,estoincluye
nombres de personas, direcciones, etc. Es posible representar nmeros como
alfanumricos,peroestospierdensupropiedadmatemtica,esdecirnoesposible
haceroperacionesconellos.
Ejemplo:
InstitutoTecnolgicodeSistemas
1997
2.3 EXPRESIONES
Lasexpresionessoncombinacionesdeconstantes,variables,smbolosdeoperacin,
parntesisynombresdefuncionesespeciales.
ENTIDADES PRIMITIVAS PARA
EL DESARROLLO DE ALGORITMOS
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
22
Porejemplo:
a+(b+3)/c
Cadaexpresintomaunvalorquesedeterminatomandolosvaloresdelasvariables
yconstantesimplicadasylaejecucindelasoperacionesindicadas.
Unaexpresinconstadeoperadoresyoperandos.Segnseaeltipodedatosque
manipulan,seclasificanlasexpresionesen:
Aritmticas
Relacionales
Lgicas
2.4 Operadores y Operandos
Operadores:Sonelementosquerelacionandeformadiferente,losvaloresde
una o mas variables y/o constantes. Es decir, los operadores nos permiten
manipularvalores.
Aritmticos
TiposdeOperadores Relacinales
Lgicos
Operadores Aritmticos: Los operadores aritmticos permiten la realizacin
deoperacionesmatemticasconlosvalores(variablesyconstantes).
Losoperadoresaritmticospuedenserutilizadoscontiposdedatosenteroso
reales.Siambossonenteros,elresultadoesentero;sialgunodeellosesreal,el
resultadoesreal.
Operando(Operador)Operando
Valor
(constanteovariable)
Operadores Aritmticos
+ Suma
- Resta
* Multiplicacin
/ Divisin
Mod Modulo
(residuodela
divisinentera)
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
23
Ejemplos:
Expresin Resultado
7/2 3.5
12mod7 5
4+2*5 14
Prioridad de los Operadores Aritmticos
Todas las expresiones entre parntesis se evalan primero. Las expresiones con
parntesis anidados se evalan de dentro a fuera, el parntesis ms interno se
evalaprimero.
Dentrodeunamismaexpresinlosoperadoresseevalanenelsiguienteorden.
1. ^(Exponenciacin)
2. *,/,Mod(Multiplicacin,divisin,modulo).
3. +,-(Sumayresta).
Losoperadoresenunamismaexpresinconigualniveldeprioridadseevalande
izquierdaaderecha.
Ejemplos:
4+2*5=14 4+10=14
23*2/5=9.2 46/5=9.2
3+5*(10-(2+4))=23 3+5*(10-6)=3+5*4=3+20=23
3.5+5.09-14.0/40=5.09 3.5+5.09-3.5=8.59-3.5=5.09
2.1*(1.5+3.0*4.1)=28.98 2.1*(1.5+12.3)=2.1*13.8=28.98
Operadores Relacionales:
Seutilizanparaestablecerunarelacinentredosvalores.Comparaestosvalores
entresiyestacomparacinproduceunresultadodecertezaofalsedad(verdadero
ofalso).
Los operadores relacinales comparan valores del mismo tipo (numricos o
cadenas). Tienenelmismoniveldeprioridadensuevaluacin.
Losoperadoresrelacinalestienemenorprioridadquelosaritmticos.
Operadores Relacionales
> Mayorque
< Menorque
>= Mayoroigualque
<= Menoroigualque
<> Diferente
= Igual
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
24
Ejemplos:
Sia=10 b=20 c=30
a+b>c Falso
a-b<c Verdadero
a-b=c Falso
a*b<>c Verdadero
Ejemplonolgico:
T<30 (noeslgicoporquetienediferentesoperandos)
Operadores Lgicos:
Estos operadores se utilizan para establecer relaciones entre valores lgicos.
Estosvalorespuedenserresultadodeunaexpresinrelacional.
Operadores Lgicos
And Y
Or O
Not Negacin
Operador And
Operando1 Operador Operando2 Resultado
T AND T T
T F F
F T F
F F F
Operador Or
Operando1 Operador Operando2 Resultado
T OR T T
T F T
F T T
F F F
Operador Not
Operando Resultado
T F
F T
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
25
Ejemplos:
(a<b)and(b<c)
(10<20)and(20<30)
TandT
T
Prioridad de los Operadores Lgicos
Not
And
Or
Prioridad de los Operadores en General
1.-()
2.-^
3.-*,/,Mod,Not
4.-+,-,And
5.->,<,>=,<=,<>,=,Or
Ejemplos:
a=10 b=12 c=13 d=10
1) ((a>b)or(a<c))and((a=c)or(a>=b))
F T F F
T F
F
2) ((a>=b)or(a<d))and((a>=d)and(c>d))
F F T T
F T
F
3) not(a=c)and(c>b)
F T
T
T
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
26
2.5 IDENTIFICADORES
Losidentificadoresrepresentanlosdatosdeunprograma(constantes,variables,
tipos de datos). Un identificador es una secuencia de caracteres que sirve para
identificarunaposicinenlamemoriadelacomputadora,quenospermiteaccesar
asucontenido.
Ejemplo: Nombre
Num_hrs
Calif2
Reglas para formar un identificador
Debecomenzarconunaletra,maysculasominsculas,ynodebencontener
espaciosenblanco.
Letras,dgitosycaracterescomolasubraya(_)estnpermitidosdespusdel
primercarcter.
Lalongituddeidentificadorespuedeserdehasta8caracteres.
Constantes y Variables
Constante:Unaconstanteesundatonumricooalfanumricoquenocambia
durantelaejecucindelprograma.
Ejemplo:
pi=3.1416
Variable:Esunespacioenlamemoriadelacomputadoraquepermitealmacenar
temporalmenteundatodurantelaejecucindeunproceso,sucontenidopuede
cambiadurantelaejecucindelprograma.Parapoderreconocerunavariableen
lamemoriadelacomputadora,esnecesariodarleunnombreconelcualpodamos
identificarladentrodeunalgoritmo.
Ejemplo:
rea=pi*radio^2
Lasvariablesson:elradio,elreaylaconstateespi
Clasificacin de las Variables
Numricas
PorsuContenido Lgicas
Alfanumricas(String)
Variables
DeTrabajo
PorsuUso Contadores
Acumuladores
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
27
Por su Contenido
Variable Numricas: Sonaquellasenlascualessealmacenanvaloresnumricos,
positivosonegativos,esdeciralmacenannmerosdel0al9,signos(+y-)yel
puntodecimal.
Ejemplo:
iva=0.15 pi=3.1416 costo=2500
Variables Lgicas: Sonaquellasquesolopuedentenerdosvalores(ciertoo
falso)estosrepresentanelresultadodeunacomparacinentreotrosdatos.
Variables Alfanumricas:Estaformadaporcaracteresalfanumricos(letras,
nmerosycaracteresespeciales).
Ejemplo:
letra=a apellido=lopez direccion=Av.Libertad#190
Por su Uso
Variables de Trabajo: Variables que reciben el resultado de una operacin
matemticacompletayqueseusannormalmentedentrodeunprograma.
Ejemplo:
suma=a+b/c
Contadores:Seutilizanparallevarelcontroldelnmerodeocasionesenque
se realiza una operacin o se cumple una condicin. Con los incrementos
generalmentedeunoenuno.
Acumuladores:Formaquetomaunavariableyquesirveparallevarlasuma
acumulativa de una serie de valores que se van leyendo o calculando
progresivamente.
Captulo II
Entidades primitivas para el
Desarrollo de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
28
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
29
Capt ulo III
3.1 OBJETIVO EDUCACIONAL:
Elalumno:
Conocer las caractersticas de las tcnicas de diseo
masempleadas,ascomosuaplicacinacadatipode
problemas.
TECNICAS DEL DISEO
3.1 Objetivoeducacional
3.2 TopDown
3.3 Bottomup
El impulso espiritual que es la fe el granito de mostaza destinado a convertirse
en gigantesco rbol , deber abrirse paso, poco a poco, a travs del alma
intrincada.
Pero el triunfo ser imposible si toda persona no se compromete en este impulso
espiritual, si no se pone en este trabajo de construccin y de perfeccionamiento
(J. MOUROUC, Je Crois en Toi, p. 53 54)
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
30
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
31
3.2 TOP DOWN
Tambinconocidacomodearriba-abajoyconsisteenestablecerunaseriedeniveles
demayoramenorcomplejidad(arriba-abajo)quedensolucinalproblema.Consiste
enefectuarunarelacinentrelasetapasdelaestructuracindeformaqueuna
etapajerrquicaysuinmediatoinferiorserelacionenmedianteentradasysalidas
deinformacin.
Estediseoconsisteenunaseriededescomposicionessucesivasdelproblemainicial,
que recibe el refinamiento progresivo del repertorio de instrucciones que van a
formarpartedelprograma.
LautilizacindelatcnicadediseoTop-Downtienelossiguientesobjetivosbsicos:
Simplificacindelproblemaydelossubprogramasdecadadescomposicin.
Las diferentes partes del problema pueden ser programadas de modo
independienteeinclusopordiferentespersonas.
Elprogramafinalquedaestructuradoenformadebloqueomdulosloque
hacemassencillasulecturaymantenimiento.
3.3 BOTTOM UP
Eldiseoascendenteserefierealaidentificacindeaquellosprocesosquenecesitan
computarizarse con forme vayan apareciendo, su anlisis como sistema y su
codificacin,obien,laadquisicindepaquetesdesoftwareparasatisfacerelproblema
inmediato.
Cuandolaprogramacinserealizainternamenteyhaciendounenfoqueascendente,
esdifcilllegaraintegrarlossubsistemasalgradotaldequeeldesempeoglobal,
sea fluido. Los problemas de integracin entre los subsistemas son sumamente
costososymuchosdeellosnosesolucionanhastaquelaprogramacinalcanzala
fechalimiteparalaintegracintotaldelsistema.Enestafecha,yasecuentacon
muy poco tiempo, presupuesto o paciencia de los usuarios, como para corregir
aquellasdelicadasinterfaces,queenunprincipio,seignoran.
Aunquecadasubsistemapareceofrecerloqueserequiere,cuandosecontemplaal
sistemacomounaentidadglobal,adolecedeciertaslimitacionesporhabertomado
unenfoqueascendente.Unodeellosesladuplicacindeesfuerzosparaaccesarel
softwareymasaunalintroducirlosdatos.Otroes,queseintroducenalsistema
muchosdatoscarentesdevalor.Unterceroytalvezelmasserioinconvenientedel
enfoque ascendente, es que los objetivos globales de la organizacin no fueron
consideradosyenconsecuencianosesatisfacen.
TECNICAS DEL DISEO
Captulo III
Tcnicas del Diseo
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
32
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
33
4.1 OBJETIVO EDUCACIONAL:
Elalumno:
Ser capaz de di ferenci ar l os mtodos de
representacinyformulacindealgoritmos,ascomo
deconocerlascaractersticasmsimportantesde
cadatcnica.
TECNICAS PARA LA
FORMULACION DE ALGORITMOS
4.1 Objetivoeducacional
4.2 Diagramadeflujo
4.3 Pseudocdigo
4.4 Diagramaestructurado
(nassi-schneiderman)
Estar tranquilamente sentado en una barca en tiempo de calma no es una imagen
de la fe.
Pero cuando la barca hace agua por alguna parte, entonces, mantener con
entusiasmo la embarcacin en su ser, con la ayuda de bombas y sin embargo no
buscar entrar al puerto: esta es la imagen de la fe...
Mientras la inteligencia, como pasajero desesperado, tiende los brazos hacia la
tierra firme pero en vano , la fe trabaja con todas sus fuerzas en profundidad:
jubilosamente y triunfalmente, ella salva al alma
(SREN KIERKEGAARD, Post scriptum, p. 149, nota)
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
34
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
35
Lasdosherramientasutilizadascomnmenteparadisearalgoritmosson:
DiagramadeFlujo
Pseudocdigo
4.2 DIAGRAMA DE FLUJO
Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se
puede decir que es la representacin detallada en forma grfica de como deben
realizarselospasosenlacomputadoraparaproducirresultados.
Estarepresentacingrficasedacuandovariossmbolos(queindicandiferentes
procesosenlacomputadora),serelacionanentresimediantelneasqueindicanel
ordenenquesedebenejecutarlosprocesos.
Lossmbolosutilizadoshansidonormalizadosporelinstitutonorteamericanode
normalizacin(ANSI).
SMBOLO DESCRIPCIN
Indicaelinicioyelfinaldenuestrodiagramadeflujo.
Indicalaentradaysalidadedatos.
Smbolodeprocesoynosindicalaasignacindeunvalor
enlamemoriay/olaejecucindeunaoperacin
aritmtica.
Smbolodedecisinindicalarealizacindeuna
comparacindevalores.
Seutilizapararepresentarlossubprogramas.
TECNICAS PARA LA
FORMULACION DE ALGORITMOS
Captulo IV
Tcnicas para la formulacin de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
36
SMBOLO DESCRIPCIN
Conectordentrodepagina.Representalacontinuidad
deldiagramadentrodelamismapagina.
Conectorfueradepagina.Representalacontinuidad
deldiagramaenotrapagina.
Indicalasalidadeinformacinporimpresora.
Indicalasalidadeinformacinenlapantallaomonitor.
Lneasdeflujoodireccin.Indicanlasecuenciaen
queserealizanlasoperaciones.
Recomendaciones para el diseo de Diagramas de Flujo
Usarsolamentelneasdeflujohorizontalesy/overticales.
Evitarelcrucedelneasutilizandolosconectores.
Usarconectoressolocuandoseanecesario.
Nodejarlneasdeflujosinconectar.
Trazarlossmbolosdemaneraquesepuedanleerdearribahaciaabajoyde
izquierdaaderecha.
Todotextoescritodentrodeunsmbolodeberserescritoclaramente,evitando
elusodemuchaspalabras.
4.3 PSEUDOCDIGO
Mezcladeprogramacinylenguaje(espaol,inglesocualquierotroidioma)quese
emplea dentro de la programacin estructurada, para realizar el diseo de un
programa. En esencia, el pseudocdigo se puede definir como un lenguaje de
especificacionesdealgoritmos.
Eslarepresentacindelospasosquedebeseguirunalgoritmoparadarsolucina
unproblemadeterminado.Elpseudocdigoutilizapalabrasqueindicanelprocesoa
realizar.
Ventajas de utilizar un Pseudocdigo a un Diagrama de Flujo
Ocupamenosespacioenunahojadepapel
Permiterepresentarenformafciloperacionesrepetitivascomplejas
Captulo IV
Tcnicas para la formulacin de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
37
Es muy fcil pasar de pseudocdigo a un programa en algn lenguaje de
programacin.
Sisesiguenlasreglassepuedeobservarclaramentelosnivelesquetienecada
operacin.
4.4 DIAGRAMAS ESTRUCTURADOS (Nassi-Schneiderman)
EldiagramaestructuradoN-Stambinconocidocomodiagramadechapinescomo
un diagrama de flujo en el que se omiten las flechas de unin y las cajas son
contiguas.Lasaccionessucesivassepuedenescribirencajassucesivasycomoen
los diagramas de flujo, se pueden escribir diferentes acciones en una caja. Un
algoritmoserepresenteenlasig.forma:
Inicio
Accion1
Accion2
...
Fin
Inicio
Leer
Nombre,Hrs,Precio
Calcular
Salario=Hrs*Precio
Calcular
Imp=Salario*0.15
Calcular
Neto=Salario+Imp
Escribir
Nombre,Imp,SNeto
Fin
Captulo IV
Tcnicas para la formulacin de Algoritmos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
38
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
39
5.1 OBJETIVO EDUCACIONAL:
Elalumno:
Conocer las diferentes estructuras algortmicas
como componentes bsicos de los programas y
aplicaralacombinacindeellasparaeldesarrollo
dealgoritmosmascomplejos.
ESTRUCTURAS ALGORITMICAS
5.1Objetivoeducacional
5.2Secuenciales
Asignacin
Entrada
Salida
5.3Condicionales
Simples
Mltiples
5.4Repeticinfilacondicional
Yo estoy seguro de poseer la verdad porque yo la veo. La fe es cierta, por
consiguiente yo estoy seguro de poseer la verdad; y sin embargo, yo no la veo.
Por qu entonces esta seguridad? Porque yo estoy unido a Alguien que ve.
La fe es cierta, no porque implique la evidencia de una cosa vista, sino porque
ella es la adhesin a una persona que ve!
(J. MOUROUX, Je crois en Toi, Pars 1948, p. 59)
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
40
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
41
Lasestructurasdeoperacindeprogramassonungrupodeformasdetrabajo,que
permiten,mediantelamanipulacindevariables,realizarciertosprocesosespecficos
quenosllevenalasolucindeproblemas.Estasestructurasseclasificandeacuerdo
consucomplejidaden:
-Asignacin
Secuenciales -Entrada
-Salida
-Simples
Estructuras Condicionales
Algortmicas -Mltiples
-Hacerpara
Cclicas -Hacermientras
-Repetirhasta
5.2 ESTRUCTURAS SECUENCIALES
Laestructurasecuencialesaquellaenlaqueunaaccin(instruccin)sigueaotra
ensecuencia.Lastareassesucedendetalmodoquelasalidadeunaeslaentrada
delasiguienteyassucesivamentehastaelfindelproceso.Unaestructurasecuencial
serepresentadelasiguienteforma:
Inicio
Accion1
Accion2
.
.
AccionN
Fin
Asignacin:Laasignacinconsiste,enelpasodevaloresoresultadosauna
zonadelamemoria.Dichazonaserreconocidaconelnombredelavariableque
recibeelvalor.Laasignacinsepuedeclasificardelasiguienteforma:
Simples:Consisteenpasarunvalorconstateaunavariable(a=15)
Contador:Consisteenusarlacomounverificadordelnumerodeveces
queserealizaunproceso(a=a+1)
Acumulador:Consisteenusarlacomounsumadorenunproceso(a=a+b)
ESTRUCTURAS ALGORITMICAS
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
42
De trabajo:Dondepuederecibirelresultadodeunaoperacinmatemtica
queinvolucremuchasvariables(a=c+b*2/4).
Lectura:Lalecturaconsisteenrecibirdesdeundispositivodeentrada(p.ej.el
teclado)unvalor.Estaoperacinserepresentaenunpseudocdigocomosigue:
Leera,b
Dondeaybsonlasvariablesquerecibirnlosvalores
Escritura: Consiste en mandar por un dispositivo de salida (p.ej. monitor o
impresora) un resultado o mensaje. Este proceso se representa en un
pseudocdigocomosigue:
EscribeElresultadoes:,R
DondeElresultadoes:esunmensajequesedeseaaparezcayResuna
variablequecontieneunvalor.
Problemas Secuenciales
1) Supongaqueunindividuodeseainvertirsucapitalenunbancoydeseasaber
cuantodineroganaradespusdeunmessielbancopagaaraznde2%mensual.
Inicio
Leercap_inv
gan=cap_inv*0.02
Imprimirgan
Fin
2) Un vendedor recibe un sueldo base mas un 10% extra por comisin de sus
ventas, el vendedor desea saber cuanto dinero obtendr por concepto de
comisionesporlastresventasquerealizaenelmesyeltotalquerecibirenel
mestomandoencuentasusueldobaseycomisiones.
Inicio
Leersb,v1,v2,v3
tot_vta=v1+v2+v3
com=tot_vta*0.10
tpag=sb+com
Imprimirtpag,com
Fin
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
43
3) Unatiendaofreceundescuentodel15%sobreeltotaldelacomprayuncliente
deseasabercuantodeberpagarfinalmenteporsucompra.
Inicio
Leertc
d=tc*0.15
tp=tc-d
Imprimirtp
Fin
4) UnalumnodeseasabercualsersucalificacinfinalenlamateriadeAlgoritmos.
Dichacalificacinsecomponedelossiguientesporcentajes:
55%delpromediodesustrescalificacionesparciales.
30%delacalificacindelexamenfinal.
15%delacalificacindeuntrabajofinal.
Inicio
Leerc1,c2,c3,ef,tf
prom=(c1+c2+c3)/3
ppar=prom*0.55
pef=ef*0.30
ptf=tf*0.15
cf=ppar+pef+ptf
Imprimircf
Fin
5) Unmaestrodeseasaberqueporcentajedehombresyqueporcentajedemujeres
hayenungrupodeestudiantes.
Inicio
Leernh,nm
ta=nh+nm
ph=nh*100/ta
pm=nm*100/ta
Imprimirph,pm
Fin
6) Realizarunalgoritmoquecalculelaedaddeunapersona.
Inicio
Leerfnac,fact
edad=fact-fnac
Imprimiredad
Fin
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
44
Problemas Propuestos
.
1) Dadaunacantidadenpesos,obtenerlaequivalenciaendlares,asumiendoque
launidadcambiaraesundatodesconocido.
2) Leerunnmeroyescribirelvalorabsolutodelmismo.
3) Lapresin,elvolumenylatemperaturadeunamasadeaireserelacionanpor
laformula:
masa=(presin*volumen)/(0.37*(temperatura+460))
4) Calcular el nmero de pulsaciones que una persona debe tener por cada 10
segundosdeejercicio,silaformulaes:
num.pulsaciones=(220-edad)/10
5) Calcularelnuevosalariodeunobrerosiobtuvounincrementodel25%sobresu
salarioanterior.
6) En un hospital existen tres reas: Ginecologa, Pediatra, Traumatologa. El
presupuestoanualdelhospitalsereparteconformealasig.tabla:
rea Porcentajedelpresupuesto
Ginecologa 40%
Traumatologa 30%
Pediatra 30%
Obtener la cantidad de dinero que recibir cada rea, para cualquier monto
presupuestal.
7) Eldueodeunatiendacompraunartculoaunpreciodeterminado.Obtenerel
precioenquelodebevenderparaobtenerunagananciadel30%.
8) Todos los lunes, mircoles y viernes, una persona corre la misma ruta y
cronometralostiemposobtenidos.Determinareltiempopromedioquelapersona
tardaenrecorrerlarutaenunasemanacualquiera.
9) Trespersonasdecideninvertirsudineroparafundarunaempresa.Cadaunade
ellasinvierteunacantidaddistinta.Obtenerelporcentajequecadaquieninvierte
conrespectoalacantidadtotalinvertida.
10)Unalumnodeseasabercualsersupromediogeneralenlastresmateriasmas
difcilesquecursaycualserelpromedioqueobtendrencadaunadeellas.
Estasmateriasseevalancomosemuestraacontinuacin:
LacalificacindeMatemticasseobtienedelasig.manera:
Examen90%
Promediodetareas10%
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
45
Enestamateriasepidiuntotaldetrestareas.
LacalificacindeFsicaseobtienedelasig.manera:
Examen80%
Promediodetareas20%
Enestamateriasepidiuntotaldedostareas.
LacalificacindeQumicaseobtienedelasig.manera:
Examen85%
Promediodetareas15%
Enestamateriasepidiunpromediodetrestareas.
5.3 ESTRUCTURAS CONDICIONALES
Lasestructurascondicionalescomparanunavariablecontraotro(s)valor(es),para
queenbasealresultadodeestacomparacin,sesigauncursodeaccindentrodel
programa.Cabemencionarquelacomparacinsepuedehacercontraotravariable
ocontraunaconstante,segnsenecesite.Existendostiposbsicos,lassimplesy
lasmltiples.
Simples: LasestructurascondicionalessimplesselesconocecomoTomas
dedecisin.Estastomasdedecisintienenlasiguienteforma:
Si<condicin>entonces
Accin(es)
Fin-si
Dobles:Lasestructurascondicionalesdoblespermitenelegirentredosopciones
oalternativasposiblesenfuncindelcumplimientoonodeunadeterminada
condicin.Serepresentadelasiguienteforma:
Si<condicin>entonces
Accin(es)
sino
Accin(es)
Fin-si
Donde:
Si ................. Indicaelcomandodecomparacin
Condicin ...... Indicalacondicinaevaluar
entonces ....... PrecedealasaccionesarealizarcuandosecumplelaCondicin
accin(es) ..... Sonlasaccionesarealizarcuandosecumpleonolacondicin
sino............. Precedealasaccionesarealizarcuandonosecumplelacondicin
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
46
Dependiendodesilacomparacinesciertaofalsa,sepuedenrealizarunaomas
acciones.
Mltiples:Lasestructurasdecomparacinmltiples,sontomasdedecisin
especializadasquepermitencompararunavariablecontradistintosposibles
resultados,ejecutandoparacadacasounaseriedeinstruccionesespecificas.
Laformacomneslasiguiente:
Si<condicin>entonces
Accin(es)
sino
Si<condicin>entonces
Accin(es)
sino
.
. Variascondiciones
.
fin-si
Fin-si
Forma General
CasosVariable
Op1:Accin(es)
Op2:Accin(es)
.
.
OpN:accin
Fin-casos
Problemas Condicionales
a) Problemas Selectivos Simples
1)Unhombredeseasabercuantodinerosegeneraporconceptodeinteresessobre
lacantidadquetieneeninversinenelbanco.Eldecidirreinvertirlosintereses
siempreycuandoestosexcedana$7000,yenesecasodeseasabercuanto
dinerotendrfinalmenteensucuenta.
Inicio
Leerp_int,cap
int=cap*p_int
siint>7000entonces
capf=cap+int
fin-si
Imprimircapf
Fin
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
47
2) Determinarsiunalumnoapruebaarepruebauncurso,sabiendoqueaprobara
sisupromediodetrescalificacionesesmayoroiguala70;repruebaencaso
contrario.
Inicio
Leercalif1,calif2,calif3
prom=(calif1+calif2+calif3)/3
Siprom>=70entonces
Imprimiralumnoaprobado
sino
Imprimiralumnoreprobado
Fin-si
Fin
3) Enunalmacnsehaceun20%dedescuentoalosclientescuyacomprasupere
los$1000Cualserlacantidadquepagaraunapersonaporsucompra?
Inicio
Leercompra
Sicompra>1000entonces
desc=compra*0.20
sino
desc=0
fin-si
tot_pag=compra-desc
imprimirtot_pag
Fin
4) Un obrero necesita calcular su salario semanal, el cual se obtiene de la sig.
manera:
Sitrabaja40horasomenosselepaga$16porhora
Sitrabajamasde40horasselepaga$16porcadaunadelasprimeras40
horasy$20porcadahoraextra.
Inicio
Leerht
Siht>40entonces
he=ht-40
ss=he*20+40*16
sino
ss=ht*16
Fin-si
Imprimirss
Fin
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
48
5) Un hombre desea saber cuanto dinero se genera por concepto de intereses
sobrelacantidadquetieneeninversinenelbanco.Eldecidirreinvertirlos
interesessiempreycuandoestosexcedana$7000,yenesecasodeseasaber
cuantodinerotendrfinalmenteensucuenta.
Inicio
Leerp_int,cap
int=cap*p_int
siint>7000entonces
capf=cap+int
fin-si
Imprimircapf
Fin
6) Queleadosnmerosylosimprimaenformaascendente
Inicio
Leernum1,num2
Sinum1<num2entonces
Imprimirnum1,num2
sino
Imprimirnum2,num1
fin-si
Fin
7) Unapersonaenferma,quepesa70kg,seencuentraenreposoydeseasaber
cuantas caloras consume su cuerpo durante todo el tiempo que realice una
mismaactividad.Lasactividadesquetienepermitidorealizarsonnicamente
dormiroestarsentadoenreposo.Losdatosquetienesonqueestandodormido
consume1.08calorasporminutoyestandosentadoenreposoconsume1.66
calorasporminuto.
Inicio
Leeract$,tiemp
Siact$=dormidoentonces
cg=1.08*tiemp
sino
cg=1.66*tiemp
fin-si
Imprimircg
Fin
8) Hacerunalgoritmoqueimprimaelnombredeunarticulo,clave,preciooriginal
ysupreciocondescuento.Eldescuentolohaceconbasealaclave,silaclave
es01eldescuentoesdel10%ysilaclavees02eldescuentoendel20%(solo
existendosclaves).
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
49
Inicio
Leernomb,cve,prec_orig
Sicve=01entonces
prec_desc=prec_orig-prec_orig*0.10
sino
prec_desc=prec_orig-prec_orig*0.20
fin-si
Imprimirnomb,cve,prec_orig,prec_desc
Fin
9) Hacerunalgoritmoquecalculeeltotalapagarporlacompradecamisas.Sise
comprantrescamisasomasseaplicaundescuentodel20%sobreeltotalde
lacompraysisonmenosdetrescamisasundescuentodel10%
Inicio
Leernum_camisas,prec
tot_comp=num_camisas*prec
Sinum_camisas>=3entonces
tot_pag=tot_comp-tot_comp*0.20
sino
tot_pag=tot_comp-tot_comp*0.10
fin-si
Imprimirtot_pag
Fin
10)Unaempresaquierehacerunacompradevariaspiezasdelamismaclaseauna
fabricaderefacciones.Laempresa,dependiendodelmontototaldelacompra,
decidirquehacerparapagaralfabricante.
Sielmontototaldelacompraexcedede$500000laempresatendrlacapacidad
deinvertirdesupropiodineroun55%delmontodelacompra,pedirprestado
albancoun30%yelrestolopagarasolicitandouncrditoalfabricante.
Si el monto total de la compra no excede de $500 000 la empresa tendr
capacidaddeinvertirdesupropiodineroun70%yelrestante30%lopagara
solicitandocrditoalfabricante.
Elfabricantecobraporconceptodeinteresesun20%sobrelacantidadquese
lepagueacrdito.
Inicio
Leercostopza,numpza
totcomp=costopza*numpza
Sitotcomp>500000entonces
cantinv=totcomp*0.55
prstamo=totcomp*0.30
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
50
crdito=totcomp*0.15
sino
cantinv=totcomp*0.70
crdito=totcomp*0.30
prstamo=0
fin-si
int=crdito*0.20
Imprimircantinv,prstamo,crdito,int
Fin
Problemas Propuestos
1) Calculareltotalqueunapersonadebepagarenunallantera,sielpreciode
cadallantaesde$800sisecompranmenosde5llantasyde$700sisecompran
5omas.
2) Enunsupermercadosehaceunapromocin,mediantelacualelclienteobtiene
undescuentodependiendodeunnmeroqueseescogealazar.Sielnumero
escogidoesmenorque74eldescuentoesdel15%sobreeltotaldelacompra,
siesmayoroiguala74eldescuentoesdel20%.Obtenercuantodinerosele
descuenta.
3) Calcular el nmero de pulsaciones que debe tener una persona por cada 10
segundos de ejercicio aerbico; la formula que se aplica cuando el sexo es
femeninoes:
num.pulsaciones=(220-edad)/10
ysielsexoesmasculino:
num.pulsaciones=(210-edad)/10
4) Unacompaadesegurosestaabriendoundepto.definanzasyestableciun
programaparacaptarclientes,queconsisteenlosiguiente:Sielmontoporel
queseefectalafianzaesmenorque$50000lacuotaapagarserporel3%
delmonto,ysielmontoesmayorque$50000lacuotaapagarserel2%del
monto.Laafianzadoradeseadeterminarcualserlacuotaquedebepagarun
cliente.
5) Enunaescuelaelcostodelosalumnossedeterminasegnelnmerodematerias
quecursan.Elcostodetodaslasmateriaseselmismo.
Sehaestablecidounprogramaparaestimularalosalumnos,elcualconsisteen
lo siguiente: si el promedio obtenido por un alumno en el ultimo periodo es
mayoroigualque9,seleharundescuentodel30%sobrelacolegiaturayno
se le cobrara IVA; si el promedio obtenido es menor que 9 deber pagar la
colegiaturacompleta,lacualincluyeel10%deIVA.
Obtenercuantodebepagarunalumno.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
51
6) Unaempresadebienesracesofrececasasdeinterssocial,bajolassiguientes
condiciones: Si los ingresos del comprador son menores de $8000 o mas el
engancheserdel15%delcostodelacasayelrestosedistribuirenpagos
mensuales,apagarendiezaos.Silosingresosdelcompradorsonmenosde
$8000 o mas el enganche ser del 30% del costo de la casa y el resto se
distribuirenpagosmensualesapagaren7aos.
Laempresaquiereobtenercuantodebepagaruncompradorporconceptode
engancheycuantoporcadapagoparcial.
7) ElgobiernohaestablecidoelprogramaSAR(SistemadeAhorroparaelRetiro)
queconsisteenquelosdueosdelaempresadebenobligatoriamentedepositar
en una cuenta bancaria un porcentaje del salario de los trabajadores;
adicionalmente los trabajadores pueden solicitar a la empresa que deposite
directamenteunacuotafijaounporcentajedesusalarioenlacuentadelSAR,
lacualleserdescontadadesupago.
Un trabajador que ha decidido aportar a su cuenta del SAR desea saber la
cantidad total de dinero que estar depositado a esa cuenta cada mes, y el
pagomensualquerecibir.
8) Unapersonadeseainiciarunnegocio,paralocualpiensaverificarcuantodinero
leprestaraelbancoporhipotecarsucasa.Tieneunacuentabancaria,perono
quieredisponerdeellaamenosqueelmontoporhipotecarsucasaseamuy
pequeo.Sielmontodelahipotecaesmenorque$1000000entoncesinvertir
el50%delainversintotalyunsocioinvertirelotro50%.Sielmontodela
hipoteca es de $ 1 000 000 o mas, entonces invertir el monto total de la
hipotecayelrestodeldineroquesenecesiteparacubrirlainversintotalse
repartirapartesigualesentreelsocioyel.
9) El gobierno del estado Colombiano desea reforestar un bosque que mide
determinadonumerodehectreas.Silasuperficiedelterrenoexcedea1milln
demetroscuadrados,entoncesdecidirsembrardelasig.manera:
Porcentajedelasuperficiedelbosque Tipoderbol
70% pino
20% oyamel
10% cedro
Silasuperficiedelterrenoesmenoroigualaunmillndemetroscuadrados,
entoncesdecidirsembrardelasig.manera:
Porcentajedelasuperficiedelbosque Tipoderbol
50% pino
30% oyamel
20% cedro
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
52
Elgobiernodeseasaberelnumerodepinos,oyamelesycedrosquetendrque
sembrarenelbosque,sisesabequeen10metroscuadradoscaben8pinos,en
15metroscuadradoscaben15oyamelesyen18metroscuadradoscaben10
cedros.Tambinsesabequeunahectreaequivalea10milmetroscuadrados.
10) Unafbricahasidosometidaaunprogramadecontroldecontaminacinpara
locualseefectaunarevisindelospuntosIMECAgeneradosporlafbrica.El
programadecontroldecontaminacinconsisteenmedirlospuntosIMECAque
emitelafabricaencincodasdeunasemanaysielpromedioessuperioralos
170puntosentoncestendrlasancindepararsuproduccinporunasemana
yunamultadel50%delasgananciasdiariascuandonosedetienelaproduccin.
Si el promedio obtenido de puntos IMECA es de 170 o menor entonces no
tendrnisancinnimulta.Eldueodelafbricadeseasabercuantodinero
perderdespusdesersometidoalarevisin.
11) Una persona se encuentra con un problema de comprar un automvil o un
terreno, los cuales cuestan exactamente lo mismo. Sabe que mientras el
automvilsedevala,conelterrenosucedelocontrario.Estapersonacomprara
elautomvilsialcabodetresaosladevaluacindeestenoesmayorquela
mitaddelincrementodelvalordelterreno.Aydaleaestapersonaadeterminar
sidebeonocomprarelautomvil.
Problemas Selectivos Compuestos
1) Leer2nmeros;sisonigualesquelosmultiplique,sielprimeroesmayorque
elsegundoquelosresteysinoquelossume.
Inicio
Leernum1,num2
sinum1=num2entonces
resul=num1*num2
sino
sinum1>num2entonces
resul=num1-num2
sino
resul=num1+num2
fin-si
fin-si
Fin
2) Leertresnmerosdiferenteseimprimirelnmeromayordelostres.
Inicio
Leernum1,num2,num3
Si(num1>num2)and(num1>num3)entonces
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
53
mayor=num1
sino
Si(num2>num1)and(num2>num3)entonces
mayor=num2
sino
mayor=num3
fin-si
fin-si
Imprimirmayor
Fin
3) Determinarlacantidaddedineroquerecibiruntrabajadorporconceptodelas
horas extras trabajadas en una empresa, sabiendo que cuando las horas de
trabajoexcedende40,elrestoseconsideranhorasextrasyqueestassepagan
aldobledeunahoranormalcuandonoexcedende8;silashorasextrasexceden
de8sepaganlasprimeras8aldobledeloquesepaganlashorasnormalesy
elrestoaltriple.
Inicio
Leerht,pph
Siht<=40entonces
tp=ht*pph
sino
he=ht-40
Sihe<=8entonces
pe=he*pph*2
sino
pd=8*pph*2
pt=(he-8)*pph*3
pe=pd+pt
fin-si
tp=40*pph+pe
fin-si
Imprimirtp
Fin
4) Calcularlautilidadqueuntrabajadorrecibeenelrepartoanualdeutilidadessi
esteseleasignacomounporcentajedesusalariomensualquedependedesu
antigedadenlaempresadeacuerdoconlasig.tabla:
Tiempo Utilidad
Menosde1ao 5%delsalario
1aoomasymenosde2aos 7%delsalario
2aosomasymenosde5aos 10%delsalario
5aosomasymenosde10aos 15%delsalario
10aosomas 20%delsalario
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
54
Inicio
Leersm,antig
Siantig<1entonces
util=sm*0.05
sino
Si(antig>=1)and(antig<2)entonces
util=sm*0.07
sino
Si(antig>=2)and(antig<5)entonces
util=sm*0.10
sino
Si(antig>=5)and(antig<10)entonces
util=sm*0.15
sino
util=sm*0.20
fin-si
fin-si
fin-si
fin-si
Imprimirutil
Fin
5) Enunatiendadedescuentoseefectaunapromocinenlacualsehaceun
descuentosobreelvalordelacompratotalsegnelcolordelabolitaqueel
cliente saque al pagar en caja. Si la bolita es de color blanco no se le har
descuentoalguno,siesverdeseleharun10%dedescuento,siesamarillaun
25%,siesazulun50%ysiesrojaun100%.Determinarlacantidadfinalque
el cliente deber pagar por su compra. se sabe que solo hay bolitas de los
coloresmencionados.
Inicio
leertc,b$
sib$=blancaentonces
d=0
sino
sib$=verdeentonces
d=tc*0.10
sino
sib$=amarillaentonces
d=tc*0.25
sino
sib$=azulentonces
d=tc*0.50
sino
d=tc
fin-si
fin-si
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
55
fin-si
fin-si
Fin
6) ElIMSSrequiereclasificaralaspersonasquesejubilaranenelaode1997.
Existen tres tipos de jubilaciones: por edad, por antigedad joven y por
antigedadadulta.Laspersonasadscritasalajubilacinporedaddebentener
60 aos o mas y una antigedad en su empleo de menos de 25 aos. Las
personasadscritasalajubilacinporantigedadjovendebentenermenosde
60aosyunaantigedadensuempleode25aosomas.
Las personas adscritas a la jubilacin por antigedad adulta deben tener 60
aosomasyunaantigedadensuempleode25aosomas.
Determinarenquetipodejubilacin,quedaraadscritaunapersona.
Inicio
leeredad,ant
siedad>=60andant<25entonces
imprimirlajubilacinesporedad
sino
siedad>=60andant>25entonces
imprimirlajubilacinesporedadadulta
sino
siedad<60andant>25entonces
imprimirlajubilacinesporantigedadjoven
sino
imprimirnotieneporquejubilarse
fin-si
fin-si
fin-si
Fin
Problemas Propuestos
1) Enunafabricadecomputadorasseplaneaofreceralosclientesundescuento
quedependerdelnumerodecomputadorasquecompre.Silascomputadoras
son menos de cinco se les dar un 10% de descuento sobre el total de la
compra;sielnmerodecomputadorasesmayoroigualacincoperomenosde
diezseleotorgaun20%dedescuento;ysison10omasselesdaun40%de
descuento.Elpreciodecadacomputadoraesde$11,000
2) En una llantera se ha establecido una promocin de las llantas marca
Ponchadas,dichapromocinconsisteenlosiguiente:
Sisecompranmenosdecincollantaselprecioesde$300cadauna,de$250si
secomprandecincoa10yde$200sisecompranmsde10.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
56
Obtenerlacantidaddedineroqueunapersonatienequepagarporcadaunade
lasllantasquecompraylaquetienequepagarporeltotaldelacompra.
3) EnunjuegodepreguntasalasqueserespondeSioNoganaquienresponda
correctamentelastrespreguntas.Siserespondemalacualquieradeellasya
nosepreguntalasiguienteyterminaeljuego.Laspreguntasson:
1.ColondescubriAmrica?
2.LaindependenciadeColombiafueenelao1810?
3.TheDoorsfueungrupoderockAmericano?
4) Unproveedordeestreosofreceundescuentodel10%sobreelpreciosinIVA,
dealgnaparatosiestecuesta$2000omas.Adems,independientementede
esto,ofreceun5%dedescuentosilamarcaesNOSY.Determinarcuanto
pagara,conIVAincluido,unclientecualquieraporlacompradesuaparato.
5) Unafruteraofrecelasmanzanascondescuentosegnlasiguientetabla:
NUM.DEKILOSCOMPRADOS %DESCUENTO
0-2 0%
2.01-5 10%
5.01-10 15%
10.01enadelante 20%
Determinarcuantopagaraunapersonaquecompremanzanasesesafrutera.
6) Eldueodeunaempresadeseaplanificarlasdecisionesfinancierasquetomara
enelsiguienteao.Lamaneradeplanificarlasdependedelosiguiente:
Siactualmentesucapitalseencuentraconsaldonegativo,pedirunprstamo
bancarioparaquesunuevosaldoseade$10000.Sisucapitaltieneactualmente
unsaldopositivopedirunprstamobancarioparatenerunnuevosaldode
$20000,perosisucapitaltieneactualmenteunsaldosuperioralos$20000no
pedirningnprstamo.
Posteriormenterepartirsupresupuestodelasiguientemanera.
$5000paraequipodecomputo
$2000paramobiliario
yelrestolamitadserparalacompradeinsumosylaotraparaotorgarincentivos
alpersonal.
Desplegarquecantidadessedestinaranparalacompradeinsumoseincentivos
alpersonaly,encasodequefueranecesario,acuantoascenderalacantidad
quesepediraalbanco.
7) Tomandocomobaselosresultadosobtenidosenunlaboratoriodeanlisisclnicos,
unmedicodeterminasiunapersonatieneanemiaono,locualdependedesu
nivel de hemoglobina en la sangre, de su edad y de su sexo. Si el nivel de
hemoglobinaquetieneunapersonaesmenorqueelrangoquelecorresponde,
sedeterminasuresultadocomopositivoyencasocontrariocomonegativo.La
tablaenlaqueelmedicosebasaparaobtenerelresultadoeslasiguiente:
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
57
EDAD NIVELHEMOGLOBINA
0-1mes 13-26g%
>1y<=6meses 10-18g%
>6y<=12meses 11-15g%
>1y<=5aos 11.5-15g%
>5y<=10aos 12.6-15.5g%
>10y<=15aos 13-15.5g%
mujeres>15aos 12-16g%
hombres>15aos 14-18g%
8) Unainstitucineducativaestableciunprogramaparaestimularalosalumnos
conbuenrendimientoacadmicoyqueconsisteenlosiguiente:
Sielpromedioesde9.5omsyelalumnoesdesecundaria,entonceseste
podrcursar55unidadesyseleharun25%dedescuento.
Si el promedio es mayor o igual a 9 pero menor que 9.5 y el alumno es de
secundaria,entoncesestepodrcursar50unidadesyseleharun10%de
descuento.
Sielpromedioesmayorque7ymenorque9yelalumnoesdesecundaria,
estepodrcursar50unidadesynotendrningndescuento.
Sielpromedioesde7omenor,elnumerodemateriasreprobadasesde0a3
yelalumnoesdesecundaria,entoncespodrcursar45unidadesynotendr
descuento.
Sielpromedioesde7omenor,elnumerodemateriasreprobadasesde4o
masyelalumnoesdesecundaria,entoncespodrcursar40unidadesyno
tendrningndescuento.
Sielpromedioesmayoroiguala9.5yelalumnoesdeprofesional,entonces
podrcursar55unidadesyseleharun20%dedescuento.
Sielpromedioesmenorde9.5yelalumnoesdeprofesional,entoncespodr
cursar55unidadesynotendrdescuento.
Obtenereltotalquetendrquepagarunalumnosilacolegiaturaparaalumnos
deprofesionalesde$300porcadacincounidadesyparaalumnosdepreparatoria
esde$180porcadacincounidades.
9) Queleatresnmerosdiferentesydetermineelnumeromediodelconjuntode
lostresnmeros(elnumeromedioesaquelnumeroquenoesnimayor,ni
menor).
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
58
5.4 ESTRUCTURAS CCLICAS
Sellamanproblemasrepetitivosocclicosaaquellosencuyasolucinesnecesario
utilizarunmismoconjuntodeaccionesquesepuedanejecutarunacantidadespecifica
deveces.Estacantidadpuedeserfija(previamentedeterminadaporelprogramador)
o puede ser variable (estar en funcin de algn dato dentro del programa).Los
ciclosseclasificanen:
Ciclos con un Numero Determinado de Iteraciones (Hacer-Para)
Sonaquellosenqueelnmerodeiteracionesseconoceantesdeejecutarseel
ciclo.Laformadeestaestructuraeslasiguiente:
HacerparaV.C=L.IaL.S
Accion1
Accion2
.
.
.
AccionN
Fin-para
Donde:
V.C Variabledecontroldelciclo
L.I Limiteinferir
L.S Limitesuperior
Enesteciclolavariabledecontroltomaelvalorinicialdelcicloyelcicloserepite
hastaquelavariabledecontrolllegueallimitesuperior.
Problemas ( Hacer para )
1) Calcularelpromediodeunalumnoquetiene7calificacionesenlamateriade
DiseoEstructuradodeAlgoritmos
Inicio
Sum=0
LeerNom
Hacerparac=1a7
Leercalif
Sum=sum+calif
Fin-para
prom=sum/7
Imprimirprom
Fin
VC=LI
vc=vc+1
Cuerpo del ciclo
Vc= LS
V
F
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
59
2) Leer10nmerosyobtenersucuboysucuarta.
Inicio
Hacerparan=1a10
Leernum
cubo=num*num*num
cuarta=cubo*num
Imprimircubo,cuarta
Fin-para
Fin
3) Leer10nmeroseimprimirsolamentelosnmerospositivos
Inicio
Hacerparan=1a10
Leernum
Sinum>0entonces
Imprimirnum
fin-si
Fin-para
Fin
4) Leer20nmeroseimprimircuantossonpositivos,cuantosnegativosycuantos
neutros.
Inicio
cn=0
cp=0
cneg=0
Hacerparax=1a20
Leernum
Sinnum=0entonces
cn=cn+1
sino
Sinum>0entonces
cp=cp+1
sino
cneg=cneg+1
Fin-si
Fin-si
Fin-para
Imprimircn,cp,cneg
Fin
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
60
5) Leer15nmerosnegativosyconvertirlosapositivoseimprimirdichosnmeros.
Inicio
Hacerparax=1a15
Leernum
pos=num*-1
Imprimirnum,pos
Fin-para
Fin
6) Supongaquesetieneunconjuntodecalificacionesdeungrupode40alumnos.
Realizarunalgoritmoparacalcularlacalificacinmediaylacalificacinmas
bajadetodoelgrupo.
Inicio
sum=0
baja=9999
Hacerparaa=1a40
Leercalif
sum=sum+calif
Sicalif<bajaentonces
baja=calif
fin-si
Fin-para
media=sum/2
Imprimirmedia,baja
Fin
7) Calculareimprimirlatablademultiplicardeunnmerocualquiera.Imprimirel
multiplicando,elmultiplicadoryelproducto.
Inicio
Leernum
HacerparaX=1a10
resul=num*x
Imprimirnum,*,X,=,resul
Fin-para
Fin
8) Simularelcomportamientodeunrelojdigital,imprimiendolahora,minutosy
segundosdeundadesdelas0:00:00horashastalas23:59:59horas
Inicio
Hacerparah=1a23
Hacerparam=1a59
Hacerparas=1a59
Imprimirh,m,s
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
61
Fin-para
Fin-para
Fin-para
Fin
Problemas Propuestos
1) Una persona debe realizar un muestreo con 50 personas para determinar el
promediodepesodelosnios,jvenes,adultosyviejosqueexistenensuzona
habitacional.Sedeterminanlascategorasconbaseenlasig,tabla:
CATEGORIA EDAD
Nios 0-12
Jvenes 13-29
Adultos 30-59
Viejos 60enadelante
2) Alcerrarunexpendiodenaranjas,15clientesqueaunnohanpagadorecibirn
un15%dedescuentosicompranmsde10kilos.Determinarcuantopagara
cadaclienteycuantopercibirlatiendaporesascompras.
3) En un centro de verificacin de automviles se desea saber el promedio de
puntoscontaminantesdelosprimeros25automvilesquelleguen.Asimismo
sedeseasaberlospuntoscontaminantesdelcarroquemenoscontaminoydel
quemascontamino.
4) Unentrenadorlehapropuestoaunatletarecorrerunarutadecincokilmetros
durante10das,paradeterminarsiesaptoparalapruebade5Kilmetroso
debebuscarotraespecialidad.Paraconsiderarloaptodebecumplirporlomenos
unadelassiguientescondiciones:
Queenningunadelaspruebashagauntiempomayora16minutos.
Quealmenosenunadelaspruebasrealiceuntiempomayora16minutos.
Quesupromediodetiemposseamenoroiguala15minutos.
5) Un Zologo pretende determinar el porcentaje de animales que hay en las
siguientestrescategorasdeedades:de0a1ao,demsde1aoymenosde
3yde3omsaos.Elzoolgicotodavanoestasegurodelanimalquevaa
estudiar.Sisedecideporelefantessolotomaraunamuestrade20deellos;si
sedecideporlasjirafas,tomara15muestras,ysisonchimpancstomara40.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
62
Ciclos con un Numero Indeterminado de Iteraciones ( Hacer-Mientras,
Repetir-Hasta)
Sonaquellosenqueelnmerodeiteracionesnoseconoceconexactitud,yaque
estadadoenfuncindeundatodentrodelprograma.
Hacer-Mientras: Estaesunaestructuraquerepetirunprocesodurante
Nveces,dondeNpuedeserfijoovariable.Paraesto,lainstruccinse
vale de una condicin que es la que debe cumplirse para que se siga
ejecutando. Cuando la condicin ya no se cumple, entonces ya no se
ejecutaelproceso.Laformadeestaestructuraeslasiguiente:
Hacermientras<condicin>
Accion1
Accion2
.
.
AccionN
Fin-mientras
Problemas (Hacer Mientras)
1) Unacompaadesegurostienecontratadosanvendedores.Cadaunohace
tresventasalasemana.Supolticadepagosesqueunvendedorrecibeun
sueldobase,yun10%extraporcomisionesdesusventas.Elgerentedesu
compaadeseasabercuantodineroobtendrenlasemanacadavendedorpor
conceptodecomisionesporlastresventasrealizadas,ycuantotomandoen
cuentasusueldobaseysuscomisiones.
2) Enunaempresaserequierecalcularelsalariosemanaldecadaunodelosn
obrerosquelaboranenella.Elsalarioseobtienedelasig.forma:
Sielobrerotrabaja40horasomenosselepaga$20porhora
Sitrabajamsde40horasselepaga$20porcadaunadelasprimeras40
horasy$25porcadahoraextra.
3) Determinarcuantoshombresycuantasmujeresseencuentranenungrupode
n personas,suponiendoquelosdatossonextradosalumnoporalumno.
4) ElDepto.deSeguridadPublicayTransitodeSincelejodeseasaber,delosn
autosqueentranalaciudaddeSincelejo,cuantosentranconcalcomanade
cadacolor.Conociendoelltimodgitodelaplacadecadaautomvilsepuede
determinarelcolordelacalcomanautilizandolasig.relacin:
Condicin
Cuerpo del ciclo
SI
NO
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
63
DGITO COLOR
1o2 amarilla
3o4 rosa
5o6 roja
7o8 verde
9o0 azul
5) Obtenerelpromediodecalificacionesdeungrupoden alumnos.
6) Unapersonadeseainvertirsudineroenunbanco,elcualleotorgaun2%de
inters.Cualserlacantidaddedineroqueestapersonatendralcabodeun
aosilagananciadecadamesesreinvertida?.
7) Calcularelpromediodeedadesdehombres,mujeresydetodoungrupode
alumnos.
8) Encontrarelmenorvalordeunconjuntoden nmerosdados.
9) Encontrarelmayorvalordeunconjuntoden nmerosdados.
10) Enunsupermercadouncajerocapturalospreciosdelosartculosquelosclientes
compraneindicaacadaclientecualeselmontodeloquedebenpagar.Alfinal
deldaleindicaasusupervisorcuantofueloquecobroentotalatodoslos
clientesquepasaronporsucaja.
11) Cincomiembrosdeunclubcontralaobesidaddeseansabercuantohanbajado
o subido de peso desde la ultima vez que se reunieron. Para esto se debe
realizarunritualdepesajeendondecadaunosepesaendiezbsculasdistintas
paraastenerelpromediomsexactodesupeso.Siexistediferenciapositiva
entreestepromediodepesoyelpesodelaltimavezquesereunieron,significa
quesubierondepeso.Perosiladiferenciaesnegativa,significaquebajaron.
Loqueelproblemarequiereesqueporcadapersonaseimprimaunletreroque
diga:SUBIOoBAJOylacantidaddekilosquesubiobajodepeso.
12) Sedeseaobtenerelpromediodeg gruposqueestnenunmismoaoescolar;
siendoquecadagrupopuedetenern alumnosquecadaalumnopuedellevarm
materias y que en todas las materias se promedian tres calificaciones para
obtenerelpromediodelamateria.Loquesedeseadesplegareselpromediode
losgrupos,elpromediodecadagrupoyelpromediodecadaalumno.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
64
Repetir-Hasta: Estaesunaestructurasimilarenalgunascaractersticas,
alaanterior.Repiteunprocesounacantidaddeveces,peroadiferencia
del Hacer-Mientras, el Repetir-Hasta lo hace hasta que la condicin se
cumpleynomientras,comoenelHacer-Mientras.Porotraparte,esta
estructurapermiterealizarelprocesocuandomenosunavez,yaquela
condicinseevalaalfinaldelproceso,mientrasqueenelHacer-Mientras
puedeserquenuncallegueaentrarsilacondicinnosecumpledesdeun
principio.Laformadeestaestructuraeslasiguiente:
Repetir
Accion1
Accion2
.
.
AccionN
Hasta<condicin>
Problemas Repetir - Hasta
1) En una tienda de descuento las personas que van a pagar el importe de su
compralleganalacajaysacanunabolitadecolor,quelesdirquedescuento
tendrnsobreeltotaldesucompra.Determinarlacantidadquepagaracada
clientedesdequelatiendaabrehastaquecierra.Sesabequesielcolordela
bolitaesrojaelclienteobtendrun40%dedescuento;siesamarillaun25%y
siesblancanoobtendrdescuento.
2)Enunsupermercadounaamadecasaponeensucarritolosartculosqueva
tomandodelosestantes.Laseoraquiereasegurarsedequeelcajerolecobre
bienloqueellahacomprado,porloquecadavezquetomaunarticuloanotasu
precio junto con la cantidad de artculos iguales que ha tomado y determina
cuantodinerogastaraenesearticulo;aestolesumaloqueiragastandoenlos
demsartculos,hastaquedecidequeyatomotodoloquenecesitaba.Aydale
aestaseoraaobtenereltotaldesuscompras.
3)unteatrootorgadescuentossegnlaedaddelcliente.Determinarlacantidadde
dineroqueelteatrodejadepercibirporcadaunadelascategoras.Tomaren
cuentaquelosniosmenoresde5aosnopuedenentraralteatroyqueexiste
unprecionicoenlosasientos.Losdescuentossehacentomandoencuentael
siguientecuadro:
Edad Descuento
Categora1 5-14 35%
Categora2 15-19 25%
Categora3 20-45 10%
Categora4 46-65 25%
Categora5 66enadelante 35%
Condicin
Cuerpo del ciclo
SI
NO
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
65
Problemas Propuestos
1) Lapresin,volumenytemperaturadeunamasadeaireserelacionanporla
formula:
masa= __presin*volumen.
0.37*(temperatura+460)
Calcular el promedio de masa de aire de los neumticos de n vehculos que
estn en compostura en un servicio de alineacin y balanceo. Los vehculos
puedensermotocicletasoautomviles.
2) Determinarlacantidadsemanaldedineroquerecibircadaunodelosn obreros
deunaempresa.Sesabequecuandolashorasquetrabajounobreroexceden
de40,elrestoseconvierteenhorasextrasquesepaganaldobledeunahora
normal, cuando no exceden de 8; cuando las horas extras exceden de 8 se
paganlasprimeras8aldobledeloquesepagaporunahoranormalyelresto
altriple.
3) Enunagranjaserequieresaberalgunainformacinparadeterminarelprecio
de venta por cada kilo de huevo. Es importante determinar el promedio de
calidad de las n gallinas que hay en la granja. La calidad de cada gallina se
obtienesegnlaformula:
Calidad=pesodelagallina*alturadelagallina
Numerodehuevosquepone
Finalmenteparafijarelpreciodelkilodehuevo,setomacomobaselasiguiente
tabla:
PRECIOTOTALDECALIDAD PESOPORKILODEHUEVO
mayoroigualque15 1.2*promediodecalidad
mayorque8ymenorque15 1.00*promediodecalidad
menoroigualque8 0.80*promediodecalidad
4) EnlaCmaradeDiputadosselevantaunaencuestacontodoslosintegrantes
con el fin de determinar que porcentaje de los n diputados esta a favor del
TratadodeLibreComercio,queporcentajeestaencontrayqueporcentajese
abstienedeopinar.
5) Una persona que va de compras a la tienda Enano, S.A., decide llevar un
controlsobreloquevacomprando,parasaberlacantidaddedineroquetendr
quepagaralllegaralacaja.Latiendatieneunapromocindel20%dedescuento
sobreaquellosartculoscuyaetiquetasearoja.Determinarlacantidaddedinero
queestapersonadeberpagar.
6) UncensadorrecopilaciertosdatosaplicandoencuestasparaelltimoCenso
Nacional de Poblacin y Vivienda. Desea obtener de todas las personas que
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
66
alcance a encuestar en un da, que porcentaje tiene estudios de primaria,
secundaria,carreratcnica,estudiosprofesionalesyestudiosdepostgrado.
7) Un jefe de casilla desea determinar cuantas personas de cada una de las
seccionesquecomponensuzonaasisteneldadelasvotaciones.Lassecciones
son: norte, sur y centro. Tambin desea determinar cual es la seccin con
mayornmerodevotantes.
8) Unnegociodecopiastieneunlmitedeproduccindiariade10000copiassiel
tipodeimpresinesoffsetyde50000sieltipoesestndar.Sihayunasolicitud
deunelempleadotienequeverificarquelascopiaspendienteshastaelmomento
y las copias solicitadas no excedan del limite de produccin. Si el lmite de
produccinseexcedieraeltrabajosolicitadonopodraseraceptado.Elempleado
necesitallevarunbuencontroldelascopiassolicitadashastaelmomentopara
decidirenformarpidasilostrabajosquesesoliciteneneldasedebenaceptar
ono.
9) Calcularlasumasiguiente:
100+98+96+94+...+0enesteorden
10) Leer50calificacionesdeungrupodealumnos.Calculeyescribaelporcentaje
dereprobados.Tomandoencuentaquelacalificacinmnimaaprobatoriaesde
70.
11) Leer por cada alumno de Diseo estructurado de algoritmos su nmero de
controlysucalificacinencadaunadelas5unidadesdelamateria.Alfinalque
escribaelnumerodecontroldelalumnoqueobtuvomayorpromedio.Suponga
quelosalumnostienendiferentespromedios.
12)Elprofesordeunamateriadeseaconocerlacantidaddesusalumnosqueno
tienenderechoalexamendenivelacin.
Diseeunalgoritmoquelealascalificacionesobtenidasenlas5unidadespor
cadaunodelos40alumnosyescribalacantidaddeellosquenotienenderecho
alexamendenivelacin.
13)Leerlos250,000votosotorgadosalos3candidatosagobernadoreimprimirel
nmerodelcandidatoganadorysucantidaddevotos.
14) Suponga que tiene usted una tienda y desea registrar las ventas en su
computadora.Diseeunalgoritmoqueleaporcadacliente,elmontototalde
sucompra.Alfinaldeldaqueescribalacantidadtotaldeventasyelnumero
declientesatendidos.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
67
Problemas Repetitivos Compuestos
1.- Elprofesordeunamateriadeseaconocerlacantidaddesusalumnosqueno
tienenderechoalexamendenivelacin.
Diseeunpseudocdigoquelealascalificacionesobtenidasenlas5unidades
porcadaunodelos40alumnosyescribalacantidaddeellosquenotienen
derechoalexamendenivelacin.
2.- Diseeundiagramaquelealos2,500,000votosotorgadosalos3candidatosa
gobernadoreimprimaelnmerodelcandidatoganadorysucantidaddevotos.
3.- Suponga que tiene usted una tienda y desea registrar las ventas en una
computadora.Diseeunpseudocdigoqueleaporcadacliente,elmontototal
desucompra.Alfinaldeldaescribalacantidadtotaldelasventasyelnmero
declientesatendidos.
4.- Supongaquetieneunatiendaydesearegistrarsusventaspormediodeuna
computadora.Diseeunpseudocdigoqueleaporcadacliente:
a).-elmontodelaventa,
b).-calculeeimprimaelIVA,
c).-calculeeimprimaeltotalapagar,
d).-lealacantidadconquepagaelcliente,
e).-calculeeimprimeelcambio.
Alfinaldeldadeberimprimirlacantidaddedineroquedebehaberenlacaja.
5.- Modificarelpseudocdigoanteriordetalformaquenopermitaquelacantidad
conlaquepagaelclienteseamenoraloquedebepagar.
6.- Setieneunconjuntode1,000tarjetascadaunacontienelainformacindel
censoparaunapersona:
1.-Nmerodecenso,
2.-Sexo
3.-Edad
4.-Estadocivil(a.-soltero,b.Casado,c.Viudo,d.Divorciado)
Diseeunpseudocdigoestructuradoqueleatodosestosdatos,eimprimael
nmerodecensodetodaslasjvenessolterasqueestnentre16y21aos.
7.- Diseeunpseudocdigoqueleaelvalordeunnguloexpresadoenradianesy
calculeeimprimaelvalordelsenodedichongulo.Seleertambinelnmero
detrminosdelaserie.
SEN(X)=X-(

X
3
/3!)+(

X
5
/5!)-(X
7
/7!)+.....
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
68
8.- Un jeep puede viajar 500 km con un tanque lleno de gasolina. Desde una
posicininicial,conteniendontanquesdegasolinaelmismojeeppuedeviajar:
L=500(1+1/3+1/5+...+1/(2n-1))km
Estableciendoeconomadecombustibleenunaruta.Diseeunpseudocdigo
quecalculeelvalordeLdadon.
9.- Seofreceuntrabajoquepagueuncentavoenlaprimerasemana,perodobla
su salario cada semana, es decir, $.01 la primera semana; $.02 la segunda
semana;$0.4latercerasemana;...etc.Hasta$(2
n-1
)/100lan-sima.Disear
elpseudocdigoquedetermine(yescriba)elsalarioporcadasemanayel
salariopagadohastalafechaporespaciode50semanas.
10.-Diseeunpseudocdigoquecalculeeimprimaelpagode102trabajadores
quelaboranenlaCa.GACMAN.Losdatosqueseleernsernlossiguientes:
a)Lashorastrabajadas
b)Elsueldoporhora
c)Eltipodetrabajador(1.-obrero,2.-empleado)
Paracalcularlospagosconsiderarlosiguiente:
-Losobrerospagan10%deimpuesto
-Losempleadospagan10%deimpuesto.
-Lostrabajadores(obrerosyempleados)querecibanunpagomenorde100,000
pesosnopaganimpuesto.
-Alfinalsedeberimprimireltotalapagaralostrabajadoresyalosempleados.
11.-Disearunpseudocdigoqueconviertaunnmerodelsistemadecimala:
a)sistemabinariob)sistemaoctalc)sistemahexadecimal.Segnseelija.
12.-Unobjetoesdejadocaeraunaalturade100mts.Diseeunpseudocdigoque
imprimacadadcimadesegundoladistanciaentreelobjetoyelsueloyalfinal
imprimaeltiemponecesarioendcimasdesegundoparaqueelobjetotoque
elsuelo.
13.- La Ca. Automovilstica Sincelejana, S.A. de C.V premia anualmente a sus
mejoresvendedoresdeacuerdoalasiguientetabla:
Sivendi Comisin
sobreventastotales
1,000,000<=v<3,000,0003%
3,000,000<=v<5,000,0004%
5,000,000<=v<7,000,0005%
7,000,000<=v6%
Disearunpseudocdigoquelealasventasde100vendedoresyqueescribala
comisinanualquelecorrespondaacadavendedor.Suponerquenadievende
msde10,000,000alao.
14.-Disee un pseudocdigo que imprima la fecha en palabras a partir de la
representacinsiguiente:S,DD,MM,AA.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
69
Endonde:
S=Dadelasemana,1a7(1=lunes;2=martes;etc..);
DD=Dadelmes,1a3031,segnelmes.Fijarelmesdefebrerocon28
das;
AA=Dosltimascifrasdelao.
15.-Ungrupode100estudiantespresentanunexamendeFsica.Diseeundiagrama
queleaporcadaestudiantelacalificacinobtenidaycalculeeimprima:
A.- Lacantidaddeestudiantesqueobtuvieronunacalificacinmenora50.
B.- Lacantidaddeestudiantesqueobtuvieronunacalificacinde50oms
peromenorque80.
C.- Lacantidaddeestudiantesqueobtuvieronunacalificacinde70oms
peromenorque80.
D. Lacantidaddeestudiantesqueobtuvieronunacalificacinde80oms.
16.-Un avin que viaja 800 Km/hr. Dispara un proyectil autoimpulsado, en el
momentodeldisparo,elavinhaceungirode90
0
yaceleraa20mtrs/seg
2
.El
proyectilsiguesucurso,acelerandoa10mtrs./seg
2
.
Diseeunpseudocdigoqueescribacadasegundo,ladistanciaqueseparaal
avindelproyectil,hastaqueestna10,000mtrs.oms.
17.-Unapizzera,vendesuspizzasentrestamaos:
pequea(10pulg.Dedimetro);mediana(12pulg.Dedimetro);ygrandes
(16pulg.Dedimetro);Unapizzapuedesersencilla(conslosalsaycarne),
oconingredientesextras,talescomopepinillos,championesocebollas.
Lospropietariosdeseandesarrollarunprogramaquecalculeelpreciodeventa
deunapizza,dndoleeltamaoyelnmerodeingredientesextras.Elprecio
deventaser1.5veceselcostototal,quevienedeterminadoporelreadela
pizza,maselnumerodeingredientes.
Enparticularelcostototalsecalculasumando:
-uncostofijodepreparacin
-uncostobasevariablequeesproporcionalaltamaodelapizza
-uncostoadicionalporcadaingredienteextra.Porsimplicidadsesuponeque
cadaingredienteextratieneelmismocostoporunidadderea.
18.-Disearunpseudocdigoquecalculeelpromedioponderadoparaalumnodel
ITT.Elcalculosehacedelasiguienteforma:
-Semultiplicacadacalificacinporloscrditosdecadamateria
-Elresultadoanteriorsesumaconlosresultadosdetodaslasmaterias,por
separadosesumanloscrditosdecadamateriayfinalmentesedividelasuma
detodaslasmateriasporsusrespectivoscrditos,entrelasumadetodoslos
crditos.
19.-Calcule la suma de los trminos de la serie FIBONACCI cuyos valores se
encuentranentre100y10,000.
20.-Calculeexactamenteelnmerodedasvividosporunapersonahastalafecha.
Contemplarlosaosbisiestos.
Captulo V
Estructuras Algortmicas
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
70
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
71
6.1 OBJETIVO EDUCACIONAL:
Elalumno:
Sercapazdeutilizarlosdatosdetipoarreglopara
plantearlasolucindeproblemasquerequierande
estaestructura.
ARREGLOS
6.1 Objetivoeducacional
6.2 Vectores
6.3 Matrices
6.4 Manejodecadenasdecaracteres
Qu felices son los que creen! Los jvenes que fcilmente pierden
la fe, no saben cuntas angustias y sacrificios cuesta volver a
recuperarla! As exclamaba Paul CLAUDEL quien apreciaba en
su madurez lo que era poseer la fe.
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
72
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
73
UnArregloesunaestructuradedatosquealmacenabajoelmismonombre(variable)
aunacoleccindedatosdelmismotipo.
Losarreglossecaracterizanpor:
Almacenanloselementosenposicionescontiguasdememoria
Tienenunmismonombredevariablequerepresentaatodosloselementos.
Para hacer referencia a esos elementos es necesario utilizar un ndice que
especificaellugarqueocupacadaelementodentrodelarchivo.
Unidimensionales(Vectores)
Tipode
Arreglos
Bidimensionales(Matrices)
6.2 VECTORES
EsunarreglodeNelementosorganizadosenunadimensindondeNrecibeel
nombredelongitudotamaodelvector.Parahacerreferenciaaunelementodel
vectorseusaelnombredelmismo,seguidodelndice(entrecorchetes),elcual
indicaunaposicinenparticulardelvector.Porejemplo:
Vec[x]
Donde:
Vec ............ Nombredelarreglo
x................ Numerodedatosqueconstituyenelarreglo
Representacin grfica de un vector
7
8
9
1
0
Llenado de un Vector
HacerparaI=1a10
Leervec[I]
Fin-para
ARREGLOS
Vec[1]
Vec[2]
Vec[3]
Vec[4]
Captulo VI
Arreglos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
74
HacermientrasI<=10
Leervec[I]
Fin-mientras
I=1
Repetir
Leervec[I]
I=I+1
Hasta-queI>10
Problemas propuestos
1) Calcularelpromediode50valoresalmacenadosenunvector.Determinaradems
cuantos son mayores que el promedio, imprimir el promedio, el nmero de
datosmayoresqueelpromedioyunalistadevaloresmayoresqueelpromedio.
2) LlenardosvectoresAyBde45elementoscadauno,sumarelelementounodel
vector A con el elemento uno del vector B y as sucesivamente hasta 45,
almacenarelresultadoenunvectorC,eimprimirelvectorresultante.
3) Llenarunvectorde20elementos,imprimirlaposicinyelvalordelelemento
mayoralmacenadoenelvector.Supongaquetodosloselementosdelvector
sondiferentes.
4) Almacenar500nmerosenunvector,elevaralcuadradocadavaloralmacenado
enelvector,almacenarelresultadoenotrovector.Imprimirelvectororiginaly
elvectorresultante.
5) Almacenar300nmerosenunvector,imprimircuantossonceros,cuantosson
negativos,cuantospositivos.Imprimirademslasumadelosnegativosyla
sumadelospositivos.
6) Almacenar150nmerosenunvector,almacenarlosenotrovectorenorden
inversoalvectororiginaleimprimirelvectorresultante.
7) SetienenalmacenadosenlamemoriadosvectoresMyNdecienelementos
cadauno.HacerunalgoritmoqueescribalapalabraIgualessiambosvectores
sonigualesyDiferentessinoloson.
Sern iguales cuando en la misma posicin de ambos vectores se tenga el
mismovalorparatodosloselementos.
8) SetieneelvectorAcon100elementosalmacenados.Diseeunalgoritmoque
escribaSIsielvectorestaordenadoascendentementeoNOsielvectorno
estaordenado
9) DiseeunalgoritmoqueleaunnmerocualquieraylobusqueenelvectorX,el
Captulo VI
Arreglos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
75
cualtienealmacenados80elementos.Escribirlaposicindondeseencuentra
almacenado el nmero en el vector o el mensaje NO si no lo encuentra.
Bsquedasecuencial.
10) DiseeunalgoritmoqueleadosvectoresAyBde20elementoscadaunoy
multiplique el primer elemento de A con el ultimo elemento de B y luego el
segundoelementodeAporeldiecinueveavoelementodeByassucesivamente
hastallegaralveinteavoelementodeAporelprimerelementodeB.Elresultado
delamultiplicacinalmacenarloenunvectorC.
11) Disee un algoritmo que almacene en un vector llamado FIB[100] los 100
primerosnmerosdelaseriefibonacci.
6.3 MATRIZ
EsunarreglodeM*NelementosorganizadosendosdimensionesdondeMesel
numerodefilasoreglonesyNelnumerodecolumnas.
Pararepresentarunamatrizsenecesitaunnombredematrizsenecesitaunnombre
dematrizacompaadodedosndices.
Mat[R,C]
DondeRindicaelrenglnyCindicalacolumna,dondeseencuentraalmacenadoel
dato.
Representacin grfica de una matriz
Mat[R,C]
1,1 1,2 1,3 1,4
2,1 2,2 2,3 2.4
3,1 3,2 3,3 3,4
4,1 4,2 4,3 4,4
Llenado de una matriz
Por renglones
HacerparaR=1a5
HacerparaC=1a5
LeerMat[R,C]
Fin-para
Fin-para
Filao
Rengln
[R]
Columna
[C]
Captulo VI
Arreglos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
76
Por columnas
HacerparaC=1a5
HacerparaR=1a5
LeerMat[R,C]
Fin-para
Fin-para
Nota:Parahacerelllenadodeunamatrizsedebendeusardosvariablesparalos
ndicesyseutilizan2ciclosunoparalosrenglonesyotroparalascolumnas;aestos
ciclosselesllamaciclosanidados(unciclodentrodeotrociclo).
Problemas propuestos
1) Hacerunalgoritmoquealmacenenmerosenunamatrizde5*6.Imprimirla
sumadelosnmerosalmacenadosenlamatriz.
2) Hacerunalgoritmoquelleneunamatrizde10*10ydeterminelaposicin
[renglon,columna]delnumeromayoralmacenadoenlamatriz.Losnmeros
sondiferentes.
3) Hacerunalgoritmoquelleneunamatrizde7*7.Calcularlasumadecada
renglnyalmacenarlaenunvector,lasumadecadacolumnayalmacenarlaen
otrovector.
4) Hacerunalgoritmoquelleneunamatrizde20*20.Sumarlascolumnase
imprimirquecolumnatuvolamximasumaylasumadeesacolumna.
5) Hacerunalgoritmoquelleneunamatrizde5*5yquealmaceneladiagonal
principalenunvector.Imprimirelvectorresultante.
6) Hacer un algoritmo que llene una matriz de 10 * 10 y que almacene en la
diagonalprincipalunosyenlasdemsposicionesceros.
7) Hacerunalgoritmoquelleneunamatrizde6*8yquealmacenetodalamatriz
enunvector.Imprimirelvectorresultante.
8) Hacerunalgoritmoquelleneunamatrizde8*8,quealmacenelasumadelos
renglonesylasumadelascolumnasenunvector.Imprimirelvectorresultante.
9) Hacerunalgoritmoquelleneunamatrizde5*6yqueimprimacuantosdelos
nmerosalmacenadossonceros,cuantossonpositivosycuantossonnegativos.
10) Disee un pseudocdigo que escriba el nmero de la hilera cuya suma sea
mayorquelasdemshileras.Supongaquetodaslashilerassumandiferente
cantidad.
Captulo VI
Arreglos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
77
11)Eldueodeunacadenadetiendasdeartculosdeportivosdeseacontrolarsus
ventaspormediodeunacomputadora.Losdatosdeentradason:
a)Elnumerodelatienda(1a50)
b)Unnumeroqueindicaeldeportedelarticulo(1a20)
c)Elcostodelartculo.
Hacerunpseudocdigoqueescribaalfinaldeldalosiguiente
1.Lasventastotaleseneldaparacadatienda
2.Lasventastotalesparacadaunodelosdeportes.
3.Lasventastotalesdetodaslastiendas.
12)EldepartamentodepolicadelaciudaddeSincelejohaacumuladoinformacin
referentealasinfraccionesdeloslmitesdevelocidadduranteundeterminado
periododetiempo.Eldepartamentohadivididolaciudadencuatrocuadrantes
ydesearealizarunaestadsticadelasinfraccionesaloslmitesdevelocidaden
cadaunodeellos.Paracadainfraccinsehapreparadounatarjetaquecontiene
lasiguienteinformacin:
-numeroderegistrodelvehculo;
-cuadranteenelqueseprodujolainfraccin
-limitedevelocidadenmillaporhora
Diseeundiagramaparaproducir2informes;el1o.Quecontieneunalistade
lamultadevelocidadrecolectadas,dondelamultasecalculacomolasumadel
costodelacorte($20,000)mas$1,250porcadamphqueexcedalavelocidad
limite.Prepareunatablaconlossiguientesresultados:
INFRACCIONESALOSLIMITESDEVELOCIDAD
Registrodel Velocidad Velocidad Multa
vehculo registrada(MPH)limite
Este informe debe ser seguido de un segundo en el cual se proporcione un
anlisisdelasinfraccionesporcuadrante.Paracadaunodelos4cuadrantes
mencionados,debedarseelnumerodeinfraccionesylamultapromedio.
13) SetienealmacenadalamatrizM(50,5)laculcontienelainformacinsobre
las calificaciones de la materia de LENGUAJES ALGORITMICOS. Disee un
pseudocdigoqueimprima:
a).-Cantidaddealumnosqueaprobaronlamateria.
B).-Cantidaddealumnosquetienenderechoanivelacin.
C).-El(olos)numero(s)decontroldelo(s)alumno(s)quehaya(n)obtenido
lamximacalificacinfinal.
Captulo VI
Arreglos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
78
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
79
7.1 OBJETIVO EDUCACIONAL:
Elalumno:
Identificaryaplicaralosdatosdetipocadenade
caracteres (string) para la solucin de problemas
detipoadministrativo.
MANEJO DE MDULOS
7.1Objetivoeducacional
7.2Definicin
7.3Funcin
7.4Manipulacin
Habitar el lobo con el cordero; y el tigre estar echado junto al
cabrito; el becerro, el len y la oveja andarn juntos, y un nio
pequeito ser su pastor.
El becerro y el oso irn a los mismos pastos; y estarn echadas en
un mismo sitio sus cras; y el len comer paja como el buey;
Y el nio que an mama estar jugando en el agujero de un spid,
y el recin destetado meter la mano en la madriguera de la vbora.
(ISAIAS, Cap. 11, V. 6 8)
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
80
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
81
7.2 DEFINICIN, FUNCIN Y MANIPULACIN
Unproblemacomplejosepuededividirenpequeossubproblemasmssencillos.
Estos subproblemas se conocen como Mdulos y su complementacin en un
lenguajesellamasubprograma(procedimientosyfunciones).
Unsubprogramarealizalasmismasaccionesqueunprograma,sinembargo,un
subprogramaloutilizasolamenteunprogramaparaunpropsitoespecifico.
Unsubprogramarecibedatosdeunprogramayledevuelveresultados(elprograma
llamaoinvocaalsubprograma,esteejecutaunatareaespecificaydevuelveel
controlalprogramaquelollamo).
Funciones
Tiposde
Mdulos
Procedimientos
Funcin:Unafuncinenmatemticas,esunaoperacinquetomaunomasvalores
(argumentos) y devuelve un resultado (valor de la funcin para los argumentos
dados).Porejemplo:
F(X)=X/(1+X
2
)
Donde:
F............ Nombredelafuncin
X ........... Eselargumento(tambinconocidocomoparmetroformal)
Definicin de funciones: Unadefinicindefuncinsepresentadelasiguiente
manera:
Funcinnombre_funcion(p1,p2,,pn)
Inicio
Bloquedeinstrucciones
Fin
Donde:
Funcin................ Eslapalabraclavequenosindicaunadefinicindefuncin.
Nombre_funcion.... Eselidentificadorconelcualsereconocealafuncin
.......................... enelcuerpodelalgoritmoprincipal.
P1,p2,,pn ........... Eselgrupodeparmetrosquedefinealafuncin.
MANEJO DE MDULOS
Captulo VII
Manejo de Mdulos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
82
Llamado a una funcin
Cuandodefinimosunafuncinsololeindicamosalalgoritmoqueestafuncinexiste,
perounadefinicindefuncinnoimplicalarealizacindelasinstruccionesquela
constituyen.Parahacerusodeunafuncin,elalgoritmoprincipalladebellamar.
Porejemplo:
FuncinF(X)
Inicio
F=X/(1+X^2)
Fin
Inicio
ImprimirEsteeselalgoritmoprincipal
LeerN
R=F(N) llamadodelafuncin
ImprimirElresultadodelafuncines:,R
Fin
Problemas Propuestos
1) Diseeunalgoritmoquelleneunamatrizde10*10ydetermine:
A) Elnumeromayoralmacenadoenlamatriz
B) Elnumeromayoralmacenadoencadarengln
C) Lacolumnaquetuvolamximasuma
D) Elrenglnquetuvolamximasuma
Diseaunafuncinparacadainciso.
2) Diseeunalgoritmoqueleaunnmeroymedianteunafuncinregreseelvalor
de1sielnmeroespositivoy-1siesnegativo).
Captulo VII
Manejo de Mdulos
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
83
NUM. TEMAS SUBTEMAS
1.1 Objetivoseducacionales
1.2 Introduccin
Delosproblemasalos
programas
Brevesprcticasde
programacin
1.3 Definicindelenguaje
1.4 Definicindealgoritmo
1.5 Algoritmoscotidianos
1.6 Definicindelenguajes
algortmicos
1.7 Metodologaparala
solucindeproblemaspor
mediodecomputadora
1.7.1 Definicindelproblema
1.7.2 Anlisisdelproblema
1.7.3 Diseodelalgoritmo
1.7.4Codificacin
1.7.5Pruebaydepuracin
1.7.6Documentacin
1.7.7 Mantenimiento
2.1 Objetivoeducacional
2.2 Tiposdedatosalgoritmos
2.3 Expresiones
2.4 Operadoresyoperandos
2.5 Identificadorescomo
localidadesdememoria
3.1 Objetivoeducacional
3.2 Topdown
3.3 Bottomup
I Conceptos bsi cos y
metodol og a para l a
solucindeproblemaspor
mediodecomputadoras.
II Entidadesprimitivaspara
eldesarrollodealgortimos
III Tcnicasdediseo
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
84
NUM. TEMAS SUBTEMAS
V Estructurasalgortmicas
VI Arreglos
VII Manejodemdulos
4.1 Objetivoeducacional
4.2 Diagramadeflujo
algoritmos
4.3 Pseudocdigo
4.4 Diagramaestructurado
(nassi-schneiderman)
5.1 Objetivoeducacional
5.2 Secuenciales
Asignacin
Entrada
Salida
5.3 Condicionales
Simples
Mltiples
5.4 Repeticinfila
condicional
6.1 Objetivoeducacional
6.2 Vectores
6.3 Matrices
7.1 Objetivoeducacional
7.2 Definicin
7.3 Funcin
7.4 Manipulacin
IV
Tcnicasparala
formulacinde
algoritmos.
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
85
BORES ROSARIO, Rosales Roman; "Computacin. Metodologa, lgica
computacionalyprogramacin"McGrawHill
CARRILLO,RincnElberto;"Introduccinaloscomputadores"EditorialUIS
CORREAURIBE,Guillermo;"Desarrollodealgoritmosysusaplicacionesen
Basic,PascalyC(3.Edicin)"McGrawHill
FREEDMAN,Alan;"Diccionariodecomputacin"McGrawHill
JOYANES,AguilarLuis;"Metodologadelaprogramacin"McGrawHill
JOYANES,AguilarLuis;"Problemasdemetodologadelaprogramacin"Mc
GrawHill
JOYANES,AguilarLuis;"Fundamentosdeprogramacin,algoritmosyestructura
dedatos"McGrawHill
JOYANES, Aguilar Luis, Luis Rodrguez Baena y Matilde Fernndez Azuela;
"Fundamentosdeprogramacin,librodeproblemas"McGrawHill
LEVINE, Guillermo; "Introduccin a la computacin y a la programacin
estructurada"McGrawHill
LOZANO,Letvin;"Diagramacinyprogramacinestructuradaylibre"McGraw
Hill.
LOPEZ,RomanLeobardo;"Programacinestructurada(enfoquealgortmico)"
Computec
PEREIRA,LeonJosdeJess;"ProgramacinenlenguajeturboC"
TREMBLAY,JeanPaulB.,RICHARD,Bunt;"Introduccinalacienciasdelas
computadoras(enfoquealgortmico)"McGrawHill
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
86
DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS DISEO ESTRUCTURADO DE ALGORITMOS
87
El proyecto centro de investigacin, tiene como principal objetivo brindar
acceso a equipos de ultima tecnologa a personas de cualquier nivel
econmico y cognitivo.
El libro que usted acaba de leer adems de brindarle unos conocimientos
bsicos sobre la temtica, el producto de su venta ser utilizado para
la realizacin del proyecto centro de investigacin, cuya visin es poner
al servicio equipos de ltima tecnologa que solamente se pueden
contemplar en revistas y artculos de High Tech.
No quiero que existan Maras que siendo miembros de una universidad
privada de alto prestigio no tienen acceso a los recursos tecnolgicos
del mundo actual. A Maria tambin se le dificulta adquirir un equipo
con las caractersticas requeridas para complementar su conocimiento.
O como se encuentra Juan, que con mucho esfuerzo y dedicacin esta
estudiando una carrera tcnica, tecnolgica, profesional, o simplemente
esta en secundaria; teniendo las mismas necesidades que Maria.
Al igual que Maria y Juan; Pedro aunque no esta estudiando, tambin
tiene los mismos deseos y esperanzas, requiriendo tener las bases
suficientes para enfrentarse a un mundo que cambia da a da.
Este proyecto brindara iguales oportunidades a Maria, Juan y Pedro,
para que ellos puedan realizar con xito las metas propuestas,
mostrando ejemplo a los pases que nos miren con indiferencia y a
todos nuestros hermanitos rebeldes que solo quieren jugar a la guerra.
No importa quienes seamos (Maria, Juan o Pedro), lo que importa es
lo que todos juntos deseamos ser.
ALEXANDER OVIEDO FADUL
DIRECTOR

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