Sunteți pe pagina 1din 30

Fundamentos de Programacin Orientado a Objetos

Estructura de Controles
Condicionales y Repetitivas.
Docente: Ing Sergio Chapoan Chapoan

Estructura Condicional Simple


Evala una expresin lgica (condicin), si es verdadero ejecuta una determinada instruccin o instrucciones
DIAGRAMA DE FLUJO
F
Expresin Lgica

PSEUDOCDIGO Si <Exp. Log.> Entonces


Instruccin 1 Instruccin 2 Instruccin 3 Instruccin n

V
Instruccin 1 Instruccin 2 . . Instruccin n

Fin Si

Determinar si un nmero entero es positivo, negativo o neutro


PSEUDOCDIGO
INICIO //Variables n : Entero r : Cadena //Entrada Leer n //Proceso Si n > 0 Entonces r Nmero Positivo Fin si Si n < 0 Entonces r Nmero Negativo Fin si Si n = 0 Entonces r Nmero Neutro Fin si //Salida Escribir r FIN

Estructura Condicional Doble


Evala una expresin lgica (condicin), si es verdadero ejecuta una o varias instrucciones y si es falsa ejecuta otro grupo de instrucciones
DIAGRAMA DE FLUJO
F
Expresin Lgica

PSEUDOCDIGO Si <Exp. Log.> Entonces


V Instruccin 1 Instruccin 2 Instruccin n

SiNo
Instruccin 1 Instruccin 2 . . Instruccin n Instruccin 1 Instruccin 2 . . Instruccin n

Instruccin 1 Instruccin 2 Instruccin n

Fin Si

En el Restaurante Doa Toa se hace un dscto del 10% para consumos de hasta S/ 100.00 y un dscto de 20% para consumos mayores, ambos casos se aplica un impuesto del 19%. Determinar el monto del dscto, el impuesto y el importe a pagar.

Estructura Condicional Anidada


Son aquellas estructuras que contienen una o ms estructuras, es decir esta permitido colocar dentro de una estructura otra estructura.

DIAGRAMA DE FLUJO
F
Exp. Log.

Exp. Log.

V F
Exp. Log.

Instruccin a1 Instruccin an

Instruccin b1 Instruccin bn

V
Instruccin c1 Instruccin cn

Estructura Anidada: Pseudocdigo


Si <Exp. Log.> Entonces Si <Exp.Log.> Entonces
<Instruccin a1> --------<Instruccin an>

Fin Si SiNo
Si <Exp. Log.> Entonces
<Instruccin b1> --------<Instruccin bn>

Si No
<Instruccin c1> --------<Instruccin cn>

Fin Si Fin Si

Ejemplo01: El Restaurante Mi Barrunto decide ampliar sus ofertas de acuerdo a la siguiente escala de consumo. Determinar el monto del descuento, el importe del impuesto y el total a pagar.
Consumo(S/.) Hasta 100 Mayor a 100 Descuento (%) 10 20

Mayor a 200

30

Ejemplo02: Al ingresar el valor de una temperatura, obtener el tipo de clima segn la siguiente tabla.
Temperatura Temp. < 10 Temp. Entre 10 y 20 Tipo de Clima Frio Nublado

Temp. Entre 21 y 30
Temp. > 30

Calor
Tropical

Ejemplo03: Un Tienda Mayorista tiene dos tipos de clientes, cliente general (G) o el cliente afiliado (A), recibe dos formas de pago al Contado (C) o en Plazos (P), nos piden crear un programa que al ingresar el monto de la compra se obtenga el monto del descuento o el monto del recargo y el total a pagar segn la siguiente tabla.
Tipo Cliente general (G) Cliente Afiliado (A) Descuento de Contado (C) 15% 20% Recargo de Plazos (P) 10% 5%

Estructura Selectiva Mltiple


Permite comparar un valor con diversas alternativas, si la comparacin tiene xito se ejecuta el grupo de instruccin que contenga la alternativa seleccionada y luego sale de la estructura. Se Puede implementar una alternativa por defecto, si no te tiene xito con ninguna, entonces se ejecuta la alternativa por defecto.
DIAGRAMA DE FLUJO
Exp.
F

PSEUDOCDIGO

Valor 1

Instrucciones
F

Valor 2

Instrucciones Si No Instrucciones

En Caso que <Exp.> Sea Caso Valor 1 <Instrucciones> Caso Valor 2 <Instrucciones> Si No <Instrucciones> Fin Caso

Estructura Selectiva Mltiple Sintaxis en Programacin C++


switch (<Exp.>) { Case Valor 1: <Instrucciones>; break; Case Valor 2: <Instrucciones>; break; default: <Instrucciones>; break; }

Estructura Selectiva mltiple usando rangos


La estructura selectiva mltiple permite comparar un valor (igualdad), pero cuando se requiere manejar rangos (>= Y <=), se puede usar una estructura selectiva mltiple similar a la estructura selectiva doble anidada
DIAGRAMA DE FLUJO
V

