Listado de algoritmos carlos andrés garcía tzompantzin

Post on 24-Jul-2016

225 views 1 download

description

 

Transcript of Listado de algoritmos carlos andrés garcía tzompantzin

ALGORITMOS INGENIERÍA DE SOFTWARE

CARLOS ANDRÉS GARCÍA TZOMPANTZIN OTOÑO 2015

27 DE NOVIEMBRE DE 2015

Listado de Algoritmos

1. Áreas con IF 01/09 .............................................................................................................................................................. 7

1.1 Enunciado ...................................................................................................................................................................... 7

1.2 Diagrama a mano .......................................................................................................................................................... 8

1.3 Prueba de escritorio ...................................................................................................................................................... 9

1.4 Diagrama de Rational Rose ......................................................................................................................................... 10

1.5 Código para PSeint ...................................................................................................................................................... 11

1.6 Capturas de Pantalla ................................................................................................................................................... 13

2. Áreas con switch 04/09 ..................................................................................................................................................... 15

2.1 Enunciado .................................................................................................................................................................... 15

2.2 Diagrama a mano ........................................................................................................................................................ 16

2.3 Prueba de escritorio .................................................................................................................................................... 17

2.4 Diagrama de Rational Rose ......................................................................................................................................... 18

2.5 Código para PSeint ...................................................................................................................................................... 19

2.6 Capturas de Pantalla ................................................................................................................................................... 22

3. Edades con switch 09/09 .................................................................................................................................................. 24

3.1 Enunciado .................................................................................................................................................................... 24

3.2 Diagrama a mano ........................................................................................................................................................ 25

3.3 Prueba de escritorio .................................................................................................................................................... 26

3.4 Diagrama de Rational Rose ......................................................................................................................................... 27

3.5 Código para C# ............................................................................................................................................................ 28

3.6 Capturas de Pantalla. .................................................................................................................................................. 30

4. Llamada telefónica usando dos variables (minutos/segundos) con if´s 23/09 ................................................................. 31

4.1 Enunciado .................................................................................................................................................................... 31

4.2 Diagrama a mano ........................................................................................................................................................ 32

4.3 Prueba de escritorio .................................................................................................................................................... 33

4.4 Diagrama de Rational Rose ......................................................................................................................................... 34

4.5 Código para C# ............................................................................................................................................................ 35

4.6 Capturas de Pantalla ................................................................................................................................................... 36

5. Tablas de multiplicar con FOR ascendente 23/09............................................................................................................. 37

5.1 Enunciado .................................................................................................................................................................... 37

5.2 Diagrama a mano ........................................................................................................................................................ 38

5.3 Prueba de escritorio .................................................................................................................................................... 39

5.4 Diagrama de Rational Rose ......................................................................................................................................... 40

5.5 Código para C# ............................................................................................................................................................ 41

5.6 Capturas de Pantalla ................................................................................................................................................... 42

6. Tablas de multiplicar con FOR descendente 23/09 .......................................................................................................... 43

6.1 Enunciado .................................................................................................................................................................... 43

6.2 Diagrama a mano ........................................................................................................................................................ 44

6.3 Prueba de escritorio .................................................................................................................................................... 45

6.4 Diagrama de Rational Rose ......................................................................................................................................... 46

6.5 Código para C# ............................................................................................................................................................ 47

6.6 Capturas de Pantalla ................................................................................................................................................... 48

7. Alumnos sin beca y con beca del 50% y 100% -> promedio de cada uno usando FOR 23/09 .......................................... 49

7.1 Enunciado .................................................................................................................................................................... 49

7.2 Diagrama a mano ........................................................................................................................................................ 50

7.3 Prueba de escritorio .................................................................................................................................................... 51

7.4 Diagrama de Rational Rose ......................................................................................................................................... 52

7.5 Código para C# ............................................................................................................................................................ 53

7.6 Capturas de Pantalla ................................................................................................................................................... 55

8. Tienda con ticket FOR 08/11 ............................................................................................................................................. 56

8.1 Enunciado .................................................................................................................................................................... 56

8.2 Diagrama a mano ........................................................................................................................................................ 57

8.3 Prueba de escritorio .................................................................................................................................................... 58

8.4 Diagrama de Rational Rose ......................................................................................................................................... 59

8.5 Código para C# ............................................................................................................................................................ 60

8.6 Capturas de Pantalla ................................................................................................................................................... 62

9. Números pares e impares, mencionar cuántos de cada uno y cuál fue el mayor y menor, también de cada uno usando

FOR 26/09 ............................................................................................................................................................................. 63

9.1 Enunciado .................................................................................................................................................................... 63

9.2 Diagrama a mano ........................................................................................................................................................ 64

9.3 Prueba de escritorio .................................................................................................................................................... 65

9.4 Diagrama de Rational Rose ......................................................................................................................................... 66

9.5 Código para C# ............................................................................................................................................................ 67

9.6 Capturas de Pantalla ................................................................................................................................................... 69

10. Números pares e impares, mencionar cuántos de cada uno pares e impares, mencionar cuántos de cada uno usando

While 26/09........................................................................................................................................................................... 70

10.1 Enunciado .................................................................................................................................................................. 70

10.2 Diagrama a mano ...................................................................................................................................................... 71

10.3 Prueba de escritorio .................................................................................................................................................. 72

10.4 Diagrama de Rational Rose ....................................................................................................................................... 73

10.5 Código para C# .......................................................................................................................................................... 74

10.6 Capturas de Pantalla ................................................................................................................................................. 75

11. Edades con FOR 05/10 .................................................................................................................................................... 76

11.1 Enunciado .................................................................................................................................................................. 76

11.2 Diagrama a mano ...................................................................................................................................................... 77

11.3 Prueba de escritorio .................................................................................................................................................. 78

11.4 Diagrama de Rational Rose ....................................................................................................................................... 79

11.5 Código para C# .......................................................................................................................................................... 80

11.6 Capturas de Pantalla ................................................................................................................................................. 81

12. Llamada minutos y segundo con Do-While 26/10 .......................................................................................................... 82

12.1 Enunciado .................................................................................................................................................................. 82

12.2 Diagrama a mano ...................................................................................................................................................... 83

12.3 Prueba de escritorio .................................................................................................................................................. 84

12.4 Diagrama de Rational Rose ....................................................................................................................................... 85

12.5 Código para C# .......................................................................................................................................................... 86

12.6 Capturas de Pantalla ................................................................................................................................................. 88

13. Calificaciones A, B y C con While 20/10 .......................................................................................................................... 89

13.1 Enunciado .................................................................................................................................................................. 89

13.2 Diagrama a mano ...................................................................................................................................................... 90

13.3 Prueba de escritorio .................................................................................................................................................. 91

13.4Diagrama de Rational Rose ........................................................................................................................................ 92

13.5 Código para C# .......................................................................................................................................................... 93

13.6 Capturas de Pantalla ................................................................................................................................................. 95

14. Área con Do-While 21/10................................................................................................................................................ 96

14.1 Enunciado .................................................................................................................................................................. 96

14.2 Diagrama a mano ...................................................................................................................................................... 97

14.3 Prueba de escritorio .................................................................................................................................................. 98

14.4 Diagrama de Rational Rose ....................................................................................................................................... 99

14.5 Código para C# ........................................................................................................................................................ 100

14.6 Captura de Pantalla ................................................................................................................................................. 102

15. Frutas con Do-While 28/10 ........................................................................................................................................... 103

15.1 Enunciado ................................................................................................................................................................ 103

15.2 Diagrama a mano .................................................................................................................................................... 104

15.3 Prueba de escritorio ................................................................................................................................................ 107

15.4 Diagrama de Rational Rose ..................................................................................................................................... 108

15.5 C# ............................................................................................................................................................................ 109

15.6 Capturas de Pantalla ............................................................................................................................................... 112

16. Verificación con Do-While 02/11 .................................................................................................................................. 113

16.1 Enunciado ................................................................................................................................................................ 113

16.2 Diagrama a mano .................................................................................................................................................... 114

16.3 Prueba de escritorio ................................................................................................................................................ 115

16.4 Diagrama de Rational Rose ..................................................................................................................................... 116

16.5 C# ............................................................................................................................................................................ 117

16.6 Captura de Pantalla ................................................................................................................................................. 120

17. Verificación con FOR 02/11 ........................................................................................................................................... 121

17.1 Enunciado ................................................................................................................................................................ 121

17.2 Diagrama a mano .................................................................................................................................................... 122

17.3 Prueba de escritorio ................................................................................................................................................ 123

17.4 Diagrama de Rational Rose ..................................................................................................................................... 124

17.5 C# ............................................................................................................................................................................ 125

17.6 Captura de Pantalla ................................................................................................................................................. 128

18. Inventario con Do-While 03/11 .................................................................................................................................... 129

18.1 Enunciado ................................................................................................................................................................ 129

18.2 Diagrama a mano .................................................................................................................................................... 130

18.3 Prueba de escritorio ................................................................................................................................................ 131

18.4 Diagrama de Rational Rose ..................................................................................................................................... 132

18.5 C# ............................................................................................................................................................................ 133

18.6 Capturas de Pantalla ............................................................................................................................................... 136

19. Caseta con FOR 08/11 ................................................................................................................................................... 137

19.1 Enunciado ................................................................................................................................................................ 137

19.2 Diagrama a mano .................................................................................................................................................... 138

19.3 Prueba de escritorio ................................................................................................................................................ 139

19.4 Diagrama de Rational Rose ..................................................................................................................................... 140

19.5 C# ............................................................................................................................................................................ 141

19.6 Captura de Pantalla ................................................................................................................................................. 143

20. Caseta con WHILE 08/11 ............................................................................................................................................... 144

20.1 Enunciado ................................................................................................................................................................ 144

20.2 Diagrama a mano .................................................................................................................................................... 145

20.3 Prueba de escritorio ................................................................................................................................................ 146

20.4 Diagrama de Rational Rose ..................................................................................................................................... 147

20.5 C# ............................................................................................................................................................................ 148

20.6 Captura de Pantalla ................................................................................................................................................. 150

21. Caseta con DO-WHILE 08/11......................................................................................................................................... 151

21.1 Enunciado ................................................................................................................................................................ 151

21.2 Diagrama a mano .................................................................................................................................................... 152

21.3 Prueba de escritorio ................................................................................................................................................ 153

21.4 Diagrama de Rational Rose ..................................................................................................................................... 154

21.5 C# ............................................................................................................................................................................ 155

21.6 Captura de Pantalla ................................................................................................................................................. 157

22. Menú de exponente y raíz cuadrada 09/11 .................................................................................................................. 158

22.1 Enunciado ................................................................................................................................................................ 158

22.2 Diagrama a mano .................................................................................................................................................... 159

