You are on page 1of 12

Programacin Ing.

Elctrica y Electrnica

Unidad 2- 1 Resumen de estructuras de control

Profesor

Ing. Orlando Barcia Ayala

Website: www.orlandobarcia.com E-mail: obarcia@orlandobarcia.com

Cursos online: www.orlandobarcia.com/cursos Foro online: www.ingenieroweb.com

Agenda 1
Estructuras de control Ejercicios

Estructuras de control, en pseudocodigo


Decisin simple Decisin doble Decisin mltiple Repetitivas

Decisin simple (si)


If (condicion) { Si se cumple esto. ENTONCES realizar lo que est aqu }
Nota: Se realiza lo que esta entre llaves despues del if. Al finalizar o cuando es falso, se realiza la Siguiente lnea despus del }

IF .

IF (si)

{ inicio del bloque } fin del bloque

Decisin simple. Ejemplo


If (condicion) then
Si se cumple esto. realizar lo que est aqu

endif Ejemplo a 4 b3 If (a > b) { write(salir a jugar) }

Decisin doble (si ,en caso contrario)


If (condicin) { si se cumple esto, ENTONCES realizar lo que est aqu } else { En caso contrario Realizar esto otro }
Nota: Se realiza UNA de las 2 cosas no las 2 a la vez. Si es verdadero se realiza lo que esta entre llaves del if y else y despus sale (siguiente lnea despus del endif }) Si es falso (en caso contrario) se realiza entre el else y fin de la llave }, despus sale (siguiente lnea despus del endif)

Decisin Doble. Ejemplo


a5 if (a = 5) { write (Hola amigos); } Else {
write (Hola los que no son mis amigos); }

Estructuras Repetitivas 1. (mientras)


while (condicion)
{ Mientras ocurra esto, realizar lo que est aqu

}
While , es mientras en espaol
Nota: Si es verdadero se realiza lo que esta entre llaves del while { y } , y vuelve a preguntar hacia el while, hasta que la condicin sea falsa Si es falso se realiza la siguiente lnea despus del })

Diagrama de flujo. Que hace ? begin

a0

a< 10 Write a V a a+ 1 Es un contador que muestra de 1 a 10 A <=10 muestra 11

F
end

Pseudocodigo begin a0 While( a < 10) { a a+1 write a } end


Hacer Mientras a sea menor a a+1 y mostrar

Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19, aumentando 3 y la suma de ellos, es decir 10+13+16+19

Anlisis del problema Entre 10, 13, 16 hay diferencia de 3. Se utiliza un contador de 3 en 3 Para almacenar los nmeros, utilizo un acumulador. Cuento y acumulo hasta que la condicin no se cumpla

CONTADOR num . num num +1 0

ACUMULADOR suma . suma suma +num 0

Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19, aumentando 3 y la suma de ellos, es decir 10+13+16+19

begin
suma 0 num 10

Realizar la tabla de seguimiento o control

num <=19 F V
Write num

Write suma

end

suma suma + num num num + 3

Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19, aumentando 3 y la suma de ellos, es decir 10+13+16+19
Diagrama de flujo begin

pseudocodigo Begin Suma0 num 10 While ( num <=19)

suma 0 num 10

num <=19 F V Write num

Write suma

{ Write num
Suma suma + num num num +3 }

end
suma suma + num num num + 3

Write suma end

Elaborar y diagrama que, lea un numero y muestre un mensaje, solamente ese nmero de veces
begin
Read n

Anlisis del problema Ir contando uno a uno hasta que sea igual al numero ingresado

CONTADOR
Write Mensaje j Write Mensaje j

. j j +1
variable constante

J=n V end

j+1 variable

Realizar el pseucodigo del ejercicio anterior

Estructuras Repetitivas 2. (DESDE o Para)


For (variable inicial ; variable final ; incremento )

{ desde una variable inicial,


Hacer lo que est aqu. Hasta que variable sea igual a variable final.

inicial

condici on

V
Nota: Ideal cuando se conocen los limites superior e inferior y el aumento Si es verdadero se realiza lo que esta entre llaves { } for , y vuelve a preguntar otra vez al for, hasta que llegue al limite superior Si es falso se realiza la siguiente lnea despus del endfor) incremento

accion

Importante
El while y el for se pueden utilizar para el mismo diagrama de flujo. El for tiene 3 sentencias en una, por eso es mas fcil utilizar Lo que hay que tener cuidado es con la condicin.

Escribir todos los nmeros del 1 al 100.


Algorithm Cien Entero i begin for (i 1 ; 100 ; i+1) { write (i) } end

Algorithm Cien Entero i begin i 1 While ( i <= 100 ) { write (i) i i+1 } end

Estructuras Repetitivas 3.
(hacer - HASTA)
Do { instrucciones } while not( condicion)

{
HASTA

Ejm. Estructuras Repetivas HASTA


i 1 do { a 3*i i i+1 } while not( i=5)

Hacer hasta que i sea igual a 5

Decisin mltiple (segn sea)


Select case (variable) {
Case = condicion1 { instruccion } Case = condicion 2 Case else {
instruccin otro caso

{
HASTA

} }

Omite muchos if

Ejm. Decisin mltiple


Algorithm Dia_Semana Entero numero begin Read(numero) Select case numero { Case = 1 write("Domingo); Case = 2 write(" Lunes); Case = 3 write(" Martes); Case = 4 write(" Miercoles); Case = 5 write(" Jueves); Case = 6 write(" Viernes) Case = 7 write(" Sbado); Case Else write("("El nmero debe estar entre 1 y 7") } end

Fin de Algoritmos. Esta es la base para solucionar cualquier problema en computador.

You might also like