Sunteți pe pagina 1din 20

EstructurasRepetitivas

Sesolicitaaloperadorqueingresetresnmerosenteroscualesquiera.
Enbaseaestosnmeros,mostrarporpantallacualeselmayordetodos.
Diag.DeFlujosPseudocdigo

Matlab

EstructurasRepetitivas
Laestructurarepetitivaseutilizacuandose
quierequeunconjuntodeinstruccionesse
ejecutenunciertonmerofinitodeveces.
Llamamosbucleocicloalprocesoquese
repite.

EstructurasRepetitivas
Existendostiposdeestructurasrepetitivas:
Aquellaendondesetieneperfectamente
establecidoelnmerodevecesqueungrupo
deaccionessevanaejecutar.
Aquellaenlaqueelnmeroderepeticiones
esdesconocidoysehar hastaquesecumpla
onociertacondicin.

EstructurasRepetitivas
DesdeoPara
Cuandoconocemosdeantemanoelnmero
devecesenquesedeseaejecutarunaaccin
ogrupodeacciones.
Estaestructuraejecutalasaccionesdel
cuerpodelbucleunnmeroespecificadode
veces.
Controlaenmodoautomticoelvalordeuna
variablequecuentalacantidaddeciclos
ejecutados.

EstructurasRepetitivas
DesdeoPara SINTAXIS
para variable Vihasta Vf[incremento]hacer
accinoacciones
findesde

variable: variablendice
Vi:valorinicialdelavariableindice
Vf:valorfinaldelavariableindice
[incremento]:elnmeroquese
incrementa(o decrementa)ala
variableindiceencadaiteracindel
bucle,siseomitees1.

EstructurasRepetitivas
DesdeoPara EJEMPLO
Imprimirtodoslosnmerosdel1al100.

1) I eslavariablendiceconunvalorinicialde1,seincrementaunoencadapasohasta100.
2) Laestructuradesdecomienzaconunvalorinicialdelavariable indiceylasaccionesse
ejecutanhastaquesuvalorseaMAYORqueelqueelValorfinal.
3) Lavariableindiceseincrementeenunoysiestenuevovalordelindicenoesmayorque
elvalorfinal,seejecutadenuevolaaccinimprimir.
Enestecasosevisualizar losnmeros1,2,3,4,5,6,7,8,9,10....97,98,99,100

EstructurasRepetitivas
DesdeoPara EJEMPLO
Imprimirtodoslosnmerosparesdesde2hasta300.

1) Lavariableindicecomienzaen2,seimprime2yenelsiguiente pasoseincrementaen2
2) lpasaavaler4;seimprimeel4ycomo4esmenorque300(valorfinal),sepasaauna
nuevaiteracinincrementandonuevamentelen2,queahoravale6;yas
sucesivamente...
3) Aqu sevisualiza:2,4,6,8,10,12,14,16,18,.....296,298,300

EstructurasRepetitivas
DesdeoPara EJEMPLO
ImprimirtodoslosnmerosIMPARESdesde1hasta300.

1) Vemoslosvalores:1,3,5,7,9,11,13,....,299
2) Elcicloterminamostrando299puestoqueenelsiguientepaso,lavariableIvaldra301y
esmayorallmiteestablecidode300.
3) Ipasaavalerrealmente301enelltimopaso,soloquelainstruccindeimprimirnose
ejecuta.
4) SidiramoslainstruccindeimprimirelvalordeI,inmediatamentedespusdelfin
desde,veramos301.

EstructurasRepetitivas
DesdeoPara EJEMPLO
Imprimirlosvalorescomprendidosentreel460y500enordeninverso.

Comosalidatenemos,entonces:
500,499,498,497,496,495,494,....464,463,462,461,460.

CiclosconNumeroIndeterminadodeIteraciones
SediferenciadelaPARA/DESDE enquenose
conoceelnmeroderepeticionesoiteraciones
enquesevaaejecutarunainstruccinoun
bloquedeinstrucciones.
Estasestructurassonbsicamentedos:
mientras....finmientras
repetir....hasta.

Estasdossediferencianenquelaverificacinde
lacondicinpararepetirelciclosehacealinicio
conmientrasyalfinalconrepetir.

