+ All Categories
Home > Documents > FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

Date post: 22-Jan-2016
Category:
Upload: nita-zacarias
View: 213 times
Download: 1 times
Share this document with a friend
21
FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.
Transcript
Page 1: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3

SENTENCIAS DE CONTROL

Ing. José Antonio Poma G.

Page 2: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Estructuras selectivas

Son estructuras de control que nos permiten tomar decisiones lógicas.

Consiste en evaluar una expresión, y con un resultado obtenido realizar una determinada acción.

Las estructuras selectivas pueden ser de tres tipos. Alternativa Simple – sentencia if Alternativa doble – if…else Alternativa multiple

Sentencia if anidadasSentencias switch

Page 3: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3SENTENCIAS IF

sentencia condicional simple Se trata de una sentencia que, tras evaluar una

expresión lógica, ejecuta una serie de sentencias en caso de que la expresión lógica sea verdadera. Su sintaxis es

if(expresión lógica) {sentencias .}

Page 4: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Ejemplo

if(nota>=5){printf(“Aprobado”);aprobados++;

}

Ilustración 1, Diagrama de actividad del if simple

Page 5: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3sentencia condicional compuesta

Page 6: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3sentencia condicional compuesta

Es igual que la anterior, sólo que se añade un apartado else que contiene instrucciones que se ejecutarán si la expresión evaluada por el if es falsa. Sintaxis:

if(expresión lógica){sentencias .}else {sentencias }

Page 7: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Ejemplo

if(nota>=5){printf(“Aprobado”);aprobados++;

}else {printf(“Suspensos”); suspensos++;

}

Page 8: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Anidación

Dentro de una sentencia if se puede colocar otra sentencia if. A esto se le llama anidación y permite crear programas donde se valoren expresiones complejas. Por ejemplo en un programa donde se realice una determinada operación dependiendo de los valores de una variable.

if (x==1) {sentencias … }else {

if(x==2) {sentencias … }else {

if(x==3) {sentencias … }

}}

Page 9: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Anidación

Si-sino-si anidada (if-else-if): cuando se anidan instrucciones if, se debe tener en cuidado de se saber en todo momento la else que coresponde con cada if.

Page 10: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3if – else - if

Si-sino-si (if-else-if): se utiliza la combinacion de instrucciones if-else-if para realizar comparaciones sucesivas multiples.

Page 11: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3

Page 12: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3operador condicinal

El operador condicinal (?:) : la instrucción condicional ? Proporciona una forma rápida de escribir una condición de evaluacion. El operador se utiliza para sustituir una instrucción if-else equivalente.

Page 13: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3SENTENCIAS SWITCH

Se trata de una sentencia que permite construir alternativas múltiples. Pero que en el lenguaje C está muy limitada. Sólo sirve para evaluar el valor de una variable entera (o de carácter, char).

Tras indicar la expresión entera que se evalúa, a continuación se compara con cada valor agrupado por una sentencia case. Cuando el programa encuentra un case que encaja con el valor de la expresión se ejecutan todos los case siguientes.

Por eso se utiliza la sentencias break para hacer que el programa abandone el bloque switch. Sintaxis:

Page 14: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3SENTENCIAS SWITCH

switch(expresión entera){ case valor1: sentencias

break; /*Para que programa salte fuera del switch de otro modo atraviesa todos los demás case */ case valor2: sentencias

... default: sentencias }

Page 15: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3SENTENCIAS SWITCHswitch (diasemana) {

case 1: printf(”Lunes”);

break; case 2:

printf(”Martes”);break; case 3:

printf(”Miércoles”);break; case 4:

printf(”Jueves”);break; case 5:

printf(”Viernes”);break; case 6:

printf(”Sábado”);break; case 7:

printf(”Domingo”);break; default: std::cout<<”Error”;}

Page 16: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Selección de casos (switch - case)

Selección de casos (switch - case) : para la evaluación de una variable o una expresión frente a varios valores, se podrían utilizar instrucciones if-else-if anidadas o una instrucción switch

Page 17: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3

Page 18: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Tarea

1. ¿Cuáles y cuántos son los números primos comprendidos entre 1 y 1000?

2. Calcular el máximo de números positivos introducidos por teclado, sabiendo que metemos números hasta que introduzcamos uno negativo. El negativo no cuenta.

3. Determinar cuales son los múltiplos de 5 comprendidos entre 1 y N.

Page 19: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Solución

Algoritmo n_primos Const Primero=1 Limite=1000 Var cont, i, j: entero primo: boolean Inicio Cont 0 Desde i= primero hasta limite primo verdadero j 2 mientras (i>j) y (primo =verdadero) Si i mod j = 0 Entonces primo falso Sino j j + 1 Fin si Fin mientras Si primo = verdadero Entonces escribir i” “ Cont cont + 1 Fin si Fin desde Escribir “Entre “primero” y “limite” hay “cont” nº primos” Fin

Page 20: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Solución

Algoritmo maximo Var Num, max: entero Inicio Max 0 Escribir “Introduzca nº positivos y para acabar introduzca uno negativo” Leer num Mientras num >=0 Si num >max Entonces max num Fin si Leer num Fin mientras Escribir “El mayor número es” max Fin

Page 21: FIEE - 2013 SENTENCIAS DE CONTROL Ing. José Antonio Poma G.

FI

EE

-

2

01

3Solución

Algoritmo multiplos Var i: entero Inicio Desde i=1 hasta n Si i mod 5 =0 Entonces escribir i Fin si Fin desde Fin


Recommended