Documente Academic
Documente Profesional
Documente Cultură
Estructuras de control
TabladecontenidoUnidad4
Presentacin de la unidad..................................................................................................................2
4.1. Estructuras selectivas..................................................................................................................4
4.1.1.Estructuraselectivasimple(if)..................................................................................................5
Actividad1.EstructurasdecontrolEjercicioA..............................................................................12
EjercicioB.Estructurasdecontrol....................................................................................................18
4.1.3.Estructuraselectivamltiple(switchcase)............................................................................19
EjercicioC.Estructurasdecontrol....................................................................................................21
Actividad2.Estructurasselectivas....................................................................................................21
4.2.Estructurasrepetitivas...................................................................................................................22
4.2.1.EstructuraMientras(while)....................................................................................................23
EjercicioD.Estructurasdecontrol....................................................................................................29
EjercicioE.Estructurasdecontrol....................................................................................................36
4.2.3.EstructuraHacermientras(dowhile)....................................................................................37
EjercicioF.Estructurasdecontrol....................................................................................................44
Actividad3.Estructurasrepetitivas..................................................................................................45
4.3.Estructurasanidadas......................................................................................................................46
EjercicioG.Estructurasdecontrol....................................................................................................49
Autoevaluacin.....................................................................................................................................50
Evidenciadeaprendizaje:Avancedesolucindelproblemaimplementandolasestructurasde
control...................................................................................................................................................51
Cierredelaunidad................................................................................................................................53
Unidad 4.Estructuras de control
Presentacin de la unidad
Enlasegundaunidad,medianteelmundodelaardilla,aprendistequecualquieralgoritmopuede
serescritoutilizandonicamentetrestiposdeinstrucciones,conocidascomoestructurasde
control,lascualesson:
o Secuenciales(cuandoseejecutanunatrasotra)
o Selectivas(cuandoseejecutandependiendodeunacondicin)
o Repetitivas(queseejecutanvariasvecesenfuncindeunacondicin)
Suobjetivoescontrolarelflujodeejecucindeunprograma,esdecir,elordenenqueseejecutan
lasinstrucciones.
ConsiderandoqueenlaunidadtresdiseastealgoritmossecuencialesyloscodificasteenlenguajeC
paraobtenerelprogramadeseadoquedierasolucinalproblemaencuestin,podemosdecirque
solamentetefaltasabercmofuncionanycmosecodificanenlenguajeClasotrasdosestructuras
parapoderdisearalgoritmosestructurados.Asquesteserjustamenteeltemadeestaunidad,
dondeestudiarsconmsdetallelostiposyfuncionamientodelasestructurasselectivasy
repetitivas,presentadasenlaunidad2.
Parasumejorcomprensin,estaunidadestdivididaendospartes:
Enlaprimerarevisarsalgunosproblemasdondelasolucinimplicatenerqueelegir
elcaminoquesedebeseguirparallegaralresultadodeseado,estosesoluciona
utilizandoestructurasselectivas,porlocualanalizarsamayorprofundidadel
significado(semntica)decadaestructurayverslaformadecodificarla(sintaxis)
enlenguajeC.
Lasegundaparteestdedicadaalasestructurasrepetitivas,paralascualessesigue
lamismaestrategia,verscmosepuedensolucionarproblemasutilizandoeste
tipodeestructurasytambinanalizarssusemnticaysintaxisenlenguajeC.De
estamanera,alfinalizarlaunidadpodrsconstruirprogramasqueincluyan
cualquiertipodeestructuradecontrol.
Unidad 4.Estructuras de control
Enestaunidad:
Construirsexpresionesbooleanas
paramodelarsituacionesreales.
Disearsalgoritmospararesolver
problemasqueimpliquenlatomade
decisiones,utilizandoestructuras
selectivas.
Disearsalgoritmospararesolver
problemasquerealicenunamisma
tareavariasvecesusando
estructurasrepetitivas.
CodificarsenlenguajeCalgoritmos
estructurados.
Utilizarestructurasdecontrolselectivas
yrepetitivaspararesolverproblemas
simplesatravsdeldesarrollode
programasenlenguajeC.
Unidad 4.Estructuras de control
Paradisearprogramascapacesdetomar
decisionesserequieredelasestructurasde
controlselectivas,tambin
llamadascondicionales.stasllevanacabola
funcindecontrolarelflujodelprograma
medianteunacondicinqueserepresenta
utilizandoexpresionesbooleanas,detal
maneraquecuandolacondicinsecumple(es
verdadera)seejecutaunconjuntode
instruccionesdefinidasparaestecasoy,
dependiendodeltipodeestructura,esposible
queseejecuteotroconjuntodeinstrucciones
distintoparaelcasocontrario(cuandola
condicinesfalsa);eincluso,esposible
definirdiferentesconjuntosdeinstrucciones
paravaloresdistintosquepudieratomaruna
variable.Esasque,dependiendodesu
estructura,sehandefinidotres
tipos:simples,doblesymltiples.
Paraelestudiodecadaestructuraselectiva,acontinuacin,sededicantressubsecciones,
unaparacadauna,enlascualesentenderscmofuncionanylaformaenquesecodifican
enlenguaje
Unidad 4.Estructuras de control
4.1.1.Estructuraselectivasimple(if)
Laestructuraselectivaodedecisinsimple,comosunombreloindica,permitedecidirentre
ejecutaronounbloquedeacciones.Parasurepresentacinenpseudocdigo,sepropusolapalabra
reservadaSi,mientrasqueenlenguajeCestaestructurasecodificamediantelasentenciade
controlif,talcomosemuestraenlasiguientetabla.
Tabla4.1:Representacionesdelaestructuracondicionalsimple
a<condicin>puedesercualquierexpresinbooleanaylas<instrucciones>,llamadascuerpodelSi
(if),bienpuedenserunainstruccinounbloquedeellas.
LamaneraenlaqueseejecutaunainstruccinSi(if)eslasiguiente:
Seevalalacondicinqueapareceentreparntesisysiesverdadera(tieneunvalordiferentede
cero)entoncesseejecutanlasinstruccionesdelcuerpodelSi(if),encasodenoserlonoseejecutay
continaelflujodeejecucin.
Parailustrarlasrepresentacionesyelfuncionamientodelaestructuraselectivasimplete
presentamoselsiguienteproblema,conelalgoritmoenpseudocdigo,diagramadeflujoyel
programaenlenguajeC.
Problema4.1.Tipodengulo:Serequiereunprogramaqueleaunvalorentre0y360ydetermine
eltipodengulo,considerandoque:
o nguloagudo:Mayoraceroymenorde90grados
o ngulorecto:Esiguala90grados
o nguloobtuso:Esmayorque90peromenora180grados
o ngulollano:Esiguala180grados
o ngulocncavo:Esmayora180peromenora360grados
Acontinuacinsemuestraelanlisisdelproblema,elalgoritmo,tantoenpseudocdigocomoen
diagramadeflujo;daclicaquparaaccederaellos.
ANALISISDELPROBLEMA:
Unidad 4.Estructuras de control
Unidad4.ESTRUCTURASDECONTROL
Problema4.1.Tipodengulo.
Tablaquemuestraelanlisisdelproblema4.1.Tipodengulo.
Loprimeroqueserequiereesleerelvalordelngulo,posteriormente,verificardequtipoes
paraimprimirelmensajeindicado.
Anlisisdelproblema
Datosdeentada:
ngulo
Salida:
Mensaje1:Agudo
Mensaje2:Recto
Mensaje3:Obtuso
Mensaje4:Llano
Mensaje5:Cncavo
Mtodo:
Realizarcomparacionesutilizando
laestructuradeseleccinsimple
paradeterminareltipodengulo,
serequiereunaporcadatipo
Tabla4.2:Anlisisdelproblema4.1.Tipodengulo
Algoritmoqueresuelveelproblema4.1.Tipodengulo.
Pseudocdigo:
Inicio
Imprimir"Ingreselamedidadelngulo(grados):"
Leerangulo
Siangulo0ORangulo360entonces
ImprimirNotieneclasificacin"
Fin_Si
Siangulo>0ANDangulo<90entonces
Imprimir"Elnguloesagudo"
Fin_Si
Siangulo=90entonces
Unidad 4.Estructuras de control
Imprimir"Elnguloesrecto"
Fin_Si
Siangulo>90ANDangulo<180entonces
ImprimirElnguloesobtuso"
Fin_Si
Siangulo=180entonces
Imprimir"Elnguloesllano"
Fin_Si
Siangulo>180ANDangulo<360entonces
ImprimirElnguloesconcavo"
Fin_Si
Fin
Algoritmo4.1.a:Tipodengulopseudocdigo
Observaque,parahacermslegibleelalgoritmoenpseudocdigo,sehandejadosangraspara
indicarquinstruccionesformanelcuerpodecadaunadelasestructurasSiysehanencerrado
conunrectngulo,estoseadoptarparacualquierbloquedeinstruccionesquecorrespondaal
cuerpodeunaestructura
Diagramadeflujo:
Pseudocdigo:
Unidad 4.Estructuras de control
Algoritmo4.1.b:Tipodengulodiagramadeflujo
Parareafirmarelfuncionamientodelaestructuracondicionalsimpleyverificarqueelalgoritmo
propuestoseacorrecto,enestatablasemuestrasuejecucinpasoapaso,tomandocomodatosde
entrada120grados.
Unidad 4.Estructuras de control
Comopuedesdartecuenta,alejecutarpasoapasoelalgoritmolanicacondicinquesatisfaceel
estadodelamemoriaeslaquesombreamosenlatablaanterior(angulo>90ANDangulo<180),por
lotanto,lanicainstruccinquesetomaencuentaesladelcuerpodelSicorrespondiente.
Elltimopasoeslacodificacin.Observaqueelcuerpodecadaunadelasestructurasconstadeuna
instruccin,porlotantonoesnecesarioencerrarlaentrellaves{}.Daclicaquparaverla
codificacin.
TABLA:
Tabla4.3:Pruebadeescritoriodelalgoritmo4.1
CODIFICACION:
/ * Pr ogr ama: t i poAngul o. c
Unidad 4.Estructuras de control
Acontinuacinsemuestralapantallacorrespondientealaejecucindelprogramaanterior
introduciendoelmismonguloqueseutilizenlapruebadeescritorio.
Figura4.1:EjecucindelprogramatipoAngulo.c
Unidad 4.Estructuras de control
Actividad1.EstructurasdecontrolEjercicioA
Presentacin:
AligualqueenlaUnidadanterior,enestaocasincontarsconunespacio,basededatos,para
publicarycomentartusactividades,lascualesteservirndeprcticaparamejorareneldesarrollo
deprogramasenC.RecuerdaqueestasactividadesnonecesitasenviarlasatuFacilitador(a),peros
debessubirlasalabasededatosycomentarlosaportesdetuscompaeros(as).
Paraapoyarteenlarealizacindeestasactividades,sehahabilitadolaBasededatosEstructurasde
control,enlaquepodrsingresartodotipodecomentariosrelacionadosconellas.Esimportante
queparticipesnoslocuandotengasdudassobrealgosinotambinparaapoyaratus
compaeros(as)encasodequetenganunadudaopreguntaquetpuedasresponder.
Estaactividadestintegradapor7ejerciciosquerealizarsalolargodetodalaunidad,los
identificarsporqueestnreconocidosporletras
1. Realizaunapruebadeescritoriodelalgoritmoqueresuelveelproblema4.1presentadoen
laseccinanterior(algoritmo4.1.ayalgoritmo4.1.b).Consideraqueelvalordelnguloes
98grados.
2. Posteriormenteescribe,compilayejecutaelprogramatipoAngulo.c(programa4.1)enla
computadoraconelmismovalordelngulo.
3. Compartetuexperienciaenlabasededatos.
Paraingresarlaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1.Estructurasdecontrol.
Unidad 4.Estructuras de control
4.1.2.Estructuraselectivadoble(ifelse)
Lasestructurasselectivasdoblesnospermitenelegirunadedosposiblesaccionesarealizar
dependiendodelacondicin.EnpseudocdigoseproponeusarlaspalabrasreservadasSiSinoyen
Csecodificanmediantelasentenciaifelse,talcomosemuestraenlasiguientetabla:
Tabla4.4:Representacionesdelaestructuracondicionaldoble
Aligualqueenlaestructuraselectivasimple,la<condicin>representaunaexpresinbooleanay,
las<instruccionesV>e<instruccionesF>puedeserunaovarias,alasprimerasselesllamacuerpo
delSi(if)ylassegundassonelcuerpodelSino(else).
Estaestructuradecontrolejecutaslounodelosdoscuerposdeinstrucciones:cuandolacondicin
esverdaderaseejecutanlas<instruccionesV>yencasocontrarioseejecutanlas<instruccionesF>.
Eneldesarrollodelsiguienteproblemaseejemplificanlasrepresentacionesyelfuncionamientode
estaestructura.
Problema4.2:Serequiereunprogramaquesimuleelclculoymuestrelasracesrealesparauna
ecuacindesegundogradodelaforma:
Pararesolveresteproblemaseutilizarlafrmulageneral:
Larepresentacindelalgoritmoenpseudocdigoydiagramadeflujoeslaquesemuestraaqu.
ANALISISDELPROBLEMA:
Losdatosquerequerimossonloscoeficientesdelaecuacin(a,byc)yelresultadodeseado
sernlasraces.Tambinsedebeconsiderarqueparaqueunpolinomiotengaracesrealesse
debecumplirlacondicin:
Delocontrarioelresultadodelarazcuadradaseraunnmeroimaginario.Paraestosepropone
Unid
unaestru
Algoritmo
Pseudoc
Inicio
Imprimir
Leera,b,
det
Si(
x1
x2
Imprimi
Sino
Imprimi
Fin_SiSin
Fin
Algoritmo
Diagrama
dad 4.E
cturaselectiv
oqueresuelve
digo:
Ingresalosc
c
)entonces
rLasracess
rNoexisten
o
o4.2.a:Ecuac
deflujo:
Estruc
vadoblepara
eelproblema
coeficientesa
s
son:,x1,x2
nracesreales
cindesegun
turas d
verificarque
a4.2.
,byc:
2
s
dogradops
de con
eexistanrace
seudocdigo
ntrol
esreales.
Algoritmo4.2.b:Ecuacindesegundogradodiagramadeflujo
Observaqueenelalgoritmoseutilizalavariableauxiliardet,laraznesporqueelclculodel
determinante(b
2
4ac)seempleaenmsdeunlugardelalgoritmo,porlotanto,serecomienda
guardaresteresultadoparanovolverloacalcular.
Paravalidarelalgoritmo,veamossuejecucinpasoapasoenlapruebadeescritorioconel
polinomio
ParalacodificacinenlenguajeCsedebenotarqueelcuerpodelSi(if)tieneunbloquedetres
instrucciones,porloquedebernirencerradasentrellaves{},encambioelcuerpodelSino
(else)slotieneunainstruccinporloquenosonnecesarias.
Laejecucindelprogramaconlosmismosdatosdeentradadelapruebadeescritorioesla
siguiente.
Unidad 4.Estructuras de control
Figura4.2:Ejecucindelprogramaecuacion.c
PRUEBADEESCRITORIO
Tabla4.5:Pruebadeescritoriodelalgoritmo4.
CODIFICACIONENLENGUAJEC++
/ * Pr ogr ama: ecuaci on. c
Descr i pci n: Sol uci n de ecuaci ones de segundo gr ado
ut i l i zando
*/
/ * Bi bl i ot ecas */
#i ncl ude<st di o. h> / * Bi bl i ot eca de ent r ada y sal i da est ndar
*/
#i ncl ude<st dl i b. h> / * Bi bl i ot eca par a l as f unci ones del
si st ema */
#i ncl ude<mat h. h> / * Bi bl i ot eca par a ut i l i zar f unci ones
Unidad 4.Estructuras de control
EjercicioB.Estructurasdecontrol
1. Realizaunapruebadeescritoriodelalgoritmoqueresuelveelproblema4.2que
acabamosdepresentar,considerandolaecuacin .
2. Enseguidaescribeycompilaelprogramaecuacion.c(programa4.2)enla
computadorayejectaloconlamismaecuacinparaverificarlosresultados.
3. Compartetuexperienciaenlabasededatos.
Paraingresaralaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1.Estructurasdecontrol.
Unidad 4.Estructuras de control
4.1.3.Estructuraselectivamltiple(switchcase)
Lasestructurasselectivasmltiplespermitenescogerunodevarioscaminosposibles.Parala
estructuracondicionalmltipleseproponenlaspalabrasclaveSeleccionarcasoenpseudocdigo,
mismaqueseimplementaenlenguajeCutilizandolaspalabrasreservadasswitchcase.Esta
secuenciaseutilizacuandoexistenmltiplesposibilidadesparalaevaluacindeunaexpresin
matemtica(generalmenteunavariable),puesdeacuerdoalvalorquetomelaexpresinserel
conjuntodeinstruccionesqueseejecute.
Daclicaquparaobservarlasrepresentacionesdelaestructuraselectivamltiple.
REPRESENTACIONDEESTRUCTURAS:
Tabla4.6:Representacionesdelaestructuracondicionalmltiple
Pseudocdigo Lenguaje
Casospara<expresin>
caso<valor1>:
<instruccionesCaso1>
caso<valor2>:
<instruccionesCaso2>
otroscasos:
<instruccionesOtros>
Fin_Casos
switch (<expresin>)
{
case<valor1>:
<instrucciones1>;
break;
case<valor2>:
<instrucciones2>;
break;
default:
<instruccionesOtras>
}
Diagramadeflujo:
Enestecasola<expresin>noesbooleanasinoaritmticaydetipoentero,ascadacaso
correspondeaunvalorquepuederesultardesuevaluacin.Deestaforma,elflujodecontrolque
siguelaejecucindeunainstruccinSeleccionarcasos(switchcase)eselsiguiente:seevala
la<expresin>ysielvalorcorrespondealvalordeuncaso,esdeciraun<valor
i
>,seejecutael
bloquede<instrucciones
i
>hastaencontrarelfinaldelainstruccin,queenelcasodeCest
representadoporlapalabrareservadabreak,terminandoahlaejecucindelainstruccin.Cuando
elvalornocorrespondeaningncasoseejecutaelbloquedeinstruccionescorrespondienteaotros
casos(default).Elconjuntodetodosloscasos,incluyendoeldefault,conformanelcuerpodela
estructuraSeleccionarcasos(switchcase).
VERELARCHIVOAccesible_OA1_U4_FPR(Anexoalfinaldeldocumento).
Alolargodeestetemahasestudiadolostrestiposdeestructurasselectivasypormediodelos
ejemplospresentadostehasdadocuentadelaimportanciayutilidaddeestasestructuras,sinlas
cualesseraimposibleconstruirprogramasqueimplicaranlatomadedecisiones.
Sinembargo,todavaexistenproblemasquerequierendeotrotipodeestructurasquepermitan
repetirunatareaunnmerodeterminadodeveces,lasiguienteseccinestdedicadaaestetema.
Unidad 4.Estructuras de control
EjercicioC.Estructurasdecontrol
1. Realizaunapruebadeescritoriodelalgoritmoqueresuelveelproblemapresentadoenel
subtema4.1.3.considerandoqueelvalordeentradaesiguala10.
2. Despusescribeycompilaelprogramacalificacion.cenlacomputadora;ejectaloconel
mismovalorparacompararelresultado.
3. Finalmente,reflexionasiesposibleresolverelproblemaplanteadoutilizandoestructuras
selectivassimplesodobleseingresatucomentarioenlabasededatos.
Paraingresaralaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1.Estructurasdecontrol.
Actividad2.Estructurasselectivas
RealizaunprogramaenCqueresuelvaelproblemaqueteproporcionartuFacilitador(a).Utilizalas
estructurasselectivasqueconsideresnecesarias.
1. Analizaelproblemayrealizalasolucinenpseudocdigoodiagramadeflujo,gurdalocon
elnombreFPR_U4_A2_XXYZ,laextensindelarchivopuedesercualquieradelassiguientes,
dependiendodelprogramaquehayasdecididoutilizar:.doc,.ppt,.pdf,.jpg,.bmp,.gif,.vsd.
2. Realizaunapruebadeescritorioyposteriormente,sistahasidosatisfactoria,escribeel
programaenlenguajeC.
3. Compilayejecutaelprogramaparaverificarquefuncionacorrectamente.
o Encasodequeelcompiladorenveerrores,verificadndeestelerrorycorrigelo.
4. GurdaloconelnombreFPR_U4_A2_XXYZ.cyagregalossiguientesarchivosaunacarpeta
comprimidallamadaFPR_U4_A2_XXYZ.zip:
o Anlisisdelproblemayalgoritmoenpseudocdigoodiagramadeflujo
o Programafuente(.c)
o Archivoejecutable(.exe)
5. EnvalacarpetacomprimidaatuFacilitador(a)mediantelaSeccindetareas.
Nota:PuedesingresaralabasededatosEstructurasdecontrolparacompartirtusdudasopara
ayudararesolverlasdetuscompaeros(as).Recuerdaquesitienesalgunadificultadenelproceso
dedesarrollodetuprogramaalguiendelgrupotepodraayudararesolverla,opuedeserquet
sepaslasolucinalproblemadeotro(a)compaero(a).
Paraenviartudocumento:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenlaActividad2.Estructurasselectivas.
4.2.Estructurasrepetitivas
Enlamayorpartedeldiseoo
implementacindelassolucionesquese
planteaaproblemasespecficosnos
encontramosconinstruccionesquedeben
ejecutarseunnmerodeterminadode
veces,sihacemosunanlisisms
profundodeestassituaciones,enla
mayorasdelasocasionesnos
encontramosquelasinstruccionessonlas
mismas,peroquelosdatosvaran,estose
haceposibleutilizandolasestructuras
repetitivas,generalmentellamadasciclos.
Existenvariasestructurasderepeticinimplementadasporlosdiferenteslenguajesde
programacin,todasconlamismaidea:repetirunconjuntodeinstrucciones,llamadascuerpodel
ciclo,lascualesdependendeunacondicin.Enlamayoradeloscicloselcuerposerepitesiemprey
cuandolacondicinsecumpla,sinembargo,tambinexisteunaestructurarepetitivaqueserepite
entantoquenosecumplelacondicin.
Enestaseccinslonosenfocaremosenlasprimerasquesonlasqueestndefinidasenellenguaje
Cyenlamayoradeloslenguajesestructuradosyorientadosaobjetosactuales.Cabemencionar
queacadaunadelasvecesqueserepiteelcicloseleconocecomoiteracin.
Cuandoseutilizanciclosdentrodeunprograma,tepuedesenfrentaradosposiblessituaciones:
o Queconozcasdesdeeldiseocuntasvecesdebenrepetirselasinstrucciones
(repeticindefinida).
o Queelnmerodevecesquesedebanrepetirlasinstruccionesdependadeunvalor
queseconocehastaelmomentodelaejecucindelciclo(repeticinindefinida).
Enelprimercasosenecesitarunavariablequefunjacomouncontador,enlacualseregistreel
nmerodeiteracionesquesevayanejecutando.Encambio,enlasrepeticionesindefinidas
generalmentesecontrolanmedianteinterruptoresobanderas,obien,convalorescentinela.
Unidad 4.Estructuras de control
4.2.1.EstructuraMientras(while)
LaestructurarepetitivaMientras,codificadaenlenguajeCconlapalabrareservadawhile,controla
lasrepeticionesapartirdeunacondicinqueseevalaaliniciodelciclo,deestamaneraencada
iteracinprimeroseevaluarlacondicinymientrasresulteverdaderaserepetirelciclo.Enla
siguientetablasemuestranlasrepresentacionesdelcicloMientras(while).
Tabla4.8:RepresentacionesdelaestructurarepetitivaMientras(while)
LamaneraenlaqueseejecutaunainstruccinMientras(while)eslasiguiente:
las<instrucciones>delcuerpodelcicloseejecutanmientrasla<condicin>esverdadera,cuando
estonosecumpleseterminaelciclo;deestaforma,silaprimeravezqueseevalalacondicinsta
esfalsa,elcuerpodelciclonoseejecutaniunasolavez.
Paraejemplificarcmoseconstruyeuncicloindefinidoutilizandounvalorcentinela,sepropone
elsiguienteproblema.
DESCRIPCIONDEPROBLEMA:
Serequiereunprogramaquecalculeelpromediodetemperaturasqueregistraunaciudad,las
temperaturasseintroducirnengradosFarenheitFynoseconocedeantemanoelnmerode
temperaturasqueelusuariointroducir.
Pararesolverelproblemaplanteadosepodrapedirelnmerodetemperaturasquesedesean
registrarparacalcularelpromedio,peroestoequivaleaunaestructuraderepeticindefinida,si
decidiramosdejarabiertoestedatohastaelmomentodelaejecucindelprograma,tendramos
queconstruirunacondicinquehagaqueelcicloserepitamientrasqueelusuariodeseaingresar
temperaturas.Perocmosepuederesolveresto?
Encasoscomosteseproponeutilizarunvalorcentinelaqueindiqueelfindelacapturadedatos.
Claramenteelvalorcentineladebeserseleccionadodetalformaquenoseconfundaconalgnvalor
deentradaaceptable,porejemplopodramosconsiderarquedadoqueexisteunlmitemnimode
temperaturasengradosFarenheit,asaber460F,elvalorcentinelaseracualquiernmeroinferiora
ste,esclaroquenoexisteunatemperaturamsbaja,sinembargoellmitemximoesdifcilde
definiryaqueenformaexperimentalseobtienenenloslaboratoriostemperaturasdemilesde
Unid
grados,m
suponequ
Paracalcu
temperat
temperat
Asqueen
enlavaria
queelusu
queseco
contador
ciclosedi
Loanterio
Inicio
c0, su
Imprimi
Leer tem
Mientras
cc+1
sumaF=
Imprimi
calcular
Leer tem
Fin Mien
promF
Imprimi
Fin
dad 4.E
mientrasquee
uelatempera
ularelprome
uras
urasqueseh
nestecasose
abletempF)y
uariointroduz
;po
mpareconla
pararegistra
ivideelresult
orseexpresa
umaF0
r "Ingrese la
mpF
s (tempF-4
sumaF+temp
r "Ingrese la
el promedio
mpF
ntras
sumaF/c
r El prome
Estruc
enunaexplos
aturaenelSo
dio,debemos
hayanledo,d
eusaruncic
yacumuland
zcaunnmer
rloqueantes
condicinys
relnmerod
tadodelasum
delasiguien
a primer tem
460)
pF
a siguiente te
o "
dio de las te
Al goritm
turas d
sinatmica
olalcanzalos
srealizarlasu
digamosn.Lo
cloquevayal
olasumaen
romenora4
sdeiniciarel
siesmayora
detemperatu
madelastem
temanera:
mperatura reg
emperatura e
mperaturas e
o 4.4.a: Promed
de con
sealcanzant
milmillones
umadetodas
ydividirla
oanteriorsee
eyendounaa
lavariablesu
460.Deestam
ciclosedebe
460seacum
urasquesele
mperaturasen
gistrada en gr
en grados Fa
espromF
dio temperaturas
ntrol
emperaturas
degrados(P
slas
asentreeln
expresaconl
aunalastem
umaF,estasa
manera,laco
epedirlaprim
muleenlasum
ean.Finalmen
ntreelvalord
rados Fahren
ahrenheit (un
- pseudocdigo
demillones
rez,1992,p
merototald
asiguientef
peraturas(al
ccionessere
ondicindet
meratempera
ma.Adems,
nte,cuandose
delcontador.
nheit:"
n nmero ma
degrados.Se
g.325).
de
rmula.
macenndola
epetirnhasta
rminoes:
atura,para
seutilizaru
eterminael
ayor a -460)
e
as
a
n
para
Unid
Enseguid
ciclo200
dad 4.E
asemuestra
0.
Estruc
unapruebad
turas d
deescritorio
de con
paralastemp
ntrol
peraturas75,,78,79yparaaconcluirel
Tabla4.8:Pruebadeescritoriodelalgoritmo4.4
Unid
Enlatabla
iteracione
elestado
funcionam
paralacu
ciclo.
/ * Pr o
Des
usuar i
*/
#i ncl u
#i ncl u
#def i n
/ * Fun
mai n (
{ / *D
f l oat t
i nt c=
/ * Le
pr i nt f
gr ados
pr i nt f
scanf
/ * Cod
whi l e
{
/ * Se
c = c
/ * Se
sumaF=
/ * Se
pr i nt f
t er mi n
scanf
}
/ * Pr o
dad 4.E
a4.9sepued
es),encadau
delasvariab
mientodelcic
ualsedeterm
ogr ama: p
scr i pci n
i o i ngr es
ude<st di o
ude<st dl i
necent i ne
nci n Pr i
( )
Decl ar aci
t empF, pr o
=0;
ect ur a de
f ( " Pr ogr
s Fahr enh
f ( " \ n I n
( " %f " , &t
di f i caci
( t empF>=
r egi st r a
+ 1;
acumul a
=sumaF+t e
l ee l a s
f ( " \ n\ nI
nar i ngr e
( " %f " , &t
omedi o de
Estruc
eobservarc
unasevalidal
lesimplicada
cloMientrasy
inutilizarun
pr omTemp.
n: Cal cul
sa.
o. h>
i b. h>
el a - 460
i nci pal */
i n de ac
omF, suma
e l a pr i m
r ama que
hei t \ n\ n\
ngr ese l a
t empF)
n del ci
= cent i ne
a l a t emp
l a t empe
empF;
si gui ent e
I ngr ese l
ese un n
t empF) ;
e Temper a
turas d
moelmismo
lacondiciny
senlaexpres
yverificadoq
navariablepa
. c
l a el pr o
/
cumul ador
aF=0;
mer a t emp
cal cul a
\ n") ;
a pr i mer
i cl o */
el a) ;
per at ur a
er at ur a e
e t emper a
l a si gui e
mer o men
at ur as Fa
de con
oconjuntode
yelcicloterm
sinbooleana
quesifuncion
ararepresent
omedi o de
r es y con
per at ur a
el pr ome
t emper at
que se l
en l a sum
at ur a */
ent e t emp
nor a %d)
ahr enhei t
ntrol
einstruccione
minaslocuan
a.Unavezqu
a,elsiguient
tarelvalorce
e l as t em
nt ador es*
*/
edi o de t
t ur a r egi
l ey */
ma */
per at ur a
) : " , cen
t */
esserepitetr
ndostanos
uesehailustr
epasoeslac
entinelaquec
mper at ur a
*/
t emper at u
i st r ada: "
( si dese
nt i nel a) ;
resveces(3
sesatisfacepo
radoel
codificacin,
controlael
as que el
ur as en
" ) ;
ea
;
or
l
Unidad 4.Estructuras de control
pr omF=sumaF/ c;
pr i nt f ( " \ nPr omedi o de t emper at ur as Cel si us=%. 2f \ n" , pr omF) ;
syst em( " pause" ) ;
}
Programa 4.4: promTemp.c
Porltimo,enlasiguientefigurasemuestralaejecucindelprogramaconlosmismosdatosquese
utilizaronenlapruebadeescritorio.
Figura4.4:EjecucindelprogramapromTemp.c
Unidad 4.Estructuras de control
EjercicioD.Estructurasdecontrol
1.Realizaunapruebadeescritoriodelalgoritmoqueresuelveelproblema4.4queacabamosde
estudiar.Consideraquelosvaloresdeentradason80,100,250,y1000.
2.EscribeycompilaelprogramapromTemp.cenlacomputadora;ejectaloconlosmismosvalores
paracompararelresultado.
3.Finalmente,reflexionasiesposibleresolverelproblemaplanteadoutilizandoestructuras
Selectivaseingresatucomentarioenlabasededatos.
Paraingresaralaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1.Estructurasdecontrol.
Unidad 4.Estructuras de control
4.2.2.EstructuraDesdemientras(for)
ElcicloDesdemientras,eninglsylenguajeC,for,evaluarunacondicinymientrasstasea
verdaderaseejecutarelconjuntodeinstruccionesdefinidasenelcuerpodelaestructura,
generalmentelasrepeticionessecontrolanporuncontador,yaquecomopartedesusintaxistiene
laopcindeinicializarunavariable(elcontador)eincrementarloodecrementarlo.Estetipode
estructuraesconvenienteutilizarlacuandoseconocedeantemanoelnmerodevecesquesedebe
repetirelciclo(ciclosdefinidos).
Lasrepresentacionesdeesteciclosemuestranacontinuacin:
Tabla4.8:RepresentacionesdelaestructurarepetitivaDesdemientras(for)
Enestecaso,primeroserealizala<inicializacin>quecorrespondealaasignacindelvalorinicialde
unavariable(elcontador),posteriormenteseevalala<condicin>siesverdaderaseejecutan
las<instrucciones>delcuerpodelcicloy,posteriormente,seincrementaodecrementaelcontador,
segnseaelcaso,paradespusvolverarepetirelciclo,exceptoporla<inicializacin>queslose
ejecutaunavez.
Sitecentrasenlarepresentacinendiagramadeflujodeesteciclo,podrsdartecuentaquese
parecealdiagramadelciclowhile,salvoporlainicializacinyelincremento(odecremento);de
hechosipartesdeldiagramadeflujoparalacodificacinpuedesutilizarunwhile.Deigualmanera,
unciclowhilesepuederepresentarconun
cicloforcuya<inicializacin>e<incremento/decremento>sonvacos,slosedefinelacondicin.
Conloanteriorsemuestralaequivalenciadelasdosestructuras.
Paraejemplificarlasrepresentaciones,codificacinyfuncionamientodeestaestructurasepresenta
elsiguienteproblemadesarrollado:
Problema4.5:Serequiereunprogramaquecalculeeltotaldelanminadelostrabajadoresdeuna
empresa.
Observalasolucindelproblema.
SOLUCIONALPROBLEMA:
Elproblemaessimilaralquesepresentenlaseccinanterior,sedebeleerelpagodecada
trabajadoryrealizarlasumadecadaunodestos,paralocualsepuedeutilizarunacumulador.La
diferenciaesque,enestecaso,noseutilizarunvalorcentinelaparaterminarlalecturadelos
pagos,puessepreguntaralusuario,aliniciodelprograma,cuntostrabajadoreshay,aselnmero
deiteracionesquedardeterminadoantesdeiniciarelciclo.Deloanteriortenemosquesiel
nmerodeempleadosesnentonceselciclodeberepetirsenveces,paralocualseutilizarun
contadorcquedebetomarlosvalores1,2,,n,asqueelciclodeberepetirsesiemprequecn.En
cuantoalasumadelospagos,seutilizarunacumulador,alcualllamaremosnom,quese
inicializarencerodadoquesetratadeunasuma.
Inicio
Imprimir"Ingreseeltotaldeempleados:"
Leern
Desdec=1,nom=0,Mientras(c<=n),c=c+1
ImprimirIngresaelsalariodeltrabajador,c
Leersal
nom=nom+sal
Findesde
ImprimirLanminaapagaresentotal$,nom
Fin
Algoritmo4.5.b:Nminadiagramadeflujo
Unidad 4.Estructuras de control
Unidad 4.Estructuras de control
Enlasiguientetablasemuestralaejecucinpasoapasodelciclosuponiendoquesequierecalcular
lanminadetresempleadosyyasehaledoeldatoyregistradoenlavariablen,lacualnocambia
suvaloralolargodelaejecucindelciclo.
Porlotanto,lasalidadelalgoritmoes:Lanminaapagares$45.Lacodificacinyejecucindel
programaseralaquesemuestraenesteenlace.
TABLADEEJECUCION:
Unidad 4.Estructuras de control
CODIFICACIONDEENLACE:
La codificacin en lenguaje C del programa nomina.c es la siguiente:
/ * Pr ogr ama: nomi na. c
Descr i pci n: cal cul a l a nmi na a pagar de n t r abaj ador es
*/
/ *di r ect i vas de pr epr ocesador */
#i ncl ude<st di o. h>
#i ncl ude<st dl i b. h>
/ * Funci n Pr i nci pal */
mai n ( )
{
/ *Decl ar aci n de var i abl es */
i nt n, c;
f l oar nom, sal ;
/ * Lect ur a del nmer o de empl eados */
pr i nt f ( " Cal cul o de l a Nomi na\ n\ n " ) ;
pr i nt f ( " I ngr ese el t ot al de empl eados: " ) ;
scanf ( " %d" , &n) ;
/ *Ci cl o def i ni do de 1 hast a el nmer o de empl eados
i ngr esados*/
f or ( nom=0, c=1; c<=n; c=c+1)
{
pr i nt f ( I ngr esa el sal ar i o del t r abaj ador %d: " , c) ;
scanf ( " %f " , &sal ) ;
/ *Acumul ador de sal r i os*/
nom=nom+sal ;
}
pr i nt f ( \ n La nomi na a pagar es $&. 2f , nom) ;
}
Programa 4.5: nomina.c
La ejecucin del programa con los mismos datos de entrada que se utilizaron en la
prueba de escritorio es la siguiente:
Unidad 4.Estructuras de control
Figura 4.6: Ejecucin del programa nomina.c
Unidad 4.Estructuras de control
EjercicioE.Estructurasdecontrol
1. Realizaunapruebadeescritoriodelalgoritmoqueresuelvaelproblema4.5
presentadoenelsubtemaanteriorparacalcularlanminade4trabajadorescon
salariosigualesa:$2000.00,$5000.00,$3000.00y$1000.00.
2. Escribeycompilaelprogramanomina.cenlacomputadora;ejectaloconlos
mismosvaloresparacompararelresultado.
3. Finalmente,analizacmopodrasresolveresteproblemautilizandolaestructura
Mientras(while)eingresatuscomentariosalrespectoenlabasede
datosEstructurasdecontrol.
Paraingresaralaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1:Estructurasdecontrol.
Unidad 4.Estructuras de control
4.2.3.EstructuraHacermientras(dowhile)
Adiferenciadelasestructurasrepetitivasenlasquelascondicionesseevalanalprincipiodelciclo,
porloquelasinstruccionesqueserepitenseejecutende0hastaNveces,enlaestructuraHacer
mientras(dowhile)laevaluacinsellevaacaboalfinal,estoimplicaqueelconjuntode
instruccionesqueserepiteseejecutaalmenosunavez.
Tabla4.9:RepresentacionesdelaestructurarepetitivaHacermientras(dowhile)
ObservaqueenelcdigoenC,lanicaestructuradecontrol,detodaslasquehemosvisto,que
tienepuntoycomadespusdelaexpresinocondicineseldowhile.
Porelfuncionamientodelaestructura,elcasotpicodelusodeldowhilesonlosmens.Para
ejemplificarloanteriorseproponeelsiguienteproblema.
PROBLEMA
Serequiereunprogramaqueimprimaunmenconlassiguientesopciones,elcualserepitaentantonose
eligelaopcinde(Salir).
a.Calcularlafuerza
b.Calcularlaaceleracin
c.Calcularlamasa
d.Salir
Adems,dependiendodelaopcinqueelijaelusuariosedeberrealizarlatareaindicadautilizandola
segundaleydeNewtonquedicta:Laaceleracinqueuncuerpoadquiereesdirectamenteproporcionalala
Unid
resultante
fuerza=m
Enesteca
mencor
correspon
frmulad
opcinse
represent
Unidad4.
Problema
Inicio
Hacer
Imprimir"
Imprimir"
Imprimir"
Imprimir"
Imprimir"
Imprimir"
Imprimir"
Leeropc
Seleccion
Caso1:Im
Leerm
dad 4.E
edelasfuerz
masa*aceler
aso,parareso
respondaau
ndientesylao
dada).Paraqu
adistintade
taciones.
.ESTRUCTUR
a4.6.
"RealizaClcu
"
"a.Fuerza."
"b.Aceleraci
"c.Masa."
"d.Salir."
"ElegirunaO
a(opc)
mprimir"Ingre
Estruc
asqueactan
racin
olverlaparte
uncaso,asla
operacinap
ueelmense
4(Salir).Dee
ASDECONTR
ulostrabajand
n."
Opcin:"
esaLamasa:
turas d
nenl,ytien
delmense
sinstruccione
ropiada(que
erepitasepla
estaformael
ROL
dola2a.Leyd
"
de con
nelamismad
utilizaruns
esqueloform
sedefinede
anteaunciclo
algoritmose
deNewton"
ntrol
direccinene
switchcase,e
mandebense
spejandolav
owhilequese
presentaac
elsentidoque
enelquecada
er:lalecturad
variableencu
eejecutemie
ontinuacine
eendichares
aopcindel
delosdatos
uestindela
entrasla
ensusdos
ultante
Unid
Imprimir
Leera
f=m*a
Imprimir
Caso2:Im
Leerf
Imprimir
Leerm
a=f/m
Imprimir
Caso3:Im
Leerf
Imprimir
Leera
m=f/a
Imprimir
Caso4:Im
Otro:Impr
Fin_Selec
Mientras
Fin
Algoritmo
dad 4.E
Ingresalaace
Fuerza=,f
mprimir"Ingre
Ingresalama
Aceleracin
mprimir"Ingre
Ingresalaace
Masa=,m
mprimir"Adio
rimir"Opcin
ciona
(opc!=4)Fin
o4.6.a:Segun
Estruc
eleracin:
esalafuerza:
sa:
=,a
esalafuerza:
eleracin:
os"
ninvlida"
ndaleydeNe
turas d
ewtonpseud
de con
docdigo
ntrol
Unid
Acontinu
dondevan
Eneldiag
noelijala
paravalid
Lacodifica
/ * Pr o
Des
acel er
*/
/ *di r e
#i ncl u
dad 4.E
acinsepres
nlasinstrucc
gramadeflujo
opcind,qu
darelalgoritm
acinenCse
gr ama: n
cr i pci n
r aci n, f u
ct i vas d
ude<st di o
Estruc
sentaeldiagr
ionesdelost
osepuedeob
uecorrespond
mo.
muestraald
newt on. c
n: Muest r
uer za o m
de pr epr o
o. h>
turas d
amadeflujo,
tresprimeros
bservarclaram
deasalir.Por
darclicenels
r a un men
masa, con
ocesador *
de con
,salvoquen
scasos,yadef
mentequeel
rloquenose
siguientebot
n par a c
nf or me a
/
ntrol
nicamentese
finidasenelp
cicloseejecu
requierehac
n:
cal cul ar
l a segun
hadejadoin
pseudocdigo
utarmientra
cerlaprueba
l a
nda l ey d
dicadoen
o.
aselusuario
deescritorio
de Newt on
n
Unidad 4.Estructuras de control
Enlasiguientefigurasemuestralaejecucindeunaiteracindelciclo,enlacuallaopcinelegida
eslaprimera.
Unidad 4.Estructuras de control
Figura4.6:Ejecucindelprogramanewton.c
Observaquedentrodelcuerpodelciclosedefiniunaestructuraselectiva,esdecir,quelas
instruccionesdelcuerpodecualquierestructuracompuesta,searepetitivaoselectiva,puede
conteneraotras.Unodeloscasosmsutilizadoseselanidamientosdelosifs,delocual
hablaremosenlasiguienteseccin.Peroantesdedarporterminadaestaseccinrealizalasiguiente
actividad.
Unidad 4.Estructuras de control
EjercicioF.Estructurasdecontrol
1. Realizaunapruebadeescritoriodelalgoritmoqueresuelvaelproblema4.6presentadoen
estaseccinconsiderandolasopcionesquesemuestranenlaejecucindelprogramaenla
figura4.6,yconsiderandoquelasiguienteopcindelusuarioessalir.
2. Posteriormenteescribeycompilaelprogramanewton.cenlacomputadora;ejectalocon
losmismosvaloresparacompararelresultado.
3. Finalmente,reflexionasilasestructurasdecontrolrepetitivaspresentadasenestaunidad
sonequivalentes,esdecir,sicualquieradeellassepuederepresentarconlasotraseingresa
tusconclusioneslabasededatosEstructurasdecontrol.
Paraingresaralaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1:Estructurasdecontrol.
Unidad 4.Estructuras de control
Actividad3.Estructurasrepetitivas
RealizaunprogramaenCqueresuelvaelproblemaqueteproporcionartuFacilitador(a).Utilizalas
estructurasrepetitivasqueconsideresnecesariaspararesolverlo.
1. Analizaelproblemayrealizalasolucinenpseudocdigoodiagramadeflujo,gurdalocon
elnombreFPR_U4_A3_XXYZ,recuerdaquelaextensindelarchivopuedesercualquierade
lassiguientes,dependiendodelprogramaquehayasdecididoutilizar:.doc,.ppt,.pdf,.jpg,
.bmp,.gif,.vsd.
2. Realizaunapruebadeescritorioyposteriormente,sistahasidosatisfactoria,escribeel
programaenlenguajeC.
3. Compilayejecutaelprogramaparaverificarquefuncionacorrectamente.
o Encasodequeelcompiladorenveerrores,verificadndeestelerrorycorrigelo.
4. GurdaloconelnombreFPR_U4_A3_XXYZ.c
5. AgregalossiguientesarchivosaunacarpetacomprimidallamadaFPR_U4_A3_XXYZ.zip:
Algoritmoenpseudocdigoodiagramadeflujo.
Programafuente(.c)
Archivoejecutable(.exe)
6. EnvalacarpetacomprimidaatuFacilitador(a)mediantelaSeccindetareas.
Nota:PuedesingresaralabasededatosEstructurasdecontrolparacompartirtusdudasopara
ayudararesolverlasdetuscompaeros(as).Recuerdaquesitienesalgunadificultadenelproceso
dedesarrollodetuprogramaalguiendelgrupotepuedaayudararesolverla,opuedeserquet
sepaslasolucinalproblemadeotro(a).
Paraenviartudocumento:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenlaActividad3.Estructurasrepetitivas.
Unidad 4.Estructuras de control
4.3.Estructurasanidadas
Lasestructurasdecontrolselectivasyrepetitivasseconsiderancompuestasyaqueseformana
partirdeotrasinstruccionesquesonlasqueseejecutarndeacuerdoaunacondicindada.Es
importanteremarcarquelasinstruccionesqueformanelcuerpodeunaestructurapuedenser
tambinestructurascompuestas,comosedemostrenlasolucindelltimoproblemavisto
(observaelprogramanewton.c),enelcualunswitchestdentrodeunwhile.Asqueesposible
anidarcualquiertipodeestructura,sinembargo,lomscomnesanidarinstruccionesif,puesse
utilizancuandosetienenvarioscasos,porejemplo,sirevisamosnuevamenteelproblema4.1,
dondesequieredeterminareltipodengulo,esmejorsolucinutilizarifanidadospararesolverlo
porqueasnoseevalancondicionesque,unavezquesehadefinidoeltipodengulo,son
innecesarias.
Parailustrarloanterior,acontinuacintemostramoselpseudocdigoparalasolucindelmismo
problemamediantelasestructurasanidadas.
Sirealizaslapruebadeescritorioconelnguloiguala90grados,podrsdartecuentaquea
diferenciadelaprimeraversindelalgoritmodondeseevalantodaslascondiciones,aquslose
evalanlastresprimeras,enlosdosprimerosSiesfalsayporlotantoseejecutanlasinstrucciones
delSinocorrespondiente,peroeneltercerSianidadolacondicinesverdaderayseimprimeeltipo
dengulo,posteriormenteseacabaelanidamiento.
ElprogramaenCylaejecucindelmismosemuestranaqu.
PSEUDOCODIGO:
Algoritmo4.7:Tipodengulo(versin2)pseudocdigo
Inicio
Imprimir"Ingreselamedidadelangulo(grados):"
Leerangulo
Siangulo0ORangulo360entonces
ImprimirNotieneclasificacin"
SinoSiangulo<90entonces
Imprimir"Elnguloesagudo"
SinoSiangulo=90entonces
Imprimir"Elanguloesrecto"
SinoSiangulo<180entonces
Unidad 4.Estructuras de control
ImprimirElanguloesobtuso"
SinoSiangulo=180entonces
Imprimir"Elanguloesllano"
Sino
ImprimirElanguloesconcavo"
Fin_SiSino
Fin_SiSino
Fin_SiSino
Fin_SiSino
Fin_SiSino
Fin
PROGRAMAYEJECUCION.
LacodificacinenCes:
main()
{
/*Declaracindevariables*/
intangulo;
/*Mensajedebienvenida*/
printf("\nEsteprogramadeterminadequetipoeselangulodado.");
/*Instruccin*/
printf("\n\nIngreselamedidadelangulo(grados):");
scanf("%d",&angulo);
if(angulo<=0||angulo>=360)
printf("\nNotieneclasificacin");
elseif(angulo<90)
printf("\nElanguloesagudo");
Unidad 4.Estructuras de control
elseif(angulo==90)
printf("\nElanguloesrecto");
elseif(angulo<180)
printf("\nElanguloesobtuso");
elseif(angulo==180)
printf("\nElanguloesllano");
else
printf("\nElanguloesconcavo");
printf("\n\n\t");
system("pause");
}
Programa4.7:tipoAngulo2.c
Laejecucinconelnguloiguala90gradossemuestraenlasiguientefigura:
Figura4.7:EjecucindelprogramatipoAngulo2.c
Unidad 4.Estructuras de control
EjercicioG.Estructurasdecontrol
1. Realizaunapruebadeescritoriodelalgoritmoqueresuelvaelproblema4.1,ensuversin
deifsanidados,presentadoenestaseccin(algoritmo4.7),considerandoqueelvalordel
nguloes90grados.
2. Posteriormenteescribe,compilayejecutaelprogramatipoAngulo2.c(programa4.7)enla
computadoraconelmismovalordelnguloparaverificarturesultado.
3. ComparteenlabasededatosEstructurasdecontroltusopinionessobreeltemade
estructurasanidadas,consideralosprosycontrasqueleencuentrasaestetipode
estructuras.
Paraingresaralaactividad:Enlaruta(partesuperiorizquierdadelaula)daclicenFundamentos.Se
enlistarnlasactividades,daclicenActividad1:Estructurasdecontrol.
Unidad 4.Estructuras de control
Autoevaluacin
IngresaalcuestionarioAutoevaluacin.Unidad4,ycontestacadaunadelaspreguntasquesete
plantean.Consideravolverarepasaralgunostemassitusrespuestascorrectassonmenosquelas
incorrectas.
Paraingresaralaautoevaluacin:Enlaruta(partesuperiorizquierdadelaula)daclic
enFundamentos.Seenlistarnlasactividades,daclicencuestionarioAutoevaluacin.
Unidad 4.Estructuras de control
Evidenciadeaprendizaje:Avancedesolucindelproblema
implementandolasestructurasdecontrol
Ahoraqueconoceslasestructurasdecontrol,esmomentoderetomareldesarrollodelprogramaen
CqueestamosrealizandocomopartedelaEvidenciadeAprendizaje,hastaelmomentoyadebes
contarconelanlisisdetuproblema.
Loquecorrespondeparaestaunidadesdarunaprimeraversindesolucindelproblemaque
utiliceestructurasselectivas,condicionalesyrepetitivas.Paraello,debesapoyarteentu
Facilitador(a)paradelimitarquparteoversindelproblemaresolvers.
Realizalosiguiente:
1. EnunarchivodeWord,describelaversindelproblemaqueresolversenestaunidad
considerandoque:
o Laversindelproblemaplanteadodebeinvolucrarelusodealmenosuna
estructuraselectiva(if,ifelseoswitch)yalmenosunaestructurarepetitiva(while,
dowhileofor).
o Debesindicarculessonlosdatosdeentradaylasalidaesperadaparaestaversin.
2. Enelmismodocumento,realizaelalgoritmoquetellevaalasolucindeestaprimera
versindelproblema,puedesrepresentarlomedianteundiagramadeflujoopseudocdigo,
segnprefieras.
3. GuardatutrabajoconelnombreFPR_U4_EA_XXYZ.docyenvalomedianteelPortafoliode
evidencias,esperaaquetuFacilitador(a)devuelvaloscomentariosatutrabajo,atiendelo
queseteindiqueyhazlosajustesnecesariosparamejorartuEvidencia.
4. Unavezqueelfacilitadorteenvesuscomentariosyteaseguresquetualgoritmoes
correcto,codifcaloenlenguajeCyguardatuprogramaconelnombreFPR_U4_EA_XXYZ.c.
Posteriormentecomplaloyejectalocondiferentesdatosdeentradaparavalidarque
funcionaadecuadamente.
5. Vuelveaenviartutrabajo(laversincorregida)peroahoraincluyetodolosiguienteenuna
carpetacomprimidallamadaFPR_U4_EA_XXYZ.zip:
o Algoritmoenpseudocdigoodiagramadeflujo.
o Programafuente(.c)
o Archivoejecutable(.exe)
Para conocer el plazo lmite para enviar la segunda versin de la Evidencia de
Aprendizaje (descripcin, algoritmo y programa en C) consulta a tu Facilitador(a).
Para conocer los lineamientos de evaluacin de esta evidencia, descarga el
siguiente documento.
Da clic en el icono para descargar la escala de evaluacin.
Unidad 4.Estructuras de control
Para enviar tu evidencia: En la ruta (parte superior izquierda del aula) da clic en
Fundamentos. Se enlistarn las actividades de la Unidad 4 y da clic en la Evidencia
de Aprendizaje: Avance de solucin del problema implementando las
estructuras de control.
Al terminar la Evidencia de aprendizaje de la Unidad 4, haz tu Autorreflexin. Para
ello,Ingresa al foro de Preguntas de Autorreflexin y a partir de las preguntas
presentadas por tu Facilitador(a), realiza tu ejercicio y sbelo en la seccin
Autorreflexiones.
Unidad 4.Estructuras de control
Cierredelaunidad
Conestodamosporterminadaestaunidad,ahorayaconocestodaslasestructurasyhasvistocmo
funcionanyqutipodesituacionessepuedemodelarconellas.Aunquecabedestacarquepara
solucionarcualquierproblemabastaconquesepasutilizarelciclowhileylaestructuraselectivaif
else,puesyasemencionquetodoslosciclossonequivalentesyconlaestructuraifelse,puedes
modelarunswitchcaseanidandoifs.
RecuerdaquedebespracticarmuchoparadominarcadaunodeloscomponentesdellenguajeC.No
dejesderepasarlostemasyderealizartuspropiosprogramas.
Adelante!