Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Objetivo General:
Aplicar las estructuras selectivas múltiples, anidadas y repetitivas en C#, haciendo uso de
Windows Forms para la resolución de problemas.
Objetivos Específicos:
Aplicar las estructuras selectivas múltiples y anidadas para solución de problemas en WF.
Aplicar los conceptos relativos a las estructuras iterativas creando soluciones a diferentes
problemas.
Aplicar la sentencia for, while y do while en C#
Aplicar la programación orientada a eventos
Introducción:
Esta Guía consta de tres partes. En la primera parte, se presenta la aplicación de estructuras
selectivas múltiples y anidadas, en la segunda la aplicación de estructuras repetitivas for,
while y do while de C# y en la tercera parte, se exponen algunos Ejercicios Propuestos para
practicar los conocimientos adquiridos.
Metodología:
Esta Guía está diseñada para que el estudiante, previo a la sesión de laboratorio, desarrolle
los ejemplos propuestos en la Parte I y II, de tal forma que, el día del laboratorio, el docente
resuelva las dudas de los estudiantes y asigne tres ejercicios de la Parte III por pareja de
trabajo, para ser resueltos durante la semana. El desarrollo de los ejercicios restantes es
responsabilidad de los estudiantes.
if (condicion1)
{
Bloque de instrucciones que se ejecutan si la condicion1 es true
1
}
else if(condicion2)
{
Bloque de código que se ejecuta si la condicion2 es true
}
else if(condición 3)
{
Bloque de código si la condición es true
}
else
{
Bloque de código que se ejecuta si ninguna condición
previa fue true
por default, este bloque del else puede ser omitido
sin problemas
}
Ejemplo 1
Enunciado Problema: Crear un programa en C# que al ingresar el valor de la temperatura,
despliegue el tipo de clima, según la siguiente tabla:
2
Programación del Formulario:
3
b) Estructuras Selectivas Anidadas
if(condicion1)
{
if(subcondición1)
{
Este bloque de instrucciones corresponde a un if anidado
}
//Termina if (subcondicion1)
}
//Termina if (condicion1)
else
{
Se ejecutará si condicion1 es falsa
}
Ejemplo 2
Determinar si un carácter de entrada es una letra minúscula, una letra mayúscula o un número.
Si estas tres condiciones son falsas (false), el carácter no es un carácter alfanumérico. En
el ejemplo se muestra un mensaje para cada caso:
4
La ejecución se observará de la siguiente manera:
Instrucción switch
Permite ejecutar unos u otros bloques de instrucciones según el valor de una cierta expresión.
Su sintáxis es:
switch (<expresion>)
{
case <valor1>: <bloque1>
break;
case <valor2>: <bloque2>
break; . . .
5
default: <bloqueDefault>
break;
}
6
Parte III. : Estructuras Repetitivas
7
Las estructuras repetitivas permiten que un procedimiento, instrucción o conjunto de
instrucciones, pueda repetirse mientras se cumpla una condición determinada.
En la POO será menor la cantidad de ocasiones en las cuales se utilicen ciclos repetitivos para
controlar cuando repetir o detener un ciclo, ya que el uso de botones minimiza esa actividad,
sin embargo para tener presente el uso de estas estructura se presenta este repaso.
Se le llama bucle o ciclo a todo proceso que se repite cierto número de veces dentro de un
programa.
Bucle for
Es una estructura de control de repetición que permite escribir de manera eficiente un bucle
que es necesario ejecutar un número determinado de veces.
Un bucle for es útil cuando se sabe cuántas veces una tarea se va a repetir.
8
La programación del formulario se ha realizado sin hacer ninguna clase adicional al form ya
que el único valor a guardar sería el número, por lo que el ejemplo es meramente demostrativo
del uso del for:
9
La ejecución del formulario se podría visualizar así: Ingresar el número 7, dar clic al botón
Calcular y luego a cada ComboBox. Finalmente dar clic a Nuevo y Salir:
10
Cuando se utilizan estructuras repetitivas es importante tener claros los siguientes conceptos:
Contador: es una variable entera que se incrementa (+) o decrementa (-). Por ejemplo:
Acumulador: es una variable de cualquier tipo que almacena valores variables. Por ejemplo:
Bucle while
Es una estructura de control iterativa que permite repetir una o más instrucciones mientras la
condición (expresión lógica) sea verdadera. Cuando la condición es falsa, sale del bucle.
int i = 1, nota;
int n = Convert.ToInt32(txtn.Text);
while
(i<=n)
{
nota = Convert.ToInt32(txtnota.Text);
i++;
11
}
Programación de la Clase:
Archivo: Factorial.cs
namespace Guia8
{class Factorial
{
private static int numero;
//número al que se le calculará el factorial
public int Numero
{
get
{
return numero;
}
set
{
numero = value;
}
}
public double CalcularFactorial()
{
//Se ha considerado un número de tipo double para guardar el resultado
//del factorial para procesar números más grandes
double factorial = 1;
while (numero != 0)
{
factorial = factorial * numero;
numero = numero - 1;
12
}
return factorial;
}
} }
Bucle do-while
Es una estructura de control iterativa que ejecuta al menos una vez su bloque repetitivo, el cual
se repetirá siempre que la condición sea verdadera.
do {
nota = Convert.ToInt32(txtnota.Text);
} while (nota<0||nota>10);
Estructuras Selectivas
2. Se necesita calcular el bono anual de los empleados para lo cual se aplica el siguiente
procedimiento
13
Se ingresa el valor ganado por hora de un empleado. Posteriormente se ingresa el nombre del
empleado, la antigüedad y la cantidad de horas trabajadas en el mes. Se pide calcular el
importe a cobrar teniendo en cuenta que al total que resulta de multiplicar el valor hora por la
cantidad de horas trabajadas, hay que sumarle la cantidad de años trabajados multiplicados
por $30, y al total de todas esas operaciones restarle el 13% en concepto de descuentos.
Imprimir el recibo correspondiente con el nombre, la antigüedad, el valor hora, el total a cobrar
en bruto, el total de descuentos y el valor neto a cobrar.
4. Construir un programa que calcule el índice de masa corporal de una persona (IMC = peso
[kg] /altura [m]) e indique el estado en el que se encuentra esa persona en función del valor de
IMC:
6. Construir un programa que simule el funcionamiento de una calculadora que puede realizar
las cuatro operaciones aritméticas básicas (suma, resta, producto y división) con valores
numéricos enteros. El usuario debe especificar la operación con el primer carácter del primer
parámetro de la línea de comandos: S o s para la suma, R o r para la resta, P o p para el
producto y D o d para la división. Los valores de los operandos se deben indicar en el segundo
y tercer parámetros.
Nota: Se recomienda el empleo de una sentencia switch
ESTRUCTURAS REPETITIVAS:
1. Calcular el nuevo salario de 15 empleados ingresando en una sola casilla el salario de los
empleados de una empresa, sabiendo que si el salario actual es menor que $1000.00 se le
aumentará el 15% y en caso contrario, se le aumenta el 12%.
14
4. Ingresar una cantidad N de números y de esa cantidad obtener la media, la mediana y la
moda, y mostrar los resultados.
5. Diseñe y codifique un programa que lea 10 números enteros y luego muestre cuantos
valores ingresados fueron múltiplos de 3 y cuantos de 5. Tener en cuenta que hay números
que son múltiplos de 3 y de 5 a la vez; en ese caso, deberá de mostrar los resultados por
separado.
6. Diseñe y codifique el ingreso de 10 valores enteros, con respecto a los cuales, se desea
conocer:
7. Diseñe y codifique un programa que calcule el valor de eX y que muestre todos los resultados
en un dataTable.
8. Mostrar el resultado de multiplicar los números del 1 al 20 por el resultado de obtener el
módulo (resto de la división que se obtiene usando el operador % de C) de dicho número
con un número elegido por el usuario.
9. Calcular el número de combinaciones posibles entre dos números enteros positivos: n, x.
Sabiendo que la fórmula es:
Combinaciones = n! Donde n debe ser mayor que x
x!(n-x)!
10. Calcular el aumento de salario para n empleados de una empresa, sabiendo que: Si el
salario es menor a $1000.00 entonces el aumento será del 12%
• Si está comprendido entre $1000.00 y $2500.00, el aumento será del 10%
• Si es mayor a $2500.00, entonces el aumento será del 8%
11. Pedir al usuario un número entre 1 y 9. Una vez y escribir la tabla de multiplicar de ese
número.
12. La conjetura de Ulam afirma que dado un entero y siguiendo los pasos siguientes
siempre se obtiene un 1:
a. Si el número es par se divide por 2.
b. Si es impar se multiplica por 3 y se suma 1.
Se pide un programa que permita al usuario ingresar un número entero y que compruebe
si la conjetura de Ulam es cierta, el programa deberá escribir toda la secuencia hasta
llegar al uno. Por ejemplo, si el usuario introduce un 5 la secuencia sería: 5, 16, 8, 4, 2, 1.
13. Escribir un programa que muestre por pantalla todos los números de tres cifras tales que
la suma de los cuadrados de sus dígitos es igual al cociente de la división entera del
número entre 3.
15