22.3 Prueba de escritorio ................................................................................................................................................ 160

22.4 Diagrama de Rational Rose ..................................................................................................................................... 161

22.5 C# ............................................................................................................................................................................ 162

22.6 Captura de Pantalla ................................................................................................................................................. 164

23. Venta de Boletos de un teatro 09/11 ........................................................................................................................... 165

23.1 Enunciado ................................................................................................................................................................ 165

23.2 Diagrama a mano .................................................................................................................................................... 166

23.3 Prueba de escritorio ................................................................................................................................................ 167

23.4 Diagrama de Rational Rose ..................................................................................................................................... 168

23.5 C# ............................................................................................................................................................................ 169

23.6 Captura de Pantalla ................................................................................................................................................. 179

24. Control de baños y asientos de un teatro. .................................................................................................................... 181

24.1 Enunciado ................................................................................................................................................................ 181

24.2 Diagrama a mano. ................................................................................................................................................... 182

24.3 Prueba de escritorio ................................................................................................................................................ 183

24.4 Diagrama de Rational Rose ..................................................................................................................................... 184

24.5 Código para C# ........................................................................................................................................................ 185

24.6 Capturas de Pantalla ............................................................................................................................................... 187

25. Áreas con while ............................................................................................................................................................. 188

25.1 Enunciado ................................................................................................................................................................ 188

25.2 Diagrama a mano .................................................................................................................................................... 189

25.3 Prueba de escritorio ................................................................................................................................................ 190

25.4 Diagrama de Rational Rose ..................................................................................................................................... 191

25.5 C# ............................................................................................................................................................................ 192

25.6 Capturas de Pantalla ............................................................................................................................................... 194

26. Calificaciones A, B y C con For 20/10 ............................................................................................................................ 195

26.1 Enunciado ................................................................................................................................................................ 195

26.2 Diagrama a mano .................................................................................................................................................... 196

26.3 Prueba de escritorio ................................................................................................................................................ 197

26.4 Diagrama de Rational Rose ..................................................................................................................................... 198

26.5 C# ............................................................................................................................................................................ 199

26.6 Captura de Pantalla ................................................................................................................................................. 200

1. Áreas con IF 01/09

1.1 Enunciado

Hacer un diagrama de actividades que cumpla con lo siguiente. (Con IF)

Muestre un menú para calcular el área de:

A. Cuadrado

B. Rectángulo

C. Triángulo

Solicitar los valores correspondientes:

A. Los datos deben ser mayor a 0

B. En el caso del rectángulo la altura debe ser mayor a la base

C. En el caso del triángulo no importa que la altura sea mayor a la base

1.2 Diagrama a mano

1.3 Prueba de escritorio

1.4 Diagrama de Rational Rose

1.5 Código para PSeint

Proceso Obetener_area_de_una_figura

// Definir Variables

Definir lado,base,altura Como Real

Definir letraFigura Como Caracter

Escribir 'Poner la letra de la figura que quiera sacar su área. A=Cuadrado, B=Rectangulo, C=Triángulo'

Leer letraFigura

Si letraFigura='A' O letraFigura='a' Entonces

Escribir 'Escribir el tamaño del lado'

Leer lado

Si lado<=0 Entonces

Escribir 'Error'

Sino

Escribir 'El área del rectángulo = ',lado*lado

FinSi

Sino

Si letraFigura='B' O letraFigura='b' Entonces

Escribir 'Escribir el tamaña de la base'

Leer base

Si base<=0 Entonces

Escribir 'Error'

Sino

Escribir 'Escribir el tamaño de la altura'

Leer altura

Si altura<base Entonces

Escribir 'Error: La altura es menor que la base'

Sino

Escribir 'La base ',base,' X ',altura,' = ',base*altura

FinSi

FinSi

Sino

Si letraFigura='C' O letraFigura='c' Entonces

Escribir 'Escribir el tamaño de la base'

Leer base

Si base<=0 Entonces

Escribir 'Error'

Sino

Escribir 'Escribir el tamaño de la altura'

Leer altura

Si altura<=0 Entonces

Escribir 'Error'

Sino

Escribir 'El área del triángulo es = ',(base*altura)/2

FinSi

FinSi

Sino

Escribir 'Error'

FinSi

FinSi

FinSi

FinProceso

1.6 Capturas de Pantalla

2. Áreas con switch 04/09

2.1 Enunciado

Hacer un diagrama de actividades que cumpla con lo siguiente. (Con switch)

Muestre un menú para calcular el área de:

A. Cuadrado

B. Rectángulo

C. Triángulo

Solicitar los valores correspondientes:

A. Los datos deben ser mayor a 0

B. En el caso del rectángulo la altura debe ser mayor a la base

C. En el caso del triángulo no importa que la altura sea mayor a la base

2.2 Diagrama a mano

2.3 Prueba de escritorio

2.4 Diagrama de Rational Rose

2.5 Código para PSeint Proceso Calificaciones_con_letras

//Definir variables letraFigura, lado, base, altura

Definir letraFigura Como Caracter

Definir lado, base, altura Como Real

Escribir "Poner la letra de la figura que quiera sacar."

Escribir "A=Cuadrado"

Escribir "B=Rectángulo"

Escribir "C=Triángulo"

Leer letraFigura

Segun letraFigura Hacer

"A" o "a":

Escribir "Escribir el tamaño del lado."

Leer lado

Si lado<=0 Entonces

Escribir "Error"

Sino

Escribir "El área del cuadrado = ", lado*lado

Fin Si

"B" o "b":

Escribir "Escribir el tamaño de la base."

Leer base

Si base<=0 Entonces

Escribir "Error"

Sino

Escribir "Escribir el tamaño de la altura."

Leer altura

Si altura<base Entonces

Escribir "Error: La altura es menor que la base."

Sino

Escribir "El área del rectángulo = ", base*altura

Fin Si

Fin Si

"C" o "c":

Escribir "Escribir el tamaño de la base."

Leer base

Si base<=0 Entonces

Escribir "Error"

Sino

Escribir "Escribir el tamaño de la altura."

Leer altura

Si altura<=0 Entonces

Escribir "Error"

Sino

Escribir "El área del triángulo es = ", (base*altura)/2

Fin Si

Fin Si

De Otro Modo:

Escribir "Error"

Fin Segun

FinProceso

2.6 Capturas de Pantalla

3. Edades con switch 09/09

3.1 Enunciado

Hacer un diagrama de actividades que cumpla con lo siguiente.

Se pedirá la cantidad de edades a ingresar.

Mostrar si son mayores de edad o menores de edad.

1. Menor de edad= edad>0 o edad<=17

2. Mayor de edad= edad>17 y edad<=110

Se deben de ir sumando las edades ingresadas y al final realizar un promedio general de todas las edades ingresadas y

mostrar la cantidad de errores que se hicieron.

3.2 Diagrama a mano

3.3 Prueba de escritorio

3.4 Diagrama de Rational Rose