HACERMIENTRAS
Elcuerpodelbuclesecumplemientrassecumpleunadeterminada
condicin.PorestaraznselosdenominaBUCLESCONDICIONALES.

mientras{condicin}
accin1
accin2
accin3
.....
accinn
finmientras
instruccinX

whilecondicin,
comando;

end

HACERMIENTRAS
Loprimeroqueelcomputadorhaceesexaminarlacondicin,loque
puededarcomoresultadodosposibilidades:
Lacondicinsecumple:Seejecutanaccin1,accin2,accin3,...,
accinn.
Lasestar repitiendohastaquelacondicinnosecumpla,
entoncessesaledelcicloysesiguenejecutandolaolas
instruccionesquevienenacontinuacinyestnfueradelbucle;
instruccinX.
Lacondicinnosecumple:Noentrar enelciclo.Seejecutanlas
instruccionesquevienendespusdelbucle,instruccinX,por
ejemplo.
Deestosededucequeelcuerpodelbucledeunaestructura
mientraspuederepetirseceroomsveces.

HACERMIENTRAS
(EJEMPLO)
leercontrasea
mientrascontrasea<>"josua"
imprimir"Lacontraseaesincorrecta!
leercontrasea
finmientras
imprimir"Haingresadolacontraseacorrecta
contrasea=input(Ingresesucontrasea);
while(contrasea<>josua),
disp(contraseaincorrecta);
contrasea=input(Ingresesucontrasea);
End
disp(Haingresadolacontraseacorrecta);

REPETIRHASTA
Laestructurarepetircumplelamismafuncin
quelaestructuramientras.Ladiferenciaest
enquelaestructuramientrascompruebala
condicinalinicioyrepetirlohacealfinal;por
esolaestructurarepetirseejecutaporlo
menosunavez.

REPETIRHASTA
SINTAXIS

repetir
intruccin1
instruccin2
instruccin3
......
hasta{condicin}
instrucinX

Loquelacomputadorahacealejecutarlaestructurarepetir
es:
1) Seejecutan:instruccin1,instruccin2,instruccin3,......
2) Seevalalacondicin.

SiestaesFALSAsevuelvearepetirelcicloyse
ejecutaninstruccin1,instruccin2,instruccin3,.

SilacondicinesVERDADERAsesaledelcicloyse
ejecuta instruccin X

Comparacin
mientras repetir
MIENTRAS
Comprobacin de la condicin al inicio,
antes de entrar al bucle

REPETIR
Comprobacin de la condicin al
final, despus de haber ingresado
una vez al bucle

Las instrucciones del cuerpo del bucle se

Las instrucciones del cuerpo del

ejecutan en forma repetitiva si la

bucle se ejecutan si la condicin es

condicin es verdadera

falsa

Las acciones del bucle se pueden

Las acciones del bucle se ejecutan

ejecutar 0 o ms veces

por lo menos una vez

PROBLEMASDEESTRUCTURAS
CCLICAS
Calcularelpromediodeunalumnoquetiene7calificacionesenunamateria.

PROBLEMASDEESTRUCTURAS
CCLICAS
Leer10nmerosyobtenersucuboysucuartapotencia

PROBLEMASDEESTRUCTURAS
CCLICAS
Calcularlasumayelpromediodenmerosingresados.Lacantidaddenmerosaingresares
desconocidaalmomentodeejecutarelalgoritmoytodoslosnmerosaingresarseencuentran
enelentorno[0,100].Lacargafinalizacuandoseingresaunnmerofueraderango.
HACERMIENTRAS
Inicio
HACERPARA
No puede resolverse con Sum0
Cuenta0
esta
estructura NO se conoce el LeerNum
MientrasNum>=0y
nmerodeiteraciones.
Num<=100hacer
SumSum+Num
LeerNum
Cuenta Cuenta+1
Finmientras
SiCuenta>0entonces
Prom sum/cuenta
ImprimirSum,Prom
FinSi
Fin.

REPETIRHASTA
No puede resolverse con
esta estructurayaque si el
primer nmero ingresado
se encuentra fuera de
rango igual ejecutara el
bucle,yaqueenelRepetir
hasta al menos una vez se
ejecutaelbucle.

CUANDOEMPLEARCADA
ESTRUCTURAREPETITIVA?

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