19
85 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para elegir una de varias acciones alternativas. Conocer la sintaxis de C# para las instrucciones condicionales simples, dobles y múltiples, así como también la utilidad en la programación. Aprender a utilizar la estructura y sintaxis del switch-case para la evaluación de condiciones múltiples. Por lo general, las instrucciones en una aplicación se ejecutan una después de la otra, en el orden en que se escriben. A este proceso se le conoce como ejecución secuencial. Varias instrucciones de C# le permiten especificar que la siguiente instrucción a ejecutar no es necesariamente la siguiente en la secuencia. A este se le conoce como transferencia de control. Estructuras de Selección en C# C# cuenta con tres tipos de estructuras de selección, que de aquí en adelante denominaremos instrucciones de selección. La instrucción if realiza (selecciona) una acción si una condición es verdadera, o ignora la acción si la condición es falsa. a. La instrucción if…else realiza una acción si una condición es verdadera o realiza una acción distinta si la condición es falsa. b. La instrucción switch realiza una de varias acciones distintas, dependiendo del valor de una expresión (expresión de control). c. A la instrucción if se le llama instrucción de selección simple, debido a que selecciona o ignora una acción individual. d. A la instrucción if...else se le llama instrucción de selección doble, debido a que selecciona una de dos acciones distintas (o grupos de acciones). e. A la instrucción switch se le llama instrucción de selección múltiple, debido a que selecciona una de varias acciones distintas (o grupo de acciones). Objetivos Introducción

Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

  • Upload
    others

  • View
    18

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

85

Facultad: Ingeniería

Escuela: Ingeniería en Computación

Asignatura: Programación I

Tema: “Estructuras de Selección en C#”

Utilizar las instrucciones de selección “if” e “if..else” para elegir una de varias acciones alternativas.

Conocer la sintaxis de C# para las instrucciones condicionales simples, dobles y múltiples, así como

también la utilidad en la programación.

Aprender a utilizar la estructura y sintaxis del switch-case para la evaluación de condiciones

múltiples.

Por lo general, las instrucciones en una aplicación se ejecutan una después de la otra, en el orden en

que se escriben. A este proceso se le conoce como ejecución secuencial. Varias instrucciones de C#

le permiten especificar que la siguiente instrucción a ejecutar no es necesariamente la siguiente en la

secuencia. A este se le conoce como transferencia de control.

Estructuras de Selección en C#

C# cuenta con tres tipos de estructuras de selección, que de aquí en adelante denominaremos

instrucciones de selección. La instrucción if realiza (selecciona) una acción si una condición es

verdadera, o ignora la acción si la condición es falsa.

a. La instrucción if…else realiza una acción si una condición es verdadera o realiza una acción distinta

si la condición es falsa.

b. La instrucción switch realiza una de varias acciones distintas, dependiendo del valor de una

expresión (expresión de control).

c. A la instrucción if se le llama instrucción de selección simple, debido a que selecciona o ignora

una acción individual.

d. A la instrucción if...else se le llama instrucción de selección doble, debido a que selecciona una

de dos acciones distintas (o grupos de acciones).

e. A la instrucción switch se le llama instrucción de selección múltiple, debido a que selecciona una

de varias acciones distintas (o grupo de acciones).

Objetivos

Introducción

Page 2: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

86

Sintaxis de las Instrucciones Condicionales

Una instrucción if simple responde a la siguiente sintaxis:

if (expresión booleana)

{

Instrucción(es) de condición verdadera.

}

Advertencia:

Las llaves son opcionales si hay una sola acción. Normalmente, es aconsejable añadirlas de todas

formas. Su omisión puede ser causa de fallos inesperados.

La instrucción if solo garantiza la ejecución de determinadas acciones basándose en una condición

verdadera (true). Se ejecutan o no se ejecutan. Para controlar tanto la condición true como la falsa

(false) es necesario utilizar la instrucción if…else. Su sintaxis en la siguiente:

if (expresión booleana)

{

Instrucción(es) de condición verdadera.

}

else

{

Instrucción(es) de condición falsa.

}

Recordar:

La condición siempre se evalúa en el if. NUNCA se evaluará una condición después de la sentencia

else.

