Tema 05 condicional

10
Universidad San Pedro Filial Lima SAD Barranca Escuela: Ingeniería Informática y de Sistemas Curso: Algoritmos Ciclo: II Docente: Ing. CIP Jorge Pariasca León ESTRUCTURA DE CONTROL CONDICIONAL SIMPLE (SELECTIVA SIMPLE) Una sentencia condicional simple, es parte de un algoritmo que permite decidir bajo una cierta condición si una instrucción o sentencia se va a ejecutar. En general, se escribe: PSEUDOCODIGO: DIAGRAMA DE FLUJO Algoritmo Título Si condición Entonces acciones_por_verdadero; FinSi FinAlgoritmo Ejemplo: Se quiere diseñar el algoritmo de un programa que: 1º) Pida por teclado la nota (dato real) de una asignatura. 2º) Muestre por pantalla: "APROBADO", en el caso de que la nota sea mayor o igual que 11. El algoritmo en pseudocódigo y diagrama de flujo puede ser: Ejercicio 1 - Cambio de signo: Escribir un programa que: 1º) Pida por teclado un número (dato entero). 2º) Muestre por pantalla el número introducido, pero, cambiado de signo y, sólo en el caso de que el número no sea mayor o igual que cero. En pantalla:

Transcript of Tema 05 condicional

Page 1: Tema 05 condicional

Universidad San PedroFilial Lima SAD Barranca

Escuela: Ingeniería Informática y de SistemasCurso: Algoritmos Ciclo: IIDocente: Ing. CIP Jorge Pariasca León

ESTRUCTURA DE CONTROL CONDICIONAL SIMPLE (SELECTIVA SIMPLE)

Una sentencia condicional simple, es parte de un algoritmo que permite decidir bajo una cierta condición si una instrucción o sentencia se va a ejecutar. En general, se escribe:

PSEUDOCODIGO: DIAGRAMA DE FLUJOAlgoritmo Título

Si condición Entonces acciones_por_verdadero;FinSi

FinAlgoritmo

Ejemplo: Se quiere diseñar el algoritmo de un programa que:1º) Pida por teclado la nota (dato real) de una asignatura.2º) Muestre por pantalla:

"APROBADO", en el caso de que la nota sea mayor o igual que 11.

El algoritmo en pseudocódigo y diagrama de flujo puede ser:

Ejercicio 1 - Cambio de signo: Escribir un programa que:1º) Pida por teclado un número (dato entero).2º) Muestre por pantalla el número introducido, pero, cambiado de signo y, sólo en el caso de que el número no sea mayor o igual que cero.

En pantalla:

Page 2: Tema 05 condicional

Universidad San PedroFilial Lima SAD Barranca

Escuela: Ingeniería Informática y de SistemasCurso: Algoritmos Ciclo: IIDocente: Ing. CIP Jorge Pariasca León

Ejercicio 2 - Media aritmética: Escribir un programa que:1º) Pida por teclado dos números (datos enteros).2º) Muestre por pantalla la media aritmética de los números introducidos, pero, sólo en el caso de que ambos números sean mayores que cero.

En pantalla:

Page 3: Tema 05 condicional

Universidad San PedroFilial Lima SAD Barranca

Escuela: Ingeniería Informática y de SistemasCurso: Algoritmos Ciclo: IIDocente: Ing. CIP Jorge Pariasca León

ESTRUCTURA DE CONTROL CONDICIONAL COMPUESTA (CONDICIONAL DOBLE O SELECTIVA DOBLE)

Además de ejecutar las sentencias en el caso que se cumpla la condición, podemos explicitar las instrucciones en el caso que no se cumpla dicha condición. En general, se escribe:

PSEUDOCODIGO DIAGRAMA DE FLUJOAlgoritmo Título

Si expresión_lógica Entoncesacciones_por_verdadero;

Sinoacciones_por_falso;

FinSiFinAlgoritmo

Ejemplo: Se quiere diseñar el algoritmo de un programa que:1º) Pida por teclado la nota (dato real) de una asignatura.2º) Muestre por pantalla:

"APROBADO", en el caso de que la nota sea mayor o igual que 11. "SUSPENDIDO", en el caso de que la nota sea menor que 11.

Para resolver el problema planteado se puede escribir el siguiente algoritmo:

Cuando en un algoritmo existe una condición de la cual depende que a continuación se ejecuten unas instrucciones u otras, se dice que existe una bifurcación.

Ejercicio 1 - Suma de dos números (Alternativa doble): Escribir un programa que:

1º) Pida por teclado dos números (datos enteros).2º) Calcule la suma de los números introducidos por el usuario.3º) Muestre por pantalla:

"LA SUMA SÍ ES MAYOR QUE CERO.", en el caso de que sí lo sea.

"LA SUMA NO ES MAYOR QUE CERO.", en el caso de que no lo sea.

En pantalla:Introduzca primer número (entero): 14Introduzca segundo número (entero): -17LA SUMA NO ES MAYOR QUE CERO.

Page 4: Tema 05 condicional

Universidad San PedroFilial Lima SAD Barranca

Escuela: Ingeniería Informática y de SistemasCurso: Algoritmos Ciclo: IIDocente: Ing. CIP Jorge Pariasca León