3.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication49 { class Program { static void Main(string[] args) { int cantidadEdades = 0, i = 0, edad = 0, contadorError = 0, contadorMayor = 0; int contadorMenor = 0; double sumaMayor = 0, sumaMenor = 0; string leer, condicion; Console.WriteLine("Introdusca el número de edades a calcular."); leer = Console.ReadLine(); cantidadEdades = Convert.ToInt32(leer); for (i = 0; i < cantidadEdades; i++) { Console.WriteLine("Introdusca la edad."); leer = Console.ReadLine(); edad = Convert.ToInt32(leer); if (edad <= 0 || edad > 110) condicion = "3"; else { if (edad < 18) condicion = "1"; else condicion = "2"; } switch (condicion) { case "1": Console.WriteLine("Es menor de edad."); contadorMenor++; sumaMenor = edad + sumaMenor; break; case "2": Console.WriteLine("Es mayor de edad."); contadorMayor++; sumaMayor = edad + sumaMayor; break; case "3": Console.WriteLine("Error."); contadorError++; break; default: Console.WriteLine("Error."); contadorError++; break;

} }//Fin For Console.WriteLine("Numero total de mayores de edad = {0} y su promedio = {1}", contadorMayor, sumaMayor / contadorMayor); Console.WriteLine("Numero total de menores de edad = {0} y su promedio = {1}", contadorMenor, sumaMenor / contadorMenor); Console.WriteLine("Numero totales de errores = {0}", contadorError); Console.ReadKey(); } } }

3.6 Capturas de Pantalla.

4. Llamada telefónica usando dos variables (minutos/segundos) con if´s 23/09

4.1 Enunciado

Hacer con IF el algoritmo de la llamada telefónica, solicita el costo de una llamada. Al salir debe mostrar el tiempo total y

el monto total. Nuevamente aplica que los primero 5 minutos cuesta .50 cada minuto y a partir del segundo 6 es un

peso por minuto.

4.2 Diagrama a mano

4.3 Prueba de escritorio

4.4 Diagrama de Rational Rose

4.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication45 { class Program { static void Main(string[] args) { int segundos = 0, minutos = 0; string leer; Console.WriteLine("Dame los minutos de la llamada."); leer = Console.ReadLine(); minutos = Convert.ToInt32(leer); Console.WriteLine("Dame los segundos de la llamada."); leer = Console.ReadLine(); segundos = Convert.ToInt32(leer); if (minutos <= 0 || minutos > 60 || segundos < 0 || segundos > 60) Console.WriteLine("Error al ingresar los datos."); else segundos = segundos + (minutos * 60); if (segundos % 60 > 0) { minutos++; if (minutos <= 5) { Console.WriteLine("El precio de llamada es {0}", minutos * 0.5); } else { Console.WriteLine("El precio de llamada es {0}", minutos - 2.5); } } else { if (minutos <= 5) Console.WriteLine("El precio de llamada es {0}", minutos * 0.5); else Console.WriteLine("El precio de llamada es {0}", minutos - 2.5); } Console.ReadKey(); } } }

4.6 Capturas de Pantalla

5. Tablas de multiplicar con FOR ascendente 23/09

5.1 Enunciado

Realizar un ciclo de una tabla multiplicar. Se deberá de pedir el número a multiplicar y la cantidad de veces serán = 19

veces. Y al finalizar se mostrará la tabla de multiplicar de forma ascendente del 0 al 19.

La forma en la que se utilizará FOR es mediante i++

5.2 Diagrama a mano

5.3 Prueba de escritorio

5.4 Diagrama de Rational Rose

5.5 Código para C#

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication46 { class Program { static void Main(string[] args) { int numero = 0, i = 0; string leer; Console.WriteLine("Dame el número para hacer la tabla de multiplicar."); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); for (i = 0; i <= 19; i++) { Console.WriteLine("La multiplicación de {0} X {1} = {2}", numero, i, numero * i); } Console.WriteLine("Proceso terminado."); Console.ReadKey(); } } }

5.6 Capturas de Pantalla

6. Tablas de multiplicar con FOR descendente 23/09

6.1 Enunciado

Realizar un ciclo de una tabla multiplicar. Se deberá de pedir el número a multiplicar y la cantidad de veces serán = 19

veces. Y al finalizar se mostrará la tabla de multiplicar de forma descendente del 19 al 1.

La forma en la que se utilizará FOR es mediante i--

6.2 Diagrama a mano

6.3 Prueba de escritorio

6.4 Diagrama de Rational Rose

6.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication46 { class Program { static void Main(string[] args) { int numero = 0, i = 19; string leer; Console.WriteLine("Dame el número para hacer la tabla de multiplicar."); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); for (i = 19; i >= 1; i--) { Console.WriteLine("La multiplicación de {0} X {1} = {2}", numero, i, numero * i); } Console.WriteLine("Proceso terminado."); Console.ReadKey(); } } }

6.6 Capturas de Pantalla

7. Alumnos sin beca y con beca del 50% y 100% -> promedio de cada uno usando

FOR 23/09

7.1 Enunciado

Hacer un diagrama de actividades:

Solicita el número de alumnos a calcular promedio de calificación

Pregunte si tienen beca de 100% o 50% de descuento

Solicite su calificación final de todas sus materias la calificación valida 0 y 10, si no lo es no la toma en cuenta para los

siguientes cálculos:

1. Promedio general.

2. Promedio general de los alumnos de beca del 100%.

3. Promedio general de los alumnos de beca del 50%.

7.2 Diagrama a mano

7.3 Prueba de escritorio

7.4 Diagrama de Rational Rose

7.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication3 { class Program { static void Main(string[] args) { int i, calificaciones, beca = 0, numeroAlumnos, contador100 = 0, contador50 = 0, contador0 = 0; double beca50 = 0, beca100 = 0, beca0 = 0; string leer; Console.WriteLine("¿Cuál es el número total de alumnos para calcular su promedio?"); leer = Console.ReadLine(); numeroAlumnos = Convert.ToInt32(leer); for (i = 0; i < numeroAlumnos; i++) { Console.WriteLine("Su alumno cuenta con beca del 100, 50 o 0 porciento."); leer = Console.ReadLine(); beca = Convert.ToInt32(leer); Console.WriteLine("Ingrese la calificación del alumno."); leer = Console.ReadLine(); calificaciones = Convert.ToInt32(leer); if (calificaciones < 0 || calificaciones > 10) Console.WriteLine("Error"); else switch (beca) { case 100: beca100 = beca100 + calificaciones; contador100++; break; case 50: beca50 = beca50 + calificaciones; contador50++; break; case 0: beca0 = beca0 + calificaciones; contador0++; break; default: Console.WriteLine("Error."); break; }//Cierre Switch }//Cierre for Console.WriteLine("Promedio General = {0}", (beca0 + beca100 + beca50) / (contador100 + contador50 + contador0)); Console.WriteLine("Promedio de calificaciones con beca del 100% = {0}", (beca100) / contador100);

Console.WriteLine("Promedio de calificaciones con beca del 50% = {0}", (beca50) / contador50); Console.ReadKey(); } } }

7.6 Capturas de Pantalla

8. Tienda con ticket FOR 08/11

8.1 Enunciado

Realizar un algoritmo que primero se solicite la cantidad de artículos que van a ser ingresados después de eso, pedirá el

tipo de artículo (Medicamento, Alimento u Otro) y solicitará el precio del mismo. Si el precio es menor a cero marcará

error y lo contará para el ciclo. Por cada artículo la pantalla mostrará su ticket que incluirá el número de artículo. El tipo,

el precio sin IVA y con IVA. Al finalizar el ciclo, se mostrará el dinero total de cada tipo con y sin IVA y el total de todos

los artículos con y sin IVA.

8.2 Diagrama a mano

8.3 Prueba de escritorio

8.4 Diagrama de Rational Rose

8.5 Código para C#

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication7 { class Program { static void Main(string[] args) { int i, producto, precio, articulos, sinIvaComestible = 0, sinIvaMedicamento = 0, sinIvaOtro = 0, sumaTotalSinIva = 0; double sumaIvaComestible = 0, sumaIvaMedicamento = 0, sumaIvaOtro = 0, sumaTotalIva = 0; string leer; string tipo; Console.WriteLine("¿Cuántos articulos vas a ingresar?"); leer = Console.ReadLine(); articulos = Convert.ToInt32(leer); tipo = ""; for (i = 0; i < articulos; i++) { Console.WriteLine("¿Qué tipo de producto vas a comprar?(Ingrese el número del inciso.)"); Console.WriteLine("1) Comestible."); Console.WriteLine("2) Medicamento."); Console.WriteLine("3) Otro."); leer = Console.ReadLine(); producto = Convert.ToInt32(leer); Console.WriteLine("Ingrese el precio."); leer = Console.ReadLine(); precio = Convert.ToInt32(leer); if (precio < 0) Console.WriteLine("Error."); else { switch (producto) { case 1: sinIvaComestible = sinIvaComestible + precio; sumaIvaComestible = sumaIvaComestible + precio; tipo = "Comestible"; break; case 2: sinIvaMedicamento = sinIvaMedicamento + precio; sumaIvaMedicamento = sumaIvaMedicamento + (precio + (precio * 0.05)); tipo = "Medicamento."; break; case 3: sinIvaOtro = sinIvaOtro + precio; sumaIvaOtro = sumaIvaOtro + (precio + (precio * 0.1)); tipo = "Otro."; break; default:

Console.WriteLine("Error."); break; }//Cierre Switch sumaTotalIva = sumaIvaComestible + sumaIvaMedicamento + sumaIvaOtro; sumaTotalSinIva = sinIvaComestible + sinIvaMedicamento + sinIvaOtro; Console.WriteLine("No. Tipo. Precio sin IVA. Precio con IVA."); Console.WriteLine("{0} {1} {2} {3}", i + 1, tipo, sumaTotalIva, sumaTotalSinIva); } }//Cierre for Console.WriteLine("Precio total de todos los articulos con IVA = {0}", (sumaIvaComestible + sumaIvaMedicamento + sumaIvaOtro)); Console.WriteLine("Precio total de todos los articulos sin IVA = {0}", (sinIvaComestible + sinIvaMedicamento + sinIvaOtro)); Console.WriteLine("Pecio total de los articulos comestibles con IVA= {0}", (sumaIvaComestible)); Console.WriteLine("Pecio total de los articulos comestibles sin IVA= {0}", (sinIvaComestible)); Console.WriteLine("Pecio total de los articulos de meciamento con IVA= {0}", (sumaIvaMedicamento)); Console.WriteLine("Pecio total de los articulos de medicamento sin IVA= {0}", (sinIvaMedicamento)); Console.WriteLine("Pecio total de otros articulos con IVA= {0}", (sumaIvaOtro)); Console.WriteLine("Pecio total de otros articulos sin IVA= {0}", (sinIvaOtro)); Console.ReadKey(); } } }

8.6 Capturas de Pantalla

9. Números pares e impares, mencionar cuántos de cada uno y cuál fue el mayor y

menor, también de cada uno usando FOR 26/09

9.1 Enunciado

Hacer un diagrama de actividades:

- Solicitar el total de veces que pedirá números (control del for)

- Sumará por separado los pares y en otra sumatoria los nones

- Y mencionará cual es el mayor y menor de los pares, así como de los nones

9.2 Diagrama a mano

9.3 Prueba de escritorio

9.4 Diagrama de Rational Rose

9.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication48 { class Program { static void Main(string[] args) { int i = 0, contadorNumero = 0, numeroIngresado = 0, sumaPares = 0, sumaNones = 0; int controlPar = 0, controlNon = 0, parMayor = 0, parMenor = 0, nonMayor = 0, nonMenor = 0; string leer; Console.WriteLine("¿Cuántos números vas a ingresar?"); leer = Console.ReadLine(); contadorNumero = Convert.ToInt32(leer); for (i = 0; i < contadorNumero; i++) { Console.WriteLine("Escribe el número."); leer = Console.ReadLine(); numeroIngresado = Convert.ToInt32(leer); switch (numeroIngresado % 2) { case 0: sumaPares = sumaPares + numeroIngresado; if (controlPar == 0) { parMayor = numeroIngresado; parMenor = numeroIngresado; controlPar++; ; } else { if (numeroIngresado <= parMenor) parMenor = numeroIngresado; else { if (numeroIngresado >= parMayor) parMayor = numeroIngresado; else Console.ReadKey(); } }//Fin Else break; case 1: sumaNones = sumaNones + numeroIngresado; if (controlNon == 0) { nonMayor = numeroIngresado; nonMenor = numeroIngresado; controlNon++; ; } else { if (numeroIngresado <= nonMenor) nonMenor = numeroIngresado;

else { if (numeroIngresado >= nonMayor) nonMayor = numeroIngresado; else Console.ReadKey(); } }//Fin Else break; default: break; }//Fin Switch }//Fin FOR Console.WriteLine("Par Mayor = {0}", parMayor); Console.WriteLine("Par Menor = {0}", parMenor); Console.WriteLine("Non Mayor = {0}", nonMayor); Console.WriteLine("Non Menor = {0}", nonMenor); Console.WriteLine("La suma de los números pares = {0}", sumaPares); Console.WriteLine("La suma de los números nones = {0}", sumaNones); if (sumaPares > sumaNones) Console.WriteLine("La suma de los números pares es mayor que los impares."); else Console.WriteLine("La suma de los números impares es mayor que los pares."); Console.ReadKey(); } } }

9.6 Capturas de Pantalla

10. Números pares e impares, mencionar cuántos de cada uno pares e impares,

mencionar cuántos de cada uno usando While 26/09

10.1 Enunciado

Hacer un diagrama de actividades:

- Solicitar el total de veces que pedirá números

- Sumará por separado los pares ingresados y en otra sumatoria los nones ingresados

- Y mencionará la cantidad de pares e impares ingresados en el ciclo

10.2 Diagrama a mano

10.3 Prueba de escritorio

10.4 Diagrama de Rational Rose

10.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication12 { class Program { static void Main(string[] args) { int contaNumero = 0, i = 0, numeroIngresado = 0; int sumaPares = 0, sumaNon = 0; string leer; Console.WriteLine("¿Cuántos números vas a ingresar?"); leer = Console.ReadLine(); contaNumero = Convert.ToInt32(leer); if (contaNumero <= 0) Console.WriteLine("Error al ingresar número."); else { i = 0; while (i < contaNumero) { Console.WriteLine("Escribe el número."); leer = Console.ReadLine(); numeroIngresado = Convert.ToInt32(leer); if (numeroIngresado == 0) Console.WriteLine("Error; no se puede poner cero."); else switch (numeroIngresado % 2) { case 0: Console.WriteLine("El número {0} es par", numeroIngresado); sumaPares = sumaPares + numeroIngresado; i++; break; case 1: Console.WriteLine("El número {0} es non.", numeroIngresado); sumaNon = sumaNon + numeroIngresado; i++; break; default: Console.WriteLine("Error."); break; }//Cierre Switch }//Cierre while }//Cierre else Console.WriteLine("La suma de los número pares={0}", sumaPares); Console.WriteLine("La suma de los número nones={0}", sumaNon); Console.ReadKey(); } } }

10.6 Capturas de Pantalla

11. Edades con FOR 05/10

11.1 Enunciado

Realizar un diagrama de actividad:

Debe de pedir cuantas edades introducirá (ciclo)

1. Pide la edad

2. Valida que sea de 0-120 error

3. Al final debe saber:

Cuantas mayores y el promedio de los mismos.

Cuantos menores y el promedio de los mismos.

Cuantas edades erróneas se introdujeron.

11.2 Diagrama a mano

11.3 Prueba de escritorio

11.4 Diagrama de Rational Rose

11.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication49 { class Program { static void Main(string[] args) { int cantidadEdades = 0, i = 0, edad = 0, contadorError = 0, contadorMayor = 0; int contadorMenor = 0, sumaMayor = 0, sumaMenor = 0; string leer; Console.WriteLine("Introdusca el número de edades a calcular."); leer = Console.ReadLine(); cantidadEdades = Convert.ToInt32(leer); for (i = 0; i < cantidadEdades; i++) { Console.WriteLine("Introdusca la edad."); leer = Console.ReadLine(); edad = Convert.ToInt32(leer); if (edad < 0 || edad > 120) { Console.WriteLine("Error."); contadorError++; } else { if (edad <= 17) { contadorMenor++; sumaMenor = sumaMenor + edad; } else { contadorMayor++; sumaMayor = sumaMayor + edad; } } }//Fin For Console.WriteLine("Numero total de mayores de edad = {0} y su promedio = {1}", contadorMayor, sumaMayor / contadorMayor); Console.WriteLine("Numero total de menores de edad = {0} y su promedio = {1}", contadorMenor, sumaMenor / contadorMenor); Console.WriteLine("Numero totales de errores = {0}", contadorError); Console.ReadKey(); } } }

11.6 Capturas de Pantalla

12. Llamada minutos y segundo con Do-While 26/10

12.1 Enunciado

Hacer con do-while el algoritmo de la llamada telefónica, en lugar de solicita "x" número de llamadas, lo que debe

preguntar es si desea capturar el tiempo de otra llamada, y cuando ya no quiera se sale del do-while. Al salir debe

mostrar el tiempo total y el monto total. Nuevamente aplica que los primero 5 minutos cuesta .50 cada minuto y a

partir del segundo 6 es un peso por minuto.

12.2 Diagrama a mano

12.3 Prueba de escritorio

12.4 Diagrama de Rational Rose

12.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication20 { class Program { static void Main(string[] args) { int segundos = 0, minutos = 0, opcion = 0, tiempo = 0; double monto = 0; string leer; do { Console.WriteLine("Desea sacar el costo de su llamada. (Escriba el numero del inciso.)"); Console.WriteLine("1) Si."); Console.WriteLine("2) No."); leer = Console.ReadLine(); opcion = Convert.ToInt32(leer); switch (opcion) { case 1: Console.WriteLine("Dame los minutos de la llamada."); leer = Console.ReadLine(); minutos = Convert.ToInt32(leer); Console.WriteLine("Dame los segundos de la llamada."); leer = Console.ReadLine(); segundos = Convert.ToInt32(leer); if (minutos <= 0 || minutos > 60 & segundos < 0 || segundos > 60) Console.WriteLine("Error al ingresar los datos."); else segundos = segundos + (minutos * 60); if (segundos % 60 > 0) { minutos++; tiempo = minutos + tiempo; if (minutos <= 5) { Console.WriteLine("El precio de llamada es {0}", minutos * 0.5); monto = monto + (minutos * 0.5); } else { Console.WriteLine("El precio de llamada es {0}", minutos - 2.5); monto = monto + (minutos - 2.5); } } else { tiempo = minutos + tiempo; if (minutos <= 5) { Console.WriteLine("El precio de llamada es {0}", minutos * 0.5); monto = monto + (minutos * 0.5); } else {

Console.WriteLine("El precio de llamada es {0}", minutos - 2.5); monto = monto + (minutos - 2.5); } } break; case 2: Console.WriteLine("El costo total es ${0} y el tiempo total es {1} minutos", monto, tiempo); Console.WriteLine("Fin del programa."); break; default: break; }//Fin Switch }//fin do-while while (opcion != 2); Console.ReadKey(); } } }

12.6 Capturas de Pantalla

13. Calificaciones A, B y C con While 20/10

13.1 Enunciado

Hacer un diagrama de actividades: (Con While)

- Solicitar el total de alumnos a ingresar

- Las calificaciones que se pueden ingresar son:

A= 10

B= 8

C=6

- Y mencionará al final del ciclo el promedio general obtenido

13.2 Diagrama a mano

13.3 Prueba de escritorio

13.4Diagrama de Rational Rose

13.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication13 { class Program { static void Main(string[] args) { int i, calif, califTotal = 0, numeroAlumnos; string leer, letraFigura; Console.WriteLine("¿Cuál es el número total de alumnos para calcular su promedio?"); leer = Console.ReadLine(); numeroAlumnos = Convert.ToInt32(leer); i = 0; while (i < numeroAlumnos) { Console.WriteLine("Escriba la letra obtenida."); letraFigura = Console.ReadLine(); switch (letraFigura) { case "A": case "a": Console.WriteLine("Calificación obtenida es 10."); calif = 10; califTotal = califTotal + calif; i++; break; case "B": case "b": Console.WriteLine("Calificación obtenida es 8."); calif = 8; califTotal = califTotal + calif; i++; break; case "C": case "c": Console.WriteLine("Calificación obtenida es 6."); calif = 6; califTotal = califTotal + calif; i++; break; default: Console.WriteLine("Error."); break; }//Cierre Switch }//Cierre while Console.WriteLine("Promedio General = {0}", (califTotal) / (numeroAlumnos)); Console.ReadKey();

} } }

13.6 Capturas de Pantalla

14. Área con Do-While 21/10

14.1 Enunciado

Hacer un diagrama de actividades que cumpla con lo siguiente. (Con DO WHILE)

Muestre un menú para calcular el área de:

A. Cuadrado

B. Rectángulo

C. Triángulo

D. Salir

Solicitar los valores correspondientes:

A. Los datos deben ser mayor a 0

B. En el caso del rectángulo la altura debe ser mayor a la base

C. En el caso del triángulo no importa que la altura sea mayor a la base

14.2 Diagrama a mano

14.3 Prueba de escritorio

14.4 Diagrama de Rational Rose

14.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication16 { class Program { static void Main(string[] args) { int lado = 0, opcion = 0; double basef = 0, altura = 0; string leer; do { Console.WriteLine("Poner el número de la figura que quiera sacar."); Console.WriteLine("1= Cuadrado."); Console.WriteLine("2= Rectángulo."); Console.WriteLine("3= Triángulo."); Console.WriteLine("4= Salir."); leer = Console.ReadLine(); opcion = Convert.ToInt32(leer); switch (opcion) { case 1: Console.WriteLine("Escribir el tamaño del lado."); leer = Console.ReadLine(); lado = Convert.ToInt32(leer); if (lado <= 0) Console.WriteLine("Error"); else Console.WriteLine("El área del cuadrado = {0}", lado * lado); break; case 2: Console.WriteLine("Escribir el tamaño de la base"); leer = Console.ReadLine(); basef = Convert.ToDouble(leer); if (basef <= 0) Console.WriteLine("Error"); else { Console.WriteLine("Escribe el tamaño de la altura."); leer = Console.ReadLine(); altura = Convert.ToDouble(leer); if (altura < basef) Console.WriteLine("Error: La altura es menor que la base."); else Console.WriteLine("El área del rectángulo = {0}", basef * altura); }//Fin else break; case 3: Console.WriteLine("Escribir el tamaño de la base"); leer = Console.ReadLine(); basef = Convert.ToDouble(leer); if (basef <= 0) Console.WriteLine("Error"); else {

Console.WriteLine("Escribe el tamaño de la altura."); leer = Console.ReadLine(); altura = Convert.ToDouble(leer); if (altura <= 0) Console.WriteLine("Error"); else Console.WriteLine("El área del triángulo es ={0} ", (basef * altura) / 2); }//Fin else break; case 4: break; default: Console.WriteLine("Error."); break; }//Fin Switch } while (opcion != 4); Console.ReadKey(); } } }

14.6 Captura de Pantalla

15. Frutas con Do-While 28/10

15.1 Enunciado

En una tiendita escolar únicamente vende ensaladas en vaso, sus claves son: j= jícama, m = mango p = pepinos, s =

sandía, z = zanahorias

Los precios de todas las ensaladas son de $17.00

Los volúmenes usados para armar los vasos con ensalada son los siguientes:

Jícama = 1k para 7 vasos Mango = 1 K para 5 vasos Pepinos = 1 K para 6 vasos

Sandía = 1k para 5.5 vasos Zanahoria = 1k para 6.5 vasos

Se necesita capturar la venta del día, se debe solicitar la fecha de venta y el número total de vasos vendidos de cada

cosa

Deberá pregunta si los datos son correctos, de no serlo, pedirlos nuevamente

Mostrará el total vendido por cada cosa y la suma total de venta del día, así como los kilos consumidos de cada cosa

15.2 Diagrama a mano

15.3 Prueba de escritorio

15.4 Diagrama de Rational Rose

15.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication23 { class Program { static void Main(string[] args) { //Definición de variables int dia = 0, mes = 0, año = 0, vasosJica = 0, datos = 0; int vasosMan = 0, vasosPepi = 0, vasosSan = 0, vasosZana = 0; double kilos; string leer; do { Console.WriteLine("Ingrese el día."); leer = Console.ReadLine(); dia = Convert.ToInt32(leer); Console.WriteLine("Ingrese el número del mes que este."); leer = Console.ReadLine(); mes = Convert.ToInt32(leer); Console.WriteLine("Ingrese el año en el que se encuentre."); leer = Console.ReadLine(); año = Convert.ToInt32(leer); } while (dia < 0 || dia > 31 || mes < 0 || mes > 12 || año <= 2000 || año > 2200); do { do { Console.WriteLine("¿Cuántos vasos de jícama se vendieron?"); leer = Console.ReadLine(); vasosJica = Convert.ToInt32(leer); } while (vasosJica < 0); Console.WriteLine("La cantidad que ingresó es correcta.(Escriba el inciso de su respuesta.)"); Console.WriteLine("1) SI"); Console.WriteLine("2) NO"); leer = Console.ReadLine(); datos = Convert.ToInt32(leer); } while (datos == 2); //Fin do-while do { do { Console.WriteLine("¿Cuántos vasos de mangos se vendieron?"); leer = Console.ReadLine(); vasosMan = Convert.ToInt32(leer); } while (vasosMan < 0);

Console.WriteLine("La cantidad que ingresó es correcta.(Escriba el inciso de su respuesta.)"); Console.WriteLine("1) SI"); Console.WriteLine("2) NO"); leer = Console.ReadLine(); datos = Convert.ToInt32(leer); } while (datos == 2); //Fin do-while do { do { Console.WriteLine("¿Cuántos vasos de pepinos se vendieron?"); leer = Console.ReadLine(); vasosPepi = Convert.ToInt32(leer); } while (vasosPepi < 0); Console.WriteLine("La cantidad que ingresó es correcta.(Escriba el inciso de su respuesta.)"); Console.WriteLine("1) SI"); Console.WriteLine("2) NO"); leer = Console.ReadLine(); datos = Convert.ToInt32(leer); } while (datos == 2); //Fin do-while do { do { Console.WriteLine("¿Cuántos vasos de sandía se vendieron?"); leer = Console.ReadLine(); vasosSan = Convert.ToInt32(leer); } while (vasosSan < 0); Console.WriteLine("La cantidad que ingresó es correcta.(Escriba el inciso de su respuesta.)"); Console.WriteLine("1) SI"); Console.WriteLine("2) NO"); leer = Console.ReadLine(); datos = Convert.ToInt32(leer); } while (datos == 2); //Fin do-while do { do { Console.WriteLine("¿Cuántos vasos de zanahoria se vendieron?"); leer = Console.ReadLine(); vasosZana = Convert.ToInt32(leer); } while (vasosZana < 0);

Console.WriteLine("La cantidad que ingresó es correcta.(Escriba el inciso de su respuesta.)"); Console.WriteLine("1) SI"); Console.WriteLine("2) NO"); leer = Console.ReadLine(); datos = Convert.ToInt32(leer); } while (datos == 2); //Fin do-while kilos = (vasosJica / 7) + (vasosMan / 5) + (vasosPepi / 6) + (vasosSan / 5.5) + (vasosZana / 6.5); Console.WriteLine("El número total de vasos vendidos fue = {0} ", vasosJica + vasosMan + vasosPepi + vasosSan + vasosZana); Console.WriteLine("El total de jícamas vendidas fue = ${0} y los kilos consumidos fueron de {1}kg", vasosJica * 17, vasosJica / 7); Console.WriteLine("El total de mangos vendidos fue = ${0} y los kilos consumidos fueron de {1}kg", vasosMan * 17, vasosMan / 5); Console.WriteLine("El total de pepinos vendidos fue = ${0} y los kilos consumidos fueron de {1}kg", vasosPepi * 17, vasosPepi / 6); Console.WriteLine("El total de sandías vendidas fue = ${0} y los kilos consumidos fueron de {1}kg", vasosSan * 17, vasosSan / 5.5); Console.WriteLine("El total de zanahorias vendidas fue = ${0} y los kilos consumidos fueron de {1}kg", vasosZana * 17, vasosZana / 6.5); Console.WriteLine("Las ventas del día {0} del {1} del {2} fue = ${3} y los kilos totales fue = {4}kg", dia, mes, año, (vasosJica + vasosMan + vasosPepi + vasosSan + vasosZana) * (17), kilos); Console.ReadKey(); } } }

15.6 Capturas de Pantalla

16. Verificación con Do-While 02/11

16.1 Enunciado

Un centro de verificación debe obtener el estatus del día. (Con DO WHILE)

Al entrar un auto se introduce: placa, tipo de verificación, resultado (paso, no paso)

Los tipos de verificación son: "0" -> 274.00 "00" -> 548.00 Rechazos-> 219.00

El sistema imprimirá el recibo con formato que contenga: fecha de la verificación, placa, tipo de verificación, monto

cobrado

Se necesita saber solo totales: cuántos de cada tipo, el monto total de cada tipo y el total cobrado. La placa no se

almacena.

16.2 Diagrama a mano

16.3 Prueba de escritorio

16.4 Diagrama de Rational Rose

16.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication27 { class Program { static void Main(string[] args) { int dia = 0, mes = 0, ano = 0, cero = 0, doble0 = 0, rechazo = 0; int resul = 0, total0 = 0, total00 = 0, totalRechazo = 0; string leer, placa, verifica; do { Console.WriteLine("Ingrese el día"); leer = Console.ReadLine(); dia = Convert.ToInt32(leer); Console.WriteLine("Ingrese el número del mes en el que se encuentre."); leer = Console.ReadLine(); mes = Convert.ToInt32(leer); Console.WriteLine("Ingrese el año en el que se encuentre"); leer = Console.ReadLine(); ano = Convert.ToInt32(leer); } while (dia <= 0 || dia >= 31 || mes <= 0 || mes > 12 || ano <= 1950 || ano >= 2200); //fin while do { Console.WriteLine("Ingrese el número de la placa del automóvil."); placa = Console.ReadLine(); Console.WriteLine("Ingrese el tipo de verificación."); Console.WriteLine("1) 0"); Console.WriteLine("2) 00"); verifica = Console.ReadLine(); switch (verifica) { case "0": cero++; Console.WriteLine("Ingrese el número del inciso del resultado de la verificación."); Console.WriteLine("1) Pasó."); Console.WriteLine("2) No pasó."); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); if (resul == 2) { totalRechazo = totalRechazo + 219; rechazo++; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} fue rechazada y fue cobrado un total de $219", placa); Console.ReadKey(); Console.WriteLine("Fueron todos los autos ingresados (Ingrese el número del inciso de su respuesta.)"); Console.WriteLine("1) Si");

Console.WriteLine("2) No"); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); } else { total0 = total0 + 274; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} del tipo de verificación 0 le cobraron un total de $274", placa); Console.ReadKey(); Console.WriteLine("Fueron todos los autos ingresados (Ingrese el número del inciso de su respuesta.)"); Console.WriteLine("1) Si"); Console.WriteLine("2) No"); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); }//Fin else break; case "00": doble0++; Console.WriteLine("Ingrese el número del inciso del resultado de la verificación."); Console.WriteLine("1) Pasó."); Console.WriteLine("2) No pasó."); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); if (resul == 2) { totalRechazo = totalRechazo + 219; rechazo++; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} fue rechazada y fue cobrado un total de $219", placa); Console.ReadKey(); Console.WriteLine("Fueron todos los autos ingresados (Ingrese el número del inciso de su respuesta.)"); Console.WriteLine("1) Si"); Console.WriteLine("2) No"); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); } else { total00 = total00 + 548; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} del tipo de verificación 00 le cobraron un total de $548", placa); Console.ReadKey(); Console.WriteLine("Fueron todos los autos ingresados (Ingrese el número del inciso de su respuesta.)"); Console.WriteLine("1) Si"); Console.WriteLine("2) No"); leer = Console.ReadLine(); resul = Convert.ToInt32(leer);

} break; default: break; } } while (resul != 1); Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("El total cobrado fue de ${0}", total0 + total00 + totalRechazo); Console.WriteLine("El total de la verificación 0 fue de {0} y el monto total fue de ${1}", cero, total0); Console.WriteLine("El total de la verificación 00 fue de {0} y el monto total fue de ${1}", doble0, total00); Console.WriteLine("Y por último los rechazados fue un total de {0} y el monto total fue de ${1}", rechazo, totalRechazo); Console.ReadKey(); } } }

16.6 Captura de Pantalla

17. Verificación con FOR 02/11

17.1 Enunciado

Un centro de verificación debe obtener el estatus del día. (Con FOR)

Al entrar un auto se introduce: placa, tipo de verificación, resultado (paso, no paso)

Los tipos de verificación son: "0" -> 274.00 "00" -> 548.00 Rechazos-> 219.00

El sistema imprimirá el recibo con formato que contenga: fecha de la verificación, placa, tipo de verificación, monto

cobrado

Se necesita saber solo totales: cuántos de cada tipo, el monto total de cada tipo y el total cobrado. La placa no se

almacena.

17.2 Diagrama a mano

17.3 Prueba de escritorio

17.4 Diagrama de Rational Rose

17.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication28 { class Program { static void Main(string[] args) { int dia = 0, mes = 0, ano = 0, cero = 0, doble0 = 0, rechazo = 0, autos = 0; int resul = 0, total0 = 0, total00 = 0, totalRechazo = 0, i = 0; string leer, placa, verifica; do { Console.WriteLine("Ingrese el día"); leer = Console.ReadLine(); dia = Convert.ToInt32(leer); Console.WriteLine("Ingrese el número del mes en el que se encuentre."); leer = Console.ReadLine(); mes = Convert.ToInt32(leer); Console.WriteLine("Ingrese el año en el que se encuentre"); leer = Console.ReadLine(); ano = Convert.ToInt32(leer); } while (dia <= 0 || dia >= 31 || mes <= 0 || mes > 12 || ano <= 1950 || ano >= 2200); //fin while Console.WriteLine("¿Cuántos autos vas a ingresar?"); leer = Console.ReadLine(); autos = Convert.ToInt32(leer); for (i = 0; i < autos; i++) { Console.WriteLine("Ingrese el número de la placa del automóvil."); placa = Console.ReadLine(); Console.WriteLine("Ingrese el tipo de verificación."); Console.WriteLine("1) 0"); Console.WriteLine("2) 00"); verifica = Console.ReadLine(); switch (verifica) { case "0": cero++; Console.WriteLine("Ingrese el número del inciso del resultado de la verificación."); Console.WriteLine("1) Pasó."); Console.WriteLine("2) No pasó."); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); if (resul == 2) { totalRechazo = totalRechazo + 219; rechazo++; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} fue rechazada y fue cobrado un total de $219", placa);

} else { total0 = total0 + 274; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} del tipo de verificación 0 le cobraron un total de $274", placa); Console.ReadKey(); }//Fin else break; case "00": doble0++; Console.WriteLine("Ingrese el número del inciso del resultado de la verificación."); Console.WriteLine("1) Pasó."); Console.WriteLine("2) No pasó."); leer = Console.ReadLine(); resul = Convert.ToInt32(leer); if (resul == 2) { totalRechazo = totalRechazo + 219; rechazo++; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} fue rechazada y fue cobrado un total de $219", placa); Console.ReadKey(); } else { total00 = total00 + 548; Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("La placa = {0} del tipo de verificación 00 le cobraron un total de $548", placa); Console.ReadKey(); } break; default: Console.WriteLine("Error."); break; } } Console.WriteLine("La fecha de verificación del {0} del {1} del {2} =", dia, mes, ano); Console.WriteLine("El total cobrado fue de ${0}", total0 + total00 + totalRechazo); Console.WriteLine("El total de la verificación 0 fue de {0} y el monto total fue de ${1}", cero, total0); Console.WriteLine("El total de la verificación 00 fue de {0} y el monto total fue de ${1}", doble0, total00); Console.WriteLine("Y por último los rechazados fue un total de {0} y el monto total fue de ${1}", rechazo, totalRechazo); Console.ReadKey();

} } }

17.6 Captura de Pantalla

18. Inventario con Do-While 03/11

18.1 Enunciado Se requiere de un algoritmo que calcule el inventario actual de un único producto. (Con DO-WHILE)

Se necesita solicitar el saldo del inventario inicial a principios de mes,

Posteriormente mostrará un menú con las siguientes opciones:

1. Compras

2. Ventas

3. Devoluciones sobre compra

4. Devoluciones sobre venta

5. Salidas por merma o por inventario físico

6. Entradas por inventario físico

7. Mostrar inventario actual

8. Terminar

Si escogieron de la opción 1 a la 7 deberá solicitar la cantidad y ésta debe ser mayor igual a cero. Si no lo fue, muestra

error y la solicita nuevamente, en la opción 7 deberá mostrar el saldo hasta ese momento del inventario de dicho

producto, mostrando el total acumulado de cada opción, por ejemplo:

Saldo inicial 10

Compras acumuladas 15

Dev. sobre compra acumuladas -5

Ventas acumuladas -15

Dev. sobre venta 10

Entradas de inventario 6

Salidas de inventario -4

SALDO ACTUAL 17

Es importante destacar que el usuario puede entrar y salir de cualquier opción e ir acumulando y actualizando el saldo,

hasta que de la opción de 8 que es terminar.

18.2 Diagrama a mano

18.3 Prueba de escritorio

18.4 Diagrama de Rational Rose

18.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication30 { class Program { static void Main(string[] args) { int opcion = 0, opcion1 = 0, opcion2 = 0, opcion3 = 0, opcion4 = 0; int opcion5 = 0, opcion6 = 0, inicial = 0, cantidad = 0; string leer; do { Console.WriteLine("Ingrese el inventario inicial."); leer = Console.ReadLine(); inicial = Convert.ToInt32(leer); if (inicial <= 0) Console.WriteLine("Debe de ingresar una cantidad mayor a cero."); } while (inicial <= 0); do { Console.WriteLine("Bienvenido al menú de inicio(Ingrese el número de la opcion que deseé):"); Console.WriteLine("1)Compras."); Console.WriteLine("2)Ventas."); Console.WriteLine("3)Devoluciones sobre compras."); Console.WriteLine("4)Devoluciones sobre venta."); Console.WriteLine("5)Salida por merma o inventario físico."); Console.WriteLine("6)Entradas por inventario físico."); Console.WriteLine("7)Mostrar inventario actual."); Console.WriteLine("8)Terminar."); leer = Console.ReadLine(); opcion = Convert.ToInt32(leer); switch (opcion) { case 1: do { Console.WriteLine("Ingrese la cantidad de compras."); leer = Console.ReadLine(); cantidad = Convert.ToInt32(leer); if (cantidad < 0) Console.WriteLine("Ingresó una cantidad errónea."); else opcion1 = opcion1 + cantidad; } while (cantidad < 0); break; case 2: do { Console.WriteLine("Ingrese la cantidad de ventas."); leer = Console.ReadLine(); cantidad = Convert.ToInt32(leer);

if (cantidad < 0) Console.WriteLine("Ingresó una cantidad errónea."); else opcion2 = (opcion2 - cantidad); } while (cantidad < 0); break; case 3: do { Console.WriteLine("Ingrese la cantidad de devoluciones sobre compra."); leer = Console.ReadLine(); cantidad = Convert.ToInt32(leer); if (cantidad < 0) Console.WriteLine("Ingresó una cantidad errónea."); else opcion3 = (opcion3 - cantidad); } while (cantidad < 0); break; case 4: do { Console.WriteLine("Ingrese la cantidad de devoluciones de ventas."); leer = Console.ReadLine(); cantidad = Convert.ToInt32(leer); if (cantidad < 0) Console.WriteLine("Ingresó una cantidad errónea."); else opcion4 = opcion4 + cantidad; } while (cantidad < 0); break; case 5: do { Console.WriteLine("Ingrese la cantidad de salida por merma o inventario físico."); leer = Console.ReadLine(); cantidad = Convert.ToInt32(leer); if (cantidad < 0) Console.WriteLine("Ingresó una cantidad errónea."); else opcion5 = (opcion5 - cantidad); } while (cantidad < 0); break; case 6: do { Console.WriteLine("Ingrese la cantidad de entrada por inventario físico."); leer = Console.ReadLine(); cantidad = Convert.ToInt32(leer); if (cantidad < 0) Console.WriteLine("Ingresó una cantidad errónea."); else opcion6 = opcion6 + cantidad; } while (cantidad < 0); break;

case 7: Console.WriteLine("Su inventario actual es de:"); Console.WriteLine("Su saldo inicial es = {0}", inicial); Console.WriteLine("Las compras acumuladas es = {0}", opcion1); Console.WriteLine("Las devoluciones sobre compra es = {0}", opcion3); Console.WriteLine("Las ventas acumuladas es = {0}", opcion2); Console.WriteLine("Las devoluciones sobre ventas es = {0}", opcion6); Console.WriteLine("Las salidas por merma o inventario físico = {0}", opcion5); Console.WriteLine("El saldo actual es = {0}", inicial + opcion1 + opcion2 + opcion3 + opcion4 + opcion5 + opcion6); Console.ReadKey(); break; case 8: break; default: Console.WriteLine("Error."); break; } } while (opcion != 8); Console.ReadKey(); } } }

18.6 Capturas de Pantalla

19. Caseta con FOR 08/11

19.1 Enunciado

Realizar el algoritmo de abajo tres veces: con FOR y hacer:

1. Diagrama de actividades en libreta

2. Prueba de escritorio

3. Rational Rose

4. Realizar el código en C#

ALGORITMO:

El algoritmo debe calcular cuántos transportes pasan por una caseta de cobro, los tipos de transporte son autos, camión

y tráiler; lo anterior es en forma de menú y validar la opción deseada e incluir la opción de salir (terminar el programa).

De acuerdo al tipo de transporte es el cobro de la caseta, autos son 50, camión 100 y tráiler 200. Se desea saber al final

cuántos transportes de cada tipo pasaron, el monto cobrado por cada tipo y el total general que cobro la caseta.

19.2 Diagrama a mano

19.3 Prueba de escritorio

19.4 Diagrama de Rational Rose

19.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication34 { class Program { static void Main(string[] args) { int contaAuto = 0, contaCamion = 0, contaTrailer = 0, i = 1; int auto = 0, camion = 0, trailer = 0, numero = 0; string tipo, leer; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); for (i = 1; i > 0; i++) { switch (tipo) { case "1": Console.WriteLine("¿Cuántos autos ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); auto = (numero * 50) + auto; contaAuto = numero + contaAuto; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); break; case "2": Console.WriteLine("¿Cuántos camiones ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); camion = (numero * 100) + camion; contaCamion = numero + contaCamion; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); break; case "3": Console.WriteLine("¿Cuántos traileres ingresaron?");

leer = Console.ReadLine(); numero = Convert.ToInt32(leer); trailer = (numero * 200) + trailer; contaTrailer = numero + contaTrailer; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); break; case "4": i = i * -1; break; default: Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); break; } } Console.WriteLine("El número total de autos que pasaron es ={0} Y el monto fue=${1}", contaAuto, auto); Console.WriteLine("El número total de camiones que pasaron es ={0} Y el monto fue=${1}", contaCamion, camion); Console.WriteLine("El número total de traileres que pasaron es ={0} Y el monto fue=${1}", contaTrailer, trailer); Console.WriteLine("El número total cobrado por la caseta es =${0}", auto + camion + trailer); Console.ReadKey(); } } }

19.6 Captura de Pantalla

20. Caseta con WHILE 08/11

20.1 Enunciado

Realizar el algoritmo de abajo tres veces: con WHILE y hacer:

1. Diagrama de actividades en libreta

2. Prueba de escritorio

3. Rational Rose

4. Realizar el código en C#

ALGORITMO:

El algoritmo debe calcular cuántos transportes pasan por una caseta de cobro, los tipos de transporte son autos, camión

y tráiler; lo anterior es en forma de menú y validar la opción deseada e incluir la opción de salir (terminar el programa).

De acuerdo al tipo de transporte es el cobro de la caseta, autos son 50, camión 100 y tráiler 200. Se desea saber al final

cuántos transportes de cada tipo pasaron, el monto cobrado por cada tipo y el total general que cobro la caseta.

20.2 Diagrama a mano

20.3 Prueba de escritorio

20.4 Diagrama de Rational Rose

20.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication41 { class Program { static void Main(string[] args) { int contaAuto = 0, contaCamion = 0, contaTrailer = 0, i = 1; int auto = 0, camion = 0, trailer = 0, numero = 0; string tipo, leer; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); i = 1; while (i != 0) { switch (tipo) { case "1": Console.WriteLine("¿Cuántos autos ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); auto = (numero * 50) + auto; contaAuto = numero + contaAuto; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); i++; break; case "2": Console.WriteLine("¿Cuántos camiones ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); camion = (numero * 100) + camion; contaCamion = numero + contaCamion; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine();

i++; break; case "3": Console.WriteLine("¿Cuántos traileres ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); trailer = (numero * 200) + trailer; contaTrailer = numero + contaTrailer; Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); i++; break; case "4": i = 0; break; default: Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); break; }//Fin switch }//Fin while Console.WriteLine("El número total de autos que pasaron es ={0} Y el monto fue=${1}", contaAuto, auto); Console.WriteLine("El número total de camiones que pasaron es ={0} Y el monto fue=${1}", contaCamion, camion); Console.WriteLine("El número total de traileres que pasaron es ={0} Y el monto fue=${1}", contaTrailer, trailer); Console.WriteLine("El número total cobrado por la caseta es =${0}", auto + camion + trailer); Console.ReadKey(); } } }

20.6 Captura de Pantalla

21. Caseta con DO-WHILE 08/11

21.1 Enunciado

Realizar el algoritmo de abajo tres veces: con DO-WHILE y hacer:

1. Diagrama de actividades en libreta

2. Prueba de escritorio

3. Rational Rose

4. Realizar el código en C#

ALGORITMO:

El algoritmo debe calcular cuántos transportes pasan por una caseta de cobro, los tipos de transporte son autos, camión

y tráiler; lo anterior es en forma de menú y validar la opción deseada e incluir la opción de salir (terminar el programa).

De acuerdo al tipo de transporte es el cobro de la caseta, autos son 50, camión 100 y tráiler 200. Se desea saber al final

cuántos transportes de cada tipo pasaron, el monto cobrado por cada tipo y el total general que cobro la caseta.

21.2 Diagrama a mano

21.3 Prueba de escritorio

21.4 Diagrama de Rational Rose

21.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication36 { class Program { static void Main(string[] args) { int contaAuto = 0, contaCamion = 0, contaTrailer = 0, i = 0; int auto = 0, camion = 0, trailer = 0, numero = 0; string tipo, leer; do { Console.WriteLine("Ingrese el tipo de auto que ingresó. (Ingrese el número de su respuesta.)"); Console.WriteLine("1) Auto"); Console.WriteLine("2) Camión"); Console.WriteLine("3) Trailer"); Console.WriteLine("4) Salir"); tipo = Console.ReadLine(); switch (tipo) { case "1": Console.WriteLine("¿Cuántos autos ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); auto = (numero * 50) + auto; contaAuto = numero + contaAuto; break; case "2": Console.WriteLine("¿Cuántos camiones ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); camion = (numero * 100) + camion; contaCamion = numero + contaCamion; break; case "3": Console.WriteLine("¿Cuántos traileres ingresaron?"); leer = Console.ReadLine(); numero = Convert.ToInt32(leer); trailer = (numero * 200) + trailer; contaTrailer = numero + contaTrailer; break; case "4": break; default: break; }

} while (tipo != "4"); Console.WriteLine("El número total de autos que pasaron es ={0} Y el monto fue=${1}", contaAuto, auto); Console.WriteLine("El número total de camiones que pasaron es ={0} Y el monto fue=${1}", contaCamion, camion); Console.WriteLine("El número total de traileres que pasaron es ={0} Y el monto fue=${1}", contaTrailer, trailer); Console.WriteLine("El número total cobrado por la caseta es =${0}", auto + camion + trailer); Console.ReadKey(); } } }

21.6 Captura de Pantalla

22. Menú de exponente y raíz cuadrada 09/11

22.1 Enunciado

Realizar un diagrama de actividades que calcule exponentes y raíz cuadrada

22.2 Diagrama a mano

22.3 Prueba de escritorio

22.4 Diagrama de Rational Rose

22.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication42 { class Program { static void Main(string[] args) { double basee = 0, potencia = 0, resulExpo = 0, resulRaiz = 0; string opcion, leer; do { Console.WriteLine("Ingrese el número del inciso para hacer su operación."); Console.WriteLine("1)Exponente."); Console.WriteLine("2)Raíz cuadrada."); Console.WriteLine("3)Salir"); opcion = Console.ReadLine(); switch (opcion) { case "1": Console.WriteLine("Ingrese el número base."); leer = Console.ReadLine(); basee = Convert.ToDouble(leer); Console.WriteLine("Ingrese la potencia."); leer = Console.ReadLine(); potencia = Convert.ToDouble(leer); resulExpo = Math.Pow(basee, potencia); Console.WriteLine("El resultado de {0}^{1} ={2}", basee, potencia, resulExpo); if (resulExpo % 2 == 0) Console.WriteLine("Su número es entero y par."); else if (resulExpo % 1 == 0) Console.WriteLine("Su número es impar y entero."); else Console.WriteLine("Su número es impar y con decimal."); break; case "2": Console.WriteLine("Ingrese el número para sacar su raíz cuadrada."); leer = Console.ReadLine(); basee = Convert.ToDouble(leer); resulRaiz = Math.Sqrt(basee); Console.WriteLine("El resultado de la raíz cuadrada de {0} es = {1}", basee, resulRaiz); if (resulRaiz % 2 == 0) Console.WriteLine("Su número es entero y par."); else if (resulRaiz % 1 == 0) Console.WriteLine("Su número es impar y entero."); else Console.WriteLine("Su número es impar y con decimal."); break;

case "3": break; default: break; } } while (opcion != "3"); Console.ReadKey(); } } }

22.6 Captura de Pantalla

23. Venta de Boletos de un teatro 09/11

23.1 Enunciado

Se debe de tomar la fecha actual y deberá de pedir los boletos en 3 diferentes etapas de día que son y también tendrá la

opción de salir y se debe de validar cada opción si es correcta o si no la volverá a pedir:

1) Mañana

2) Tarde

3) Noche

4) Salir

Los asientos que tiene este teatro son 20 asientos y se tendrá que validar el error de que no se pueden vender menores

de 0 o mayores a la cantidad de asientos establecida.

También los tipos de boletos que el teatro ofrece al público son:

1) Adulto 2) Niño 3) Discapacitados

Al final del algoritmo se mostrará la fecha actual y la cantidad total de boletos vendidos y también mostrará

individualmente la cantidad de boletos que se vendieron en las 3 etapas del día (Mañana, Tarde, Noche)

23.2 Diagrama a mano

23.3 Prueba de escritorio

23.4 Diagrama de Rational Rose

23.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication53 { class Program { static void Main(string[] args) { int boletosMana = 0, boletosTarde = 0, boletosNoche = 0; int asientosMana = 20, asientosTarde = 20, asientosNoche = 20; int boletoAdulto = 0, boletoNino = 0, boletoDisca = 0; string leer, fecha, res, opcion, error; do { Console.WriteLine("Ingrese la fecha actual."); fecha = Console.ReadLine(); Console.WriteLine("¿La fecha que ingresó es correcta?"); Console.WriteLine("Escriba la respuesta. SI/NO "); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI" || res == "NO"); do { Console.WriteLine("¿En qué momento va a ver la obra?(Ingrese el no. del inciso)"); Console.WriteLine("1)Mañana."); Console.WriteLine("2)Tarde."); Console.WriteLine("3)Noche."); Console.WriteLine("4)Salir."); opcion = Console.ReadLine(); switch (opcion) { case "1": if (asientosMana <= 0) { Console.WriteLine("Ya no hay más asientos disponibles"); boletoAdulto = 0; boletoNino = 0; boletoDisca = 0; do { Console.WriteLine("Desea continuar ingresando boletos.(Escriba la respuesta)"); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") {

Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") opcion = "4"; else Console.WriteLine(""); } else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles.", asientosMana); do { Console.WriteLine("Va ha ingresar boletos de adultos."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoAdulto = Convert.ToInt32(leer); if (boletoAdulto > asientosMana || boletoAdulto < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoAdulto > asientosMana || boletoAdulto < 0); }//Fin else asientosMana = asientosMana - boletoAdulto; do { Console.WriteLine("Va ha ingresar boletos de niños."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF

else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles.", asientosMana); do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoNino = Convert.ToInt32(leer); if (boletoNino > asientosMana || boletoNino < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoNino > asientosMana || boletoNino < 0); } Console.WriteLine(""); asientosMana = asientosMana - boletoNino; do { Console.WriteLine("Vas ha ingresar boletos para discapacitados."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles", asientosMana); do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoDisca = Convert.ToInt32(leer); if (boletoDisca > asientosMana || boletoDisca < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoNino > asientosMana || boletoNino < 0); }