Muchas veces vamos a necesitar evaluar más de dos condiciones, por lo que nos encontramos con el

siguiente tipo de estructura, para el cual se muestra la sintaxis e interpretación:

if (condicion1)

{

Bloque de instrucciones que se ejecutan si la condición 1 es verdadera.

}

else if(condicion2)

Page 3: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

87

{

Bloque de código que se ejecuta si la condición 2 es verdadera.

}

else if(condicion n)

{

Bloque de código se la siguiente condición n es verdadera.

}

else

{

Bloque de código que se ejecuta si ninguna de las condiciones previas fue verdadera.

}

Operadores Lógicos

Los operadores lógicos producen un resultado booleano (verdadero o falso) y sus operandos son

también valores lógicos. Nos permiten formular condiciones complejas a partir de condiciones simples.

A continuación se muestra una tabla con las tres compuertas lógicas básicas que nos servirán como

operadores lógicos:

OPERADOR C# SINTAXIS COMENTARIO

AND && Exp_Lógica && Exp_Lógica Devuelve verdaderos si se cumplen ambas

condiciones.

OR || Exp_Lógica || Exp_Lógica Devuelve verdaderos si se cumple al menos

una de las condiciones.

NOT ! ! Niega la condición.

Nota:

La operación (x&&y) corresponde a la operación (x and y).

La operación (x||y) corresponde a la operación (x or y).

Instrucción Switch

Cuando hay muchas condiciones a evaluar, la instrucción if…else puede resultar demasiado compleja

de manejar. Una solución mucho más limpia en estos casos consiste en usar la instrucción switch.

La instrucción switch permite cualquier valor entero o de cadena con múltiples valores. Cuando se

produce una coincidencia se ejecutan todas las instrucciones asociadas con ella.

Esta estructura es muy utilizada a la hora de trabajar con menú dentro de las aplicaciones.

Page 4: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

88

La sintaxis es la siguiente:

Switch (expresión de control )

{

case<literal-1>:

Instrucción(es)

break;

.

.

case<literal-n>:

Instrucción(es)

break;

default:

Instrucción(es)

}

Caracteres ASCII utilizados:

ALT + 92 = \ ALT + 91 = [ ALT + 93 = ] ALT + 35 = #

ALT + 94 = ^ ALT + 123 = { ALT + 125 = } ALT +124 = |

Guía de laboratorio No. 4.

Computadora con Visual Studio 2013 o superior.

Dispositivo de almacenamiento (USB).

Crear una carpeta con el nombre Practica4 para guardar los ejemplos y ejercicios, en el escritorio de su

computadora.

Diseñar un programa en C# que nos permita saber cuál es el número mayor

entre 2 números.

1 static void Main(string[] args)

2 {

3 Console.Title = " El mayor de dos numeros";

4 Int32 x,y;

Material y Equipo

Procedimiento

Ejemplo1

Page 5: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

89

5 Console.WriteLine("Digitar el primer número del 1 al 1000");

6 x = Int32.Parse(Console.ReadLine());

7 Console.WriteLine("Digitar el segundo número del 1 al 1000");

8 y = Int32.Parse(Console.ReadLine());

9 if (x>y)

10 {

11 Console.WriteLine("\nEl numero {0} es mayor que {1}", x, y); // v

12 }

13 else

14 {

15 Console.WriteLine("\nEl numero {0} es mayor que {1}", y, x); // f

16 }

17 Console.WriteLine("\n\n");

18 Console.WriteLine("\n----->Fin del programa");

19 Console.ReadKey();

20 }

No. Corrida Datos entradas Resultado

1 x=100 y=87

2 x=150 y=245

3 x=200 y=135

Desarrollar un programa que solicite al usuario un número y determine si dicha

cantidad es par o impar, en caso de que el número sea par, el programa deberá

verificar si el número está entre el rango [10 - 100].

1 static void Main(string[] args)