PSEUDOCDIGO

Exp. Log.

Si
Instrucciones
V

F
Exp. Log.

F
Exp. Log.

Instrucciones
V

Instrucciones

Instrucciones

<Exp. Log.> Entonces <Instrucciones> SiNoSi <Exp. Log.> Entonces <Instrucciones> SiNoSi <Exp. Log.> Entonces <Instrucciones> SiNo <Instrucciones> Fin Si

Estructura Selectiva Mltiple con Rangos

Sintaxis en Programacin C++


if (Exp. Logica) { Instrucciones; }else if (Exp. Logica) { Instrucciones; }else if (Exp. Logica) { Instrucciones; }else { Instrucciones; }

Ejemplo 01: Al ingresar un nmero de un mes, devolver la estacin del ao de acuerdo a la siguiente tabla
Nmero 1, 2, 3 4, 5, 6 7, 8, 9 10, 11, 12 Estacin Verano Otoo Invierno Primavera

Ejemplo 02: Dado la nota promedio de un alumno, obtener la categora, segn la siguiente tabla.
Promedio Categora Psimo Entre 0 y 5

Entre 6 y 10
Entre 11 y 14 Entre 15 y 17 Entre 18 y 20

Malo
Regular Bueno Excelente

Ejemplo 03: Determine el importe a pagar para el examen de admisin de la UNI,


cuyo valor depende del nivel socioeconmico y el colegio de procedencia.

Ejemplo 04: La empresa Molitalia ha establecido diferentes precios a sus productos, segn su calidad. Cree un programa que devuelva el precio a pagar por un producto y una calidad dada.

Estructura Repetitiva Para-HastaHacer


La estructura repetitiva para (for) se usa una variable contador donde se establece el valor inicial (vi), valor final (vf) y el valor de incremento (inc), que determina las veces a repetir la instruccin.
i vf +1
Es la variable contador, donde establecemos el valor inicial. Representa el valor final de la variable contador. Valor de incremento

Docente: Ing Sergio Chapoan Chapoan

Obtener la suma de los pares e impares de los primeros N nmeros naturales positivos

Docente: Ing Sergio Chapoan Chapoan

Estructura Repetitiva Mientras


Permite repetir una o mas instrucciones hasta que la condicin (expresin lgica) sea verdadera, cuando la condicin es falsa sale del bucle.

Docente: Ing Sergio Chapoan Chapoan

Estructura Repetitiva Mientras Anidada


Dentro de la estructura repetitiva es posible colocar una o ms estructuras repetitivas as como otras estructuras.

Docente: Ing Sergio Chapoan Chapoan

Ejemplo01: Obtener la suma de los primeros N nmeros naturales positivos

Docente: Ing Sergio Chapoan Chapoan

Ejemplo02: Dado un rango de nmeros, obtener la cantidad de nmeros enteros que contiene.

Docente: Ing Sergio Chapoan Chapoan

Ejemplo03: Dado un rango de nmeros enteros, obtener la cantidad de nmeros pares que contiene.

Docente: Ing Sergio Chapoan Chapoan

Ejemplo04: Dado un nmero, determinar cuantos dgitos tiene.

Docente: Ing Sergio Chapoan Chapoan

Estructura de Control Repetir Hasta


La estructura repetitiva Repetir Hasta que (en ingls Repeat Until), se ejecuta hasta que se cumpla una condicin determinada que se comprueba al final del bucle. Repite una accin o grupo de acciones hasta que una expresin lgica sea cierta. Un aspecto muy importante de la presente estructura de control es que la expresin lgica no se evala hasta el final con lo cual el bucle se ejecuta al menos una vez por contraposicin a la estructura anterior que poda no ejecutarse ninguna. Pseudocdigo Hacer <Instrucciones> Mientras (Condicin)
Docente: Ing Sergio Chapoan Chapoan

Estructura Repetir Hasta que


Diagrama de Flujo:

Programa en C++: do{ instrucciones; }while (condicin);


Si la expresin lgica arroja un falso en la primer evaluacin, las acciones abarcadas por la estructura ya habrn sido ejecutadas. Por tanto siempre las acciones de esta estructura sern realizadas al menos una vez.

Comparacin Hacer Mientras / Repetir Hasta

Ejemplo01: Realizar la suma de los n primeros nmeros enteros con un bucle do.while mostrndose por pantalla las diferentes sumas sucesivas, as como el resultado final
PSEUDOCODIGO INICIO //Variables Digito, suma, n : entero suma=0 //Entrada Leer n //Proceso Hacer suma suma + digito Escribir Suma Parcial Hasta, digito, es,suma digito digito + 1 Mientras(digito <=n) //Salida Escribir El resultado final es, suma FIN
Docente: Ing Sergio Chapoan Chapoan

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