Console.WriteLine(""); asientosMana = asientosMana - boletoDisca; Console.WriteLine("La cantidad de boletos que compró en la mañana fue"); boletosMana = boletosMana + boletoAdulto + boletoNino + boletoDisca; Console.WriteLine("Adulto={0}", boletoAdulto); Console.WriteLine("Niño={0}", boletoNino); Console.WriteLine("Discapacitados={0}", boletoDisca); boletoAdulto = 0; boletoNino = 0; boletoDisca = 0; do { Console.WriteLine("Desea continuar ingresando boletos.(Escriba la respuesta)"); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") opcion = "4"; else Console.WriteLine(""); }//Fin else break; case "2": if (asientosTarde <= 0) { Console.WriteLine("Ya no hay más asientos disponibles"); do { Console.WriteLine("Desea continuar ingresando boletos.(Escriba la respuesta)"); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") opcion = "4"; else Console.WriteLine(""); } else

{ Console.WriteLine("Por el momento cuenta con {0} asientos disponibles.", asientosTarde); do { Console.WriteLine("Va ha ingresar boletos de adultos."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoAdulto = Convert.ToInt32(leer); if (boletoAdulto > asientosTarde || boletoAdulto < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoAdulto > asientosTarde || boletoAdulto < 0); }//Fin else asientosTarde = asientosTarde - boletoAdulto; do { Console.WriteLine("Va ha ingresar boletos de niños."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles.", asientosTarde); do {

Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoNino = Convert.ToInt32(leer); if (boletoNino > asientosTarde || boletoNino < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoNino > asientosTarde || boletoNino < 0); } Console.WriteLine(""); asientosTarde = asientosTarde - boletoNino; do { Console.WriteLine("Vas ha ingresar boletos para discapacitados."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles", asientosTarde); do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoDisca = Convert.ToInt32(leer); if (boletoDisca > asientosTarde || boletoDisca < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoNino > asientosTarde || boletoNino < 0); } Console.WriteLine(""); asientosTarde = asientosTarde - boletoDisca; Console.WriteLine("La cantidad de boletos que compró en la tarde fue"); boletosTarde = boletosTarde + boletoAdulto + boletoNino + boletoDisca; Console.WriteLine("Adulto={0}", boletoAdulto); Console.WriteLine("Niño={0}", boletoNino); Console.WriteLine("Discapacitados={0}", boletoDisca); boletoAdulto = 0; boletoNino = 0; boletoDisca = 0; do {

Console.WriteLine("Desea continuar ingresando boletos.(Escriba la respuesta)"); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") opcion = "4"; else Console.WriteLine(""); }//Fin else break; case "3": if (asientosNoche <= 0) { Console.WriteLine("Ya no hay más asientos disponibles"); do { Console.WriteLine("Desea continuar ingresando boletos.(Escriba la respuesta)"); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") opcion = "4"; else Console.WriteLine(""); } else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles.", asientosNoche); do { Console.WriteLine("Va ha ingresar boletos de adultos."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF

else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoAdulto = Convert.ToInt32(leer); if (boletoAdulto > asientosNoche || boletoAdulto < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoAdulto > asientosNoche || boletoAdulto < 0); }//Fin else asientosNoche = asientosNoche - boletoAdulto; do { Console.WriteLine("Va ha ingresar boletos de niños."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles.", asientosNoche); do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoNino = Convert.ToInt32(leer); if (boletoNino > asientosNoche || boletoNino < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoNino > asientosNoche || boletoNino < 0); }//Fin else Console.WriteLine("");

