Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sesión 04
Práctica Dirigida.
Logros de la unidad 1
Aprender a resolver problemas de programación mediante diagramas y el lenguaje de programación
C++
Informática
ESTRUCTURAS SELECTIVAS
Estructuras Selectivas
if (condición 1)
sentencia 1;
if (condición) else
if (condición) sentencia 1; if (condición 2)
sentencia ; else sentencia 2;
sentencia 2; ……
else
sentencia n;
Ejemplo de Estructura de Selección Simple - If
Int main()
{ n=1
int n, a, b, x;
a = 1;
b = 99;
cin >> n
……
if (n>0)
x = b; X = 99
else
x = a;
cout <<x;
........
}
Informática
ESTRUCTURAS DE SELECCIÓN
MÚLTIPLE
Estructura de Selección Múltiple - SWITCH
Aunque con la estructura if ... else if se pueden realizar comprobaciones
múltiples, es mejor utilizar una estructura mejor preparada.
switch (variable) {
case constante1:
secuencia de sentencias;
break;
case constante2:
secuencia de sentencias;
Variable = Constante 2
break;
case constante3:
secuencia de sentencias;
break;
...
default:
secuencia de sentencias;
continue;
}
Ejemplo de Estructuras Selectiva Múltiple - SWITCH
Con switch sólo se puede comprobar
por igualdad, mientras que con if switch (letra)
puede ser con cualquier operador {
relacional. case 'a':
case 'e':
No se puede probar más de una case 'i':
constante por case.
case 'o':
case 'u':
La forma como se puede simular el
último punto, es no teniendo numvocales++;
sentencias asociados a un case, es break;
decir, teniendo una sentencia nula case ' ':
donde sólo se pone el caso, con lo que numesp++;
se permite que el flujo del programa break;
caiga al omitir las sentencias, como se
muestra a continuación: default:
numotras++;
break;
}
Estructuras secuencial y selectiva
si <condición> entonces
acción 1
si_no
acción 2
fin_si
Diagrama N-S
14
Estructura Selectiva Múltiple
Diagrama Flujo
Pseudocódigo
Diagrama N-S
Estructura Anidada
Pseudocódigo
• Tanto las estructuras selectivas
si <condición1> entonces
<acciónes1>
como las repetitivas pueden ser
si_no anidadas, e introducidas unas
si <condición2> entonces en el interior de las otras.
<acciones2>
si_no
si <condición3> entonces
<acciones3>
si_no
<accionesX>
fin_si
fin_si
fin_si
Ejercicios 01
Leer tres números selectivos e imprimir el número mayor de los tres
.
Inicio
Leer num1, num2,num3 Lenguaje C++:
Si (num1>num2) and (num1 >num3) entonces
Mayor = num1
Si no
Si ((num2>num1) and (num2 >num3) entonces
Mayor = num2
Si no
Mayor = num3
Fin-si
Fin-si
Imprimir Mayor
Fin
Fin de Selección
Ejercicio 04 : ¿Qué número es?
Ejercicio 05
Diseñe una solución que permita leer un valor entero. Suponer que el número es
un día de la semana. Suponer que 0 corresponde a Domingo, 1 corresponde a
lunes y así sucesivamente.
Imprimir el nombre del día de hoy.
Ejercicio 06
Diseñe una solución que permita leer dos valores enteros. Si el primero es menor
que el segundo, que imprima el mensaje ``Arriba''. Si el segundo es menor que el
primero, que imprima el mensaje ``Abajo''. Si los números son iguales, que imprima
el mensaje ``igual''. Si hay un error en la lectura de los datos, que imprima un
mensaje conteniendo la palabra “Error, te equivocaste'';
Ejercicio 07
Diseñe una solución que permita controlar el peso de un aro en gramos.
El peso del aro debe ser de 14 gr.
Con una tolerancia de 2 gr.
El algoritmo debe mostrar, los comentarios;
“Peso Exacto”.
“Peso en Tolerancia”.
“Falto para que pase”, si el peso es menor que 12 gr.
“No pasa por poco”, si el peso es mayor a 16 gr.
En cualquier otro caso, debe mostrar el mensaje:
“Error Grave. Revisar el proceso”.
Muestre los resultados en forma adecuada.
Ejercicios 8 Estructuras Condicionales - SWITCH
Ejercicio 08
Diseñe una solución que permita leer dos caracteres, e imprima su valor cuando se
pueda interpretar como un número hexadecimal.
Aceptar letras mayúsculas y minúsculas para los valores del 10 al 15.
Ejercicio 09
Diseñe una solución que permita leer 3 números enteros representando la fecha
como día, mes, año, y mostrar la fecha del día anterior.
Por ejemplo para una entrada como: 1 3 2018
La salida será: Fecha anterior a 1-3-2018 es 28-2-2018
La tienda ofrece distintos tipos de mercancías, algunas de las cuales se clasifican como artículos
estándar por que son de uso común y no requieren de técnicas creativas de venta; además, hay
artículos que son altamente remunerados pero difíciles de vender.
Los compradores también se clasifican. Algunos se conocen como compradores regulares, pues
hacen transacciones tan a menudo que no se requiere de hacerles venta creativa. Sin embargo,
la mayoría de los clientes hacen pocas transacciones dentro de la tienda, y es probable que
entren, compren algo y no vuelvan a ser vistos.
Si un empleado asalariado vende un artículo extra, recibe una comisión del 10% a menos que el
artículo tenga un precio mayor de $10,000, en cuyo caso recibe una comisión del 15%.
26
Ejercicio 05 : Pseudocódigo
27
Ejercicio 05 : Diagrama de Flujo
Ejercicio 05 : Diagrama N-S
Informática
ESTRUCTURAS REPETITIVAS
Ejercicio
Inicio
Sum = 0
Leer Nom
Para i = 1 hasta 7 de 1 en 1 Hacer
Leer nota
Sum = sum + nota
Fin_para
Prom = sum/7
Imprimir prom
Fin
Iteración
Mecanismos de C para repetir un conjunto de instrucciones hasta que se cumple cierta
condición.
Diagrama de Flujo
Pseudo-Lenguaje
Imprimir “Contador”
X=0
X = 30
X = X +1
Imprimir X
Estructuras de Repetición
Pseudo-Lenguaje
Diagrama de Flujo
Inicio
x = 0 x = 0
suma = 0 resultado = 0
Para (x=1;x<=1000;x++) Hacer
suma = suma + x
mostrar x
Fin_Hacer no
“La suma es: suma” x=<1000
Fin
sí
suma=suma+x
Pseudo-Lenguaje
Ejercicio 2: Sumar los múltiplos de del 3 menores de 1000.
Desarrollo
Inicio
x=0
resultado = 0
Para (x=1;x<=1000;x=x+3) Hacer
resultado = resultado + x
Fin_Para
“La suma es:”; resultado
Fin
Ejercicios propuestos Pseudo-Lenguaje & Diagrama de Flujo
Ejercicio 03:
Hacer un algoritmo que calcule el promedio de un grupo
de n estudiantes y lo compare con el promedio de otro
grupo de m estudiantes.
Entradas:
Número de estudiantes del primer grupo.
Notas del primer grupo.
Número de estudiantes del segundo grupo.
Notas del segundo.
Salidas:
“El Ganador es el Grupo ….
“Con una diferencia de …… puntos.
Ejercicios propuestos Pseudo-Lenguaje & Diagrama de Flujo
Ejercicio 04:
Hacer un algoritmo que calcule el promedio ponderado
de Claudia, paro los n cursos que lleva en el semestres.
Ejemplo Entrada:
Curso 1: 18 Créditos: 2
Curso 2: 16 Créditos: 2
Curso 3: 14 Créditos: 3
Curso 4: 12 Créditos: 3
Curso 5: 10 Créditos: 4
Curso 6: 08 Créditos: 4
Ejemplo Salida:
Promedio Ponderado: 12
Estado: Aprobado
Ejercicios propuestos Pseudo-Lenguaje & Diagrama de Flujo
Ejercicio 05:
Hacer un algoritmo que calcule la sumatoria, el producto
y el promedio de los múltiplos de n, menores de 15, n
es un numero ingresado por teclado, entero, mayor que
1 y menor o igual a 5.
Ejemplo Entrada:
Ingrese el valor de n: 3
Ejemplo Salida:
El acumulado es: 45
El producto es: 29160
El promedio es: 9
Ejercicios propuestos Pseudo-Lenguaje & Diagrama de Flujo
Ejercicio 06:
Hacer un algoritmo que calcule la diferencia entre el
factorial de n y el factorial de m.
n y m son números enteros, ingresado por teclado,
mayor que 1 y menor a 10.
Ejemplo Entrada:
Ingrese el valor de n: 3
Ingrese el valor de m: 4
Ejemplo Salida:
El factorial de 3 es: 6
El factorial de 4 es: 24
La diferencia es: 18
Ejercicios propuestos Pseudo-Lenguaje & Diagrama de Flujo
Ejercicio 07:
Escribir un programa que lea 5 números y encuentre el promedio, el máximo y
el mínimo de esos valores.
Ejercicios propuestos Pseudo-Lenguaje & Diagrama de Flujo
Ejercicio 08:
Leer tres valores representando lo siguiente:
El capital (número entero de pesos)
Una tasa de interes en porcentaje (flotante)
y un número de años (entero).
Calcular los valores de la suma del capital y el interes compuesto para un período dado de años. Para cada año
el interes es calculado como:
interes = capital * tasa_interes / 100;
el cual se suma al capital
capital += interes;
Imprimir los valores de moneda con una precisión de dos decimales. Imprimir los valores del interés compuesto
para cada año al final del período.
La salida puede ser como la siguiente:
Capital inicial 35000.00 con tasa del 12.50 en 10 años
Año Interes Suma
-----+-----------+---------
1 4375.00 39375.00
2 4921.88 44296.88
3 5537.11 49833.98
4 6229.25 56063.23
5 7007.90 63071.14
6 7883.89 70955.03
7 8869.38 79824.41
8 9978.05 89802.45
9 11225.31 101027.76
10 12628.47 113656.23
Para terminar
¿Qué hemos aprendido?
¿Qué sentencias de control condicional conoces?
¿Por qué es útil lo aprendido?
George Washington