ANIDAMIENTO DE ESTRUCTURAS CONDICIONALESLas instrucciones condicionales pueden escribirse una dentro de otra. A este hecho se le conoce como anidamiento. Las instrucciones condicionales permiten realizar las siguientes combinaciones de anidamiento:

Doble en doble. Doble en simple. Simple en simple. Simple en doble.

De ellas, vamos a estudiar, como ejemplo, la siguiente combinación: Doble en doble.

Page 5: Tema 05 condicional

Universidad San PedroFilial Lima SAD Barranca

Escuela: Ingeniería Informática y de SistemasCurso: Algoritmos Ciclo: IIDocente: Ing. CIP Jorge Pariasca León

En pseudocódigo, para anidar una alternativa doble en otra, se utiliza la sintaxis:

Si ( <expresión_lógica_1> ) Entonces

/* Inicio del anidamiento */ Si ( <expresión_lógica_2> ) Entonces <bloque_de_instrucciones_1>; Sino <bloque_de_instrucciones_2>; FinSi /* Fin del anidamiento */

Sino <bloque_de_instrucciones_3>; FinSi

O también: Si ( <expresión_lógica_1> ) Entonces <bloque_de_instrucciones_1>; Sino

/* Inicio del anidamiento */ Si ( <expresión_lógica_2> ) Entonces <bloque_de_instrucciones_2>; Sino <bloque_de_instrucciones_3>; FinSi /* Fin del anidamiento */

FinSi

Ejemplo: Se quiere diseñar el algoritmo de un programa que:1º) Pida por teclado la nota (real) de una asignatura.2º) Muestre por pantalla:

"APTO", en el caso de que la nota sea mayor o igual que 5 y menor o igual que 10. "NO APTO", en el caso de que la nota sea mayor o igual que 0 y menor que 5. "ERROR: Nota incorrecta.", en el caso de que la nota sea menor que 0 o mayor que 10.

Una solución al problema es:

Como se puede observar, el anidamiento de instrucciones alternativas permite ir descartando valores hasta llegar al bloque de instrucciones que se debe ejecutar.

Page 6: Tema 05 condicional

Universidad San PedroFilial Lima SAD Barranca

Escuela: Ingeniería Informática y de SistemasCurso: Algoritmos Ciclo: IIDocente: Ing. CIP Jorge Pariasca León

Ejercicios propuestos:1. Ingresar el lado de un cuadrado. Calcular y mostrar su área. Si el área del cuadrado resulta menor que 100, se

deberá visualizar el mensaje “Cuadrado pequeño”.2. Calcular el sueldo de un trabajador conociendo el número de horas trabajadas y su tarifa horaria, sabiendo

que se debe descontar un 20 % del sueldo por concepto de impuestos si éste es mayor de S/ 1600 soles. Mostrar el descuento y el sueldo respectivo.

3. Ingresar el precio de compra y el precio de venta de un determinado producto. También ingresar la cantidad de artículos que una persona desea comprar de dicho producto. Calcular y mostrar el monto total a pagar por el comprador y la utilidad del vendedor, sabiendo que si se compran más de 10 artículos se realiza un descuento del 2 %.

4. Ingresar la edad de una persona. Si la edad es menor de 18 se deberá mostrar “Menor de edad”, caso contrario se mostrará el mensaje “Mayor de edad”.

5. Escriba un programa que pida un número y a continuación escriba si es par o impar.6. Calcular el mayor de dos números leídos del teclado y visualizarlo en pantalla. 7. Calcular el mayor de tres números leídos del teclado y visualizarlo en pantalla. 8. Modificar el programa anterior para mostrar también el menor en la misma solución.9. Dado un número introducido por el usuario, indicar si éste es positivo, negativo o nulo. 10. Ingrese el monto a pagar por la compra de varios productos. A dicho monto ingresado, deberá agregarle el

IGV. En caso que el monto a pagar incluido IGV sea mayor a S/ 500 soles se aplicará un descuento de 8 %, sino un descuento de 2 %.

11. Determinar en qué estado está el agua en función de su temperatura. Si es negativa el estado será sólido, si es menor que 100 será líquido y si es mayor o igual que 100 será gas. Pedir al usuario el valor de la temperatura.

12. Calcular el promedio de calificaciones de un alumno. Las dos primeras notas valen 30% cada una y la tercera 40%. Si el promedio es mayor o igual a 13 imprimirá aprobado, de lo contrario dirá reprobado. Si el promedio es igual a 20, dirá alumno excelente. Se desea imprimir el nombre del alumno, código de la materia y el promedio obtenido.

13. Desarrollar una solución que permita determinar cómo se clasifica un ángulo ingresado por teclado. Los ángulos se clasifican de la siguiente manera:

ángulo = 0 Nulo0 < ángulo <90 Agudoángulo = 90 Recto90 < ángulo < 180 Obtusoángulo = 180 Llano180 < ángulo < 360 Cóncavo ángulo = 360 Completo

14. Desarrollar una solución que permita ingresar la temperatura promedio (tp) de un día y permita mostrar el tipo de clima de acuerdo a la siguiente tabla:

Temperatura (tp) Tipo de climatp <= 9 Frío

9 < tp <=17 Nublado17 < tp <= 27 Caluroso

tp > 27 Tropical