asientosNoche = asientosNoche - boletoNino; do { Console.WriteLine("Vas ha ingresar boletos para discapacitados."); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO"; } while (error == "SI"); if (res == "NO") Console.WriteLine(""); else { Console.WriteLine("Por el momento cuenta con {0} asientos disponibles", asientosNoche); do { Console.WriteLine("¿Cuántos boletos vas a comprar?"); leer = Console.ReadLine(); boletoDisca = Convert.ToInt32(leer); if (boletoDisca > asientosNoche || boletoDisca < 0) Console.WriteLine("Cantidad errónea."); else Console.WriteLine(""); } while (boletoNino > asientosNoche || boletoNino < 0); }//Fin else Console.WriteLine(""); asientosNoche = asientosNoche - boletoDisca; Console.WriteLine("La cantidad de boletos que compró en la noche fue"); boletosNoche = boletosNoche + boletoAdulto + boletoNino + boletoDisca; Console.WriteLine("Adulto={0}", boletoAdulto); Console.WriteLine("Niño={0}", boletoNino); Console.WriteLine("Discapacitados={0}", boletoDisca); boletoAdulto = 0; boletoNino = 0; boletoDisca = 0; do { Console.WriteLine("Desea continuar ingresando boletos.(Escriba la respuesta)"); Console.WriteLine("SI/NO"); res = Console.ReadLine().ToUpper(); if (res != "SI" & res != "NO") { Console.WriteLine("Error."); error = "SI"; }//Fin IF else error = "NO";

} while (error == "SI"); if (res == "NO") opcion = "4"; else Console.WriteLine(""); }//Fin else break; }//Fin switch } while (opcion != "4"); Console.WriteLine("El {0} la cantidad de boletos que se vendieron fueron={1}", fecha, boletosMana + boletosTarde + boletosNoche); Console.WriteLine("La cantidad de boletos vendidos para la obra de la mañana fue = {0}", boletosMana); Console.WriteLine("La cantidad de boletos vendidos para la obra de la tarde fue = {0}", boletosTarde); Console.WriteLine("La cantidad de boletos vendidos para la obra de la noche fue = {0}", boletosNoche); Console.ReadKey(); } } }

23.6 Captura de Pantalla

24. Control de baños y asientos de un teatro.

24.1 Enunciado

El algoritmo se encargará de pedir primero la fecha actual. El propósito de este algoritmo es medir la cantidad de trabajo

que hacen las personas del staff encargadas en la parte de la limpieza de un teatro.

Se deberá ingresar la cantidad de asientos y de baños que se disponen en el teatro. Se debe de mostrar la cantidad

actual que se disponen de baños y cuando las personas hayan terminado de usar se revisará el baño y entonces se

deberá de ingresar si el baño requiere de acciones de limpieza y se sumará la cantidad de la cantidad de acciones de

limpieza que se usaron en los excusados y el mismo proceso se utilizará para los asientos del teatro al final se preguntará

si las obras de teatro o la jornada laboral ha terminado. Y cuando haya terminado mostrará la fecha actual y la cantidad

de staff que se contó en ese día y la suma total de los baños que se utilizaron acciones de limpieza y de los asientos del

teatro.

Los errores a validar son que no se pueden pasar de la cantidad establecida de los excusados y de los asientos y se

volverá a preguntar que ingrese la cantidad correcta.

24.2 Diagrama a mano.

24.3 Prueba de escritorio

24.4 Diagrama de Rational Rose

24.5 Código para C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication36 { class Program { static void Main(string[] args) { int noStaff = 0, asientos = 0, excu = 0, noBano = 0, noAsien = 0; int cantidadBano = 0, cantidadAsien = 0, limpBano = 0, limpAsien = 0; string fecha, res, leer; Console.WriteLine("Ingrese la fecha actual."); fecha = Console.ReadLine(); do { Console.WriteLine("Ingrese la cantidad que tiene de staff."); leer = Console.ReadLine(); noStaff = Convert.ToInt32(leer); } while (noStaff < 0); do { Console.WriteLine("Ingrese la cantidad de asientos disponibles."); leer = Console.ReadLine(); asientos = Convert.ToInt32(leer); } while (asientos < 0); do { Console.WriteLine("Ingrese la cantidad de excusados disponibles."); leer = Console.ReadLine(); excu = Convert.ToInt32(leer); } while (excu < 0); do { do { Console.WriteLine("Ingrese la cantidad de baños ocupados"); leer = Console.ReadLine(); noBano = Convert.ToInt32(leer); } while (noBano < 0 || noBano > excu); do { Console.WriteLine("Usted cuenta con {0} excusados disponibles.", excu - noBano); Console.WriteLine("Han terminado de usar el baño. (Ingrese el no. del inciso)"); Console.WriteLine("1) SI, 2) NO"); res = Console.ReadLine(); } while (res != "1"); do

{ Console.WriteLine("¿Cuántos requieren de acciones de limpieza?"); leer = Console.ReadLine(); cantidadBano = Convert.ToInt32(leer); } while (cantidadBano > noBano || cantidadBano < 0); limpBano = cantidadBano + limpBano; do { Console.WriteLine("Ingrese la cantidad de asientos ocupados"); leer = Console.ReadLine(); noAsien = Convert.ToInt32(leer); } while (noAsien < 0 || noAsien > excu); do { Console.WriteLine("Usted cuenta con {0} asientos disponibles.", asientos - noAsien); Console.WriteLine("Han terminado de usar los asientos (Ingrese el no. del inciso)"); Console.WriteLine("1) SI, 2) NO"); res = Console.ReadLine(); } while (res != "1"); do { Console.WriteLine("¿Cuántos requieren de acciones de limpieza?"); leer = Console.ReadLine(); cantidadAsien = Convert.ToInt32(leer); } while (cantidadAsien > noAsien || cantidadAsien < 0); limpAsien = cantidadAsien + limpAsien; Console.WriteLine("Las obras han terminado.(Ingrese el no. del inciso de su respuesta)"); Console.WriteLine("1) SI, 2) NO"); res = Console.ReadLine(); } while (res != "1"); Console.WriteLine("La obra del {0}", fecha); Console.WriteLine("Tuvo la cantidad de {0} staff disponible y el total de limpieza de los baños fue = {1} y de los asientos fue = {2}", noStaff, limpBano, limpAsien); Console.ReadKey(); } } }

24.6 Capturas de Pantalla

25. Áreas con while

25.1 Enunciado

Hacer un diagrama de actividades que cumpla con lo siguiente. (Con While)

Muestre un menú para calcular el área de:

A. Cuadrado

B. Rectángulo

C. Triángulo

Solicitar los valores correspondientes:

A. Los datos deben ser mayor a 0

B. En el caso del rectángulo la altura debe ser mayor a la base

C. En el caso del triángulo no importa que la altura sea mayor a la base

25.2 Diagrama a mano

25.3 Prueba de escritorio

25.4 Diagrama de Rational Rose

25.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication16 { class Program { static void Main(string[] args) { double lado = 0, tamanoBase = 0, altura = 0; int contador = 0, i = 0; string leer, letraFigura; do { Console.WriteLine("Escriba cuántas figuras quieres sacar su área"); leer = Console.ReadLine(); contador = Convert.ToInt32(leer); if (contador <= 0) Console.WriteLine("Error."); else Console.WriteLine(""); } while (contador <= 0); i = 0; while (i < contador) { Console.WriteLine("Poner la letra de la figura que quiera sacar."); Console.WriteLine("A) Cuadrado."); Console.WriteLine("B) Rectángulo."); Console.WriteLine("C) Triángulo."); Console.WriteLine("D) Salir."); letraFigura = Console.ReadLine(); switch (letraFigura) { case "A": case "a": Console.WriteLine("Escribir el tamaño del lado."); leer = Console.ReadLine(); lado = Convert.ToInt32(leer); if (lado <= 0) Console.WriteLine("Error"); else Console.WriteLine("El área del cuadrado = {0}", lado * lado); i++; break; case "B": case "b": Console.WriteLine("Escribir el tamaño de la base"); leer = Console.ReadLine(); tamanoBase = Convert.ToDouble(leer); if (tamanoBase <= 0) Console.WriteLine("Error"); else { Console.WriteLine("Escribe el tamaño de la altura."); leer = Console.ReadLine(); altura = Convert.ToDouble(leer);

if (altura < tamanoBase) Console.WriteLine("Error: La altura es menor que la base."); else Console.WriteLine("El área del rectángulo = {0}", tamanoBase * altura); }//Fin else i++; break; case "C": case "c": Console.WriteLine("Escribir el tamaño de la base"); leer = Console.ReadLine(); tamanoBase = Convert.ToDouble(leer); if (tamanoBase <= 0) Console.WriteLine("Error"); else { Console.WriteLine("Escribe el tamaño de la altura."); leer = Console.ReadLine(); altura = Convert.ToInt32(leer); if (altura <= 0) Console.WriteLine("Error"); else Console.WriteLine("El área del triángulo es ={0} ", (tamanoBase * altura) / 2); }//Fin else i++; break; case "D": case "d": break; default: Console.WriteLine("Error."); break; }//Fin Switch }//Fin while Console.ReadKey(); } } }

25.6 Capturas de Pantalla

26. Calificaciones A, B y C con For 20/10

26.1 Enunciado

Hacer un diagrama de actividades:

- Solicitar el total de alumnos a ingresar (Con FOR)

- Las calificaciones que se pueden ingresar son:

A= 10

B= 8

C=6

- Y mencionará al final del ciclo el promedio general obtenido.

26.2 Diagrama a mano

26.3 Prueba de escritorio

26.4 Diagrama de Rational Rose

26.5 C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication13 { class Program { static void Main(string[] args) { int i, calif, califTotal = 0, numeroAlumnos; string leer, letra; Console.WriteLine("¿Cuál es el número total de alumnos para calcular su promedio?"); leer = Console.ReadLine(); numeroAlumnos = Convert.ToInt32(leer); for (i = 0; i < numeroAlumnos; i++) { Console.WriteLine("Escriba la letra obtenida."); letra = Console.ReadLine(); switch (letra) { case "A": case "a": Console.WriteLine("Calificación obtenida es 10."); calif = 10; califTotal = califTotal + calif; break; case "B": case "b": Console.WriteLine("Calificación obtenida es 8."); calif = 8; califTotal = califTotal + calif; break; case "C": case "c": Console.WriteLine("Calificación obtenida es 6."); calif = 6; califTotal = califTotal + calif; break; default: Console.WriteLine("Error."); break; }//Cierre Switch }//Cierre for Console.WriteLine("Promedio General = {0}", (califTotal) / (numeroAlumnos)); Console.ReadKey(); } } }

26.6 Captura de Pantalla