2 {

3 int Numero;

4 Console.Title = "VERIFICANDO NUMEROS PARES";

5 Console.Write("\nIngrese un numero:");

6 Numero = int.Parse(Console.ReadLine());

7 if (Numero < 0)

8 {

9 Console.Write("\n\tNumero Negativo...Ingrese un numero positivo");

Ejemplo2

Page 6: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

90

10 }

11 else if (Numero % 2 == 0)

12 {

13 Console.Write("\n\tEl numero (" + Numero + ") es par.");

14 if (Numero >= 10 && Numero <= 100)

15 {

16 Console.Write("\n\tEl numero (" + Numero + ") se encuentra en el rango [10-100]");

17 }

18 else

19 {

20 Console.Write("\n\tEl numero (" + Numero + ") NO esta en el rango [10-00]");

21 }

22 }

23 else

24 {

25 Console.Write("\n\tEl numero ingresado es impar...");

26 }

27 Console.ReadKey();

28 }

29 }

30 }

No. Corrida Datos entradas Resultado

1 Numero = 30

2 Numero = 25

3 Numero = -24

Desarrollar un programa en C# que lea desde teclado dos números. Si el

primero es mayor que el segundo se deberá mostrar la suma y la diferencia de

dichas cantidades, en caso contrario se deberá mostrar el producto y la división

del primero respecto al segundo.

1 {

2 Double x, y, z, w;

3 Console.Title = "CONDICIONALES";

4 Console.WriteLine("\tDigitar primer numero:");

5 x = Double.Parse(Console.ReadLine());

Ejemplo3

Page 7: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

91

6 Console.WriteLine("\tDigitar segundo numero:");

7 y = Double.Parse(Console.ReadLine());

8 if (x > y)

9 {

10 z = x + y;

11 w = x - y;

12 Console.WriteLine("\tMOSTRANDO RESULTADOS");

13 Console.WriteLine("\tSUMA: " + z);

14 Console.WriteLine("\tRESTA: " + w);

15 }

16 else

17 {

18 z = x * y;

19 if (y == 0)

20 {

21 Console.WriteLine("\tNo se puede dividir entre CERO");

22 }

23 else

24 {

25 w = x / y;

26 Console.WriteLine("\tMOSTRANDO RESULTADOS");

27 Console.WriteLine("\tMULTIPLICACION: " + z);

28 Console.WriteLine("\tDIVISION: " + w);

29 }

30 }

31 Console.ReadKey();

32 }

33 }

34 }

No. Corrida Datos entradas Resultado

1 x = 8, y = 4

2 x = 5, y = 10

3 x = 0, y = 0

Page 8: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

92

Las raíces reales de la expresión ax2 + bx + c = 0.

Desarrollar un programa para encontrar las raíces de la ecuación cuadrática

sabiendo que la fórmula a utilizar es:

𝑥 = −𝑏 ± √𝑏2 − 4𝑎𝑐

2𝑎

1 {

2 Console.ForegroundColor = ConsoleColor.Black;

3 Console.BackgroundColor = ConsoleColor.White;

4 Console.Clear();

5 Double a,b,c,disc,x1,x2;

6 Console.Title = ("Programa que calcule las raíces de una ecuación de 2do grado");

7 Console.WriteLine("Ingresa coeficiente cuadratico");

8 a = Double.Parse(Console.ReadLine());

9 Console.WriteLine("Ingresa coeficiente lineal");

10 b = Double.Parse(Console.ReadLine());

11 Console.WriteLine("Ingresa constante");

12 c = Double.Parse(Console.ReadLine());

13 disc=(Math.Pow(b,2)-4*a*c);

14 if(a!=0)

15 {

16 if(disc<0)

17 {

18 Console.WriteLine("Tiene raices imaginarias");

19 }

20 else

21 {

22 x1=(-b+Math.Sqrt(disc))/(2*a);

23 x2=(-b-Math.Sqrt(disc))/(2*a);

24 Console.WriteLine("X1 = " + Math.Round(x1,3) + " X2 = " + Math.Round(x2,3));

25 }

26 }

27 else

28 {

29 Console.WriteLine("El coeficiente cuadratico debe ser diferente de 0");

30 }

31 Console.ReadKey();

32 }

Ejemplo4

Page 9: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

93

Realice un programa que solicite el nombre de una persona, su edad y su sexo

si el sexo es masculino que muestre en pantalla el mensaje de “ El Sr. (nombre)

ha sido registrado" y si el sexo es femenino que muestre el mensaje "La Sra.

(nombre) ha sido registrada".

1 {

2 Console.Title = " El sexo de una persona";

3 Int32 edad;

4 String nombre, sexo;

5 Console.WriteLine("Digitar tu nombre");

6 nombre = Console.ReadLine();

7 Console.WriteLine("Digitar tu edad");

8 edad = Int32.Parse(Console.ReadLine());

9 Console.WriteLine("Digitar tu sexo ( Hombre=M y Mujer=F )");

10 sexo = Console.ReadLine();

11 if (sexo == "M" || sexo == "m") // instruccion lógica OR

12 {

Ejemplo5

Page 10: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

94

13 Console.WriteLine("\nEl Sr {0} ha sido registrado", nombre); // v

14 }

15 else

16 {

17 Console.WriteLine("\nLa Sra {0} ha sido registrada", nombre); // f

18 }

19 Console.WriteLine("\n\n");

20 Console.WriteLine("\n----->Fin del programa");

21 Console.ReadKey();

22 }

No. Corrida Datos entradas Resultado

1 nombre = Chabelo

edad = 45

sexo = m

2 nombre = Luismi

edad = 28

sexo = m

3 nombre = Andrea

edad = 44

sexo = f

Se necesita un programa que muestre un menú con las siguientes opciones:

1. Suma.

2. Resta.

3. Multiplicación.

4. División.

5. Raíz Cuadrada.

6. Exponenciación.

7. Salir del programa.

1 static void Main(string[] args)

2 {

3 int op;

4 Double x, y, z;

5 Console.WriteLine("\nDigitar el primer numero:");

Ejemplo6

Page 11: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

95

6 x = Double.Parse(Console.ReadLine());

7 Console.WriteLine("\nDigitar el segundo numero:");

8 y = Double.Parse(Console.ReadLine());

9 Console.Title = "SWITCH CASE";

10 Console.WriteLine("\n\tOPERACIONES MATEMATICAS");

11 Console.WriteLine("\n\t1. SUMAR");

12 Console.WriteLine("\n\t2. RESTAR");

13 Console.WriteLine("\n\t3. MULTIPLICAR");

14 Console.WriteLine("\n\t4. DIVIDIR");

15 Console.WriteLine("\n\t5. RAIZ CUADRADA");

16 Console.WriteLine("\n\t6. POTENCIACION");

17 Console.WriteLine("\n\t7. SALIR DEL PROGRAMA");

18 Console.WriteLine("\n\n\t Digite su opcion: ");

19 op = int.Parse(Console.ReadLine());

20 switch (op)

21 {

22 case 1:

23 z = x + y;

24 Console.WriteLine("\t El resultado de la suma es: " + z);

25 break;

26 case 2:

27 z = x - y;

28 Console.WriteLine("\t El resultado de la resta es: " + z);

29 break;

30 case 3:

31 z = x * y;

32 Console.WriteLine("\t El resultado de la multiplicacion es: " + z);

33 break;

34 case 4:

35 if ( y == 0 )

36 {

37 Console.WriteLine("\t Division Invalida...");

38 }

39 else

40 {

41 z = x / y;

Page 12: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

96

42 Console.WriteLine("\t El resultado de la division es: " + z);

43 }

44 break;

45 case 5:

46 z = Math.Sqrt(x);

47 Console.WriteLine("\t La raiz cuadrada del primer numero es " + z);

48 break;

49 case 6:

50 z = Math.Pow(y,2);

51 Console.WriteLine("\t El cuadrado del segundo numero es " + z);

52 break;

53 case 7:

54 Environment.Exit(0);

55 break;

56 default:

57 Console.WriteLine("\t Opcion no definida.. intente de nuevo");

58 break;

59 }

60 Console.ReadKey();

61 }

62 }

63 }

Corrida del ejercicio:

Page 13: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

97

NOTA: Siempre hay que utilizar las validaciones para que las operaciones matemáticas tengan el

resultado correcto.

1. Un postulante a un empleo, realiza un test de capacitación. Se obtuvo la siguiente información:

cantidad total de preguntas que se realizaron y la cantidad de preguntas que contestó correctamente.

Se pide desarrollar un programa que ingrese los datos por teclado e informe el nivel del mismo según

el porcentaje de respuestas correctas que ha tenido y sabiendo que:

Nivel máximo ---------------------------------- Porcentaje >= 90.

Nivel medio ------------------------------------ Porcentaje >= 75% y < 90%.

Nivel regular ----------------------------------- Porcentaje >= 50% y < 75%.

Fuera de nivel --------------------------------- Porcentaje < 50%.

No. Corrida Datos entradas Resultado

1 total=100 contestadas=87

2 total=150 contestadas=45

3 total=200 contestadas=135

1. Cree un programa que pida 3 números al usuario y determine cuál de ellos es el mayor.

No. Corrida Datos entradas Resultado

1 a=9 b=4 c=1

2 a=3 b=6 c=2

3 a=4 b=1 c=10

Análisis de Resultados

Investigación Complementaria

Page 14: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

98

2. Cree un programa que pida 3 números al usuario y determine cuál de ellos es el menor.

No. Corrida Datos entradas Resultado

1 a=9 b=4 c=1

2 a=2 b=6 c=5

3 a=4 b=1 c=10

3. Cree un programa que pida 2 números al usuario y determine si el primer número es múltiplo del

segundo.

No. Corrida Datos entradas Resultado

1 a=9 b=3

2 a=12 b=5

3 a=25 b=5

4. Crear un programa que pida tres números e indicar si el tercero es igual a la suma del primero y el

segundo.

No. Corrida Datos entradas Resultado

1 a=9 b=3 c=12

2 a=12 b=5 c=15

3 a=25 b=5 c=30

5. Crear un programa que tome dos números y diga si ambos son pares o impares.

No. Corrida Datos entradas Resultado

1 x=9 y=3

2 x=12 y=10

3 x=25 y=4

Page 15: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

99

6. Crear un programa que muestre un menú donde las opciones sean “Equilátero”, “Isósceles” y

“Escaleno”, pida una opción y calcule el perímetro del triángulo seleccionado.

Formulas:

Equilátero: Perímetro = 3 * lado1

Isósceles: Perímetro = (2*lado1) + base

Rectángulo: Perímetro = lado1 + lado2 + (raizcuadrada[ (lado1)2 + (lado2)2] )

7. Desarrollar un programa en C# que acepte las fechas escritas de modo usual y las visualice como

números.

Por ejemplo, la entrada: 20, agosto, 2015 debe mostrar una salida así: 20, 08, 2015.

No. Corrida Datos entradas Resultado

1 d=20 m=enero a=2000

2 d=4 m=mayo a=2010

3 d=12 m=julio a=2016

8. Se requiere calcular la edad de un individuo; para ello se va a tener como entrada dos fechas en el

formato día (1 a 31), mes (1 a 12) y un año (entero de cuatro dígitos), correspondientes a la fecha

de nacimiento y la fecha actual, respectivamente. Escriba un programa que calcule y muestre la edad

del individuo.

Si es la fecha de un bebé (menos de un año de edad), la edad se debe dar en meses y días; en

caso contrario, la edad se calculará en años.

No. Corrida Datos entradas Resultado

1 d1=20 m1=1 a1=2000

d2=10 m2=3 a1=2017

2 d1=4 m1=5 a1=2010

d2=10 m2=5 a1=2017

3 d1=12 m1=8 a1=2006

d2=3 m2=3 a1=2017

Page 16: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

100

9. Hacer un programa que posea dentro de él 2 menús, teniendo el siguiente formato:

a) conversión de colones a dólares

b) conversión de millas a kms

c) conversión de grados Celsius a grados Fahrenheit

d) segundo menú

1. si es positivo o negativo

2. área de un triangulo

3. fin submenú

e) fin de menú

Seleccione una opción (a..e):

10. Hacer un programa que pida una letra y detecte si es una vocal, utilizando switch case.

No. Corrida Datos entradas Resultado

1 letra=a

2 letra=h

3 letra=u

11. Hacer un programa con un menú que pase de Kg a otra unidad de medida de masa, mostrar en

pantalla un menú con las opciones posibles.

Menú:

Kg a libras

Kg a onzas

Kg a toneladas

No. Corrida Datos entradas Resultado

1 Kg=10 a onzas

2 Kg=15 a libras

3 Kg=2000 a toneladas

12. Crear un programa que pida al usuario un número de día y un número de mes, evalúe si la entrada

es correcta y en caso de que así sea calcule el día del año que es, considerando un año no bisiesto.

Observaciones a tomar en cuenta:

Un problema puede tener distintas vías para ser resuelto. Vamos a enfocarlo hacia una resolución

usando la instrucción Según (Caso) Hacer.

Page 17: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

101

En primer lugar y como variantes globales contemplaremos dos posibilidades: datos correctos o

datos incorrectos. Se considerarán datos correctos aquellos en los que el número de día esté

comprendido entre 1 y 31 y el número de mes entre 1 y 12. Se podría afinar más restringiendo

mes a mes las posibilidades (p. ej. en el mes de febrero no admitir un número de día que fuera

30, ya que ese valor es inviable), cosa que no haremos para simplificar el ejercicio.

Por otro lado, para el cálculo del día del año se considerarán 12 casos posibles, que son los doce

meses del año. Para cada mes, se calculará el día del año como el día del mes correspondiente

más el total de días acumulados correspondientes a los meses anteriores. Por ejemplo: el día del

año que es el día 15 del mes 2 (15 de febrero) se calcula como 15 + 31 siendo 31 el acumulado

de días de los meses anteriores.

Resultados a obtener.

Día del año expresado como un valor comprendido entre 1 y 365.

Convertir este pseucódigo en C#

1. Inicio [Cálculo del día del año ejemplo aprenderaprogramar.com]

2. Mostrar “Introduzca el número del día y número del mes”

3. Pedir NDia, Nmes

4. Si Ndia>= 1 y Ndia <= 31 y Nmes >= 1 y Nmes <= 12 Entonces

Según Nmes Hacer

Caso, = 1

DDA = NDia [DDA es día del año]

Caso, = 2

DDA = NDia + 31

Caso, = 3

DDA = NDia + 59

Caso, = 4

DDA = NDia + 90

Caso, = 5

DDA = NDia + 120

Caso, = 6

DDA = NDia + 151

Caso, = 7

DDA = NDia + 181

Caso, = 8

DDA = NDia + 212

Page 18: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

102

Caso, = 9

DDA = NDia + 243

Caso, = 10

DDA = NDia + 273

Caso, = 11

DDA = NDia + 304

Caso, = 12

DDA = NDia + 334

FinSegún

Mostrar “El”, NDia, “del”, Nmes, “es el día”, DDA, “del año”

SiNo

Mostrar “Datos proporcionados no válidos”

FinSi

5. Fin

13. El siguiente programa que simula un cajero automático con un saldo inicial de 1000 Euros, se

encuentra diseñado en C++ y lo necesitamos convertirlo a C#.

#include <stdio.h>

void main(){

int SI,opc;

float din,dan,S;

SI=1000;

printf("Bienvenido a su cajero virtual.\n");

printf("Seleccione una opcion:\n\n");

printf("1.Ingreso en cuenta.\n2.Reintegro.\n3.Ver el saldo

disponible\n0.Salir\n\nUsted ha marcado: ");

scanf("%d",&opc);

if(opc==1){

printf("\nBien, escriba el dinero que desee introducir: ");

scanf("%f",&din);

S=SI+din;

printf("\nIngreso realizado correctamente. Su saldo actual es de %f\n",S);

}else if(opc==2){

printf("\nAhora, teclee la cantidad de capital que desea retirar: ");

scanf("%f",&dan);

Page 19: Tema: “Estructuras de Selección en C#” · 2019. 1. 17. · Tema: “Estructuras de Selección en C#” Utilizar las instrucciones de selección “if” e “if..else” para

103

if(dan>SI){

printf("\nError. No dispone de tanto sueldo.\n");

}else{

S=SI-dan;

printf("\nReintegro realizado correctamente. Su saldo actual es de %f\n",S);

}

}else if(opc==3){

printf("\nSu saldo actual es de %d\n",SI);

}else if(opc==0){

printf("\nGracias por utilizar este programa.\n\n");

}else{

printf("\nDisculpe, se ha equivocado al marcar.\n\n");

}

}

Deitel, Harvey M. y Paul J. Deitel, Cómo Programar en C#, Segunda Edición, México, 2007.

Bibliografía