2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

12

Click here to load reader

description

algoritmos , diagrama de flujo, pseudocódigo

Transcript of 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

Page 1: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

1

ProgramaciónIng. Eléctrica y Electrónica

Unidad 2- 1“Resumen de estructuras de

control”

Profesor

Ing. Orlando Barcia Ayala

Website: www.orlandobarcia.com

E-mail: [email protected]

Cursos online: www.orlandobarcia.com/cursos

Foro online: www.ingenieroweb.com

Page 2: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

2

Agenda 1

• Estructuras de control• Ejercicios

Estructuras de control, en pseudocodigo

– Decisión simple– Decisión doble– Decisión múltiple– Repetitivas

Page 3: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

3

Decisión simple (si)

If (condicion) {

Si se cumple esto. ENTONCESrealizar 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 línea después del } inicio

IF ….

{ inicio del bloque

} fin del bloque

IF (si)

Page 4: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

4

Decisión simple. Ejemplo

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

endif

Ejemploa← 4b ← 3

If (a > b){

write(“salir a jugar”)}

Decisión doble (si ,en caso contrario)If (condición)

{

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 después sale (siguiente línea después del endif })

Si es falso (en caso contrario) se realiza entre el else y fin de la llave }, después sale (siguiente línea después del endif)

inicio

Page 5: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

5

Decisión Doble. Ejemplo

a ← 5if (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í

}CONDICION?

ACCION

SI

NO

While , es mientras en español

Nota :

Si es verdadero se realiza lo que esta entre llaves del while { y } , y vuelve a preguntar hacia el while, hasta que la condición sea falsa

Si es falso se realiza la siguiente línea después del })

inicio

Page 6: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

6

Pseudocodigobegina ← 0

While ( a < 10){ a�a+1

write a}end

Hacer Mientras a sea menora�a+1 y mostrar

end

begin

a ← 0

a< 10

a ←a+ 1V

F

Write a

Diagrama de flujo. ¿Que hace ?

Es un contador que muestra de 1 a 10

A <=10 muestra 11

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

CONTADOR

num � 0

…….

num � num +1

ACUMULADOR

suma � 0

…….

suma � suma +num

Análisis del problema

Entre 10, 13, 16 hay diferencia de 3.

Se utiliza un contador de 3 en 3

Para almacenar los números, utilizo un acumulador.

Cuento y acumulo hasta que la condición no se cumpla

Page 7: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

7

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

suma ←suma + num

num ← num + 3

VF

Write num

Write sumanum <=19

Realizar la tabla de seguimiento o control

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

suma ←suma + num

num ← num + 3

V

F

Write num

Write suma

num <=19

Diagrama de flujo

pseudocodigo

Begin

Suma←0

num ←10

While ( num <=19)

{ Write num

Suma ← suma + num

num ← num +3

}

Write suma

end

Page 8: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

8

Elaborar y diagrama que, lea un numero y muestre un mensaje, solamente ese número de veces

CONTADOR

j � 1

…….

j � j +1

begin

j � 1

J=n j � j+1

endV

Write “Mensaje” j

F

Write “Mensaje” j

Análisis del problema

Ir contando uno a uno hasta que sea igual al numero ingresado

variablevariable

constante

Read n

• Realizar el pseucodigo del ejercicio anterior

Page 9: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

9

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.

}

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 línea después del endfor)

inicial

condicion

incremento

accion

V

F

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 fácil utilizar

• Lo que hay que tener cuidado es con la condición.

Page 10: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

10

Algorithm CienEntero ibegin

for (i � 1 ; 100 ; i+1){ write (i)}

end

Algorithm CienEntero ibegin

i � 1While ( i <= 100 )

{ write (i)i � i+1

}end

Escribir todos los números del 1 al 100.

Estructuras Repetitivas 3. (hacer - HASTA)

Do{

instrucciones} while not( condicion){

HASTA

Page 11: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

11

Ejm. Estructuras Repetivas HASTA

i � 1do

{a � 3*ii � i+1

}while not( i=5)

Hacer hasta que i sea igual a 5

{

HASTA

Decisión múltiple (según sea)

Select case (variable) { Case = condicion1

{

instruccion

}

Case = condicion 2

Case else

{

instrucción otro caso

}

}

Omite muchos if

Page 12: 2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

12

Ejm. Decisión múltipleAlgorithm Dia_Semana

Entero numerobeginRead(numero)

Select case numero{

Case = 1write("Domingo“);

Case = 2write(" Lunes“);

Case = 3write(" Martes“);

Case = 4write(" Miercoles“);

Case = 5write(" Jueves“);

Case = 6write(" Viernes“)

Case = 7write(" Sábado“);

Case Elsewrite("("El número debe estar entre 1 y 7")

}end

• Fin de Algoritmos.• Esta es la base para solucionar cualquier

problema en computador.