• No results found

CHAPTER THREE: RESEARCH METHODOLOGY 3.1 INTRODUCTION

3.9 ETHICAL CONSIDERATIONS

29.‐ Dado N valores de Y, haga un programa para calcular el resultado de la siguiente función:

<

+

<

<

+

=

caso

otro

cualquier

para

0

64

Y

si33

1

Y

Y

33

Y

si11

10

Y

11

Y

si0

36

Y

3

X

10 15 4

*

30.- Resuelva el problema anterior, pero ahora considere que no existe la operación de potencia.

31.‐ De una empresa con N empleados, necesitamos obtener el número de empleado y sueldo del trabajador con el mayor sueldo de la empresa. Haga el porgrama correspondiente.

32.‐ La compañía de Luz "del Centro" desea imprimir los recibos de cobro de los cuenta habitantes, en el último periodo. Desea obtener también el total de cobros del periodo. Por cada cliente se ingresa su nombre, dirección, registro inicial y registro final. El cobro se efectúa con base en la siguiente tabla.

140 KVH o menos ‐‐‐> s/. 3.20 Los siguientes KVH ‐‐‐> s/. 0.15 por KVH

Exceso sobre 310 KVH ‐‐‐> s/. 0.097 por KVH Haga un programa para calcular lo solicitado anteriormente.

33.‐ En una universidad se necesita obtener una lista de alumnos candidatos a la Facultad Menor de Economía, Administración, Contabilidad e Ingeniería en Computación. Las condiciones para ser seleccionado como presunto candidato para entrar a la facultad menor, varían de carrera en carrera y se presentan a continuación:

Condiciones para Facultad Menor de Economía: Semestre >= 5 y promedio >= 8.5

Condiciones para Facultad Menor de Administración: semestre >= 5 y promedio >= 8.8

Condiciones para Facultad Menor de Contabilidad: semestre >= 5 y promedio >= 8.5

Condiciones para Facultad Menor de Computación: semestre >= 5 y promedio >= 8.8

34.‐ En una clase de una universidad se tienen 35 alumnos. Haga un programa que calcule e imprima la matricula y el promedio de calificaciones de cada alumno. Cabe aclarar que cada alumno de la clase tiene 5 calificaciones.

35.‐ Resuelva el ejercicio anterior, pero considere que las cinco calificaciones del alumno se leerán dentro de un ciclo.

36.‐ Resuelva el problema anterior con las consideraciones planteadas en el mismo, pero sólo imprima matricula y promedio del mejor y del peor alumno.

MODULARIDAD

En este capitulo haremos en la “METODOLOGIA DESCENDENTE” llamada también “METODOLOGÍA DE ARRIBA HACIA, ABAJO” (TOP‐DOWN METHOD),introduciremos un nuevo elemento llamado “modulo”,que es la estructura básica de esta metodología.

En resúmen, esta metodología produce una estructura jerarquizada tal como se muestra en la figura.

Problema

La relacion que existe entre la “metodología descendente” y la “programacion modular” es que la programacion modular es la implementación de las unidades logicas o modulos identificados con la metodología descendente.

Programación modular

Es una metodologia que permite la “metodologia descendente” donde un programa es un conjunto de módulos relacionados entre si.

Concepto de módulo

Modulo tiene diferentes acepciones, inicialmente consideramos la definición más general del DRAE.

“Pieza o conjunto unitario de piezas que se repiten en una construccion de cualquier tipo, para hacerla más facíl regular y economica”.

En el contexto informatico, tomaremos también esta acepcion como base para la defincion de módulo. De aquí en adelante, un módulo será la pieza base de construcción de programas, es decir, un programa será una organización de uno o varios módulos relacionados entre sí. Una definicion mas formal es : “un modulo es un conjunto de instrucciones que efectuan un proceso unico y completamentedefinido, que son referenciados mediante un nombre y pueden ser invocados desde diferentes puntos de un programa u otros modulos”.

Problema

Sub‐problema1 Sub‐problema2

Sub‐probleman

En este ejemplo vemos la definición (declaración) de un procedimiento en pseudocódigo para calcular la suma de dos números enteros, los cuales son pasados al subprograma como parámetros de entrada. El procedimiento calcula la suma y la devuelve como un parámetro de salida.

Luego vemos como podemos utilizar el procedimiento invocándolo desde el programa principal u otro procedimiento. Nótese que los nombres de los parámetros en la definición (parámetro1 y parámetro2) no necesariamente tienen que ser los mismos que los utilizados en la invocación (a y b). Nótese también que el compilador chequeará previamente que el tipo de dato del parámetro de salida del procedimiento (en este caso un número entero) pueda ser asignado a la variable c según su tipo.

Al nombre del procedimiento junto con la lista ordenada de sus parámetros de entrada se la conoce como firma del procedimiento. En general, no puede haber dentro del mismo programa dos procedimientos con la misma firma.

Un procedimiento se define :

static void Nombre_delProcedimiento(int n) {

//accion a realizar sin retornar un valor }

Una Funcion se define:

static int Nombre_delaFuncion(int n) {

//accioin a realizar y retorna un valor con la palabra reservada return

EJERCICIOS RESUELTOS

1.‐Escrbir un programa modular que muestre en la pantalla las opciones de sumar,multiplicar,restar y dividir dos numeros cualquiera.

static void Main(string[] args) { int i; i = 0; Console.WriteLine("1: Sumar"); Console.WriteLine("2: Restar"); Console.WriteLine("3: Multiplicar"); Console.WriteLine("4: Dividir"); Console.Write("Ingrese Opcion: ");

i = int.Parse(Console.ReadLine()); if (i == 1) { float N1, N2, Suma; Console.Clear(); N1 = Leer_Numero(); N2 = Leer_Numero(); Suma = Sumar(N1, N2);

Console.WriteLine("La suma es: {0}", Suma); Console.Read(); } if (i == 2) { float N1, N2, resta; Console.Clear(); N1 = Leer_Numero(); N2 = Leer_Numero(); resta = Restar(N1, N2);

Console.Write("La Resta es {0}", resta); Console.ReadLine(); } if (i == 3) { float N1, N2, Multiplicacion; Console.Clear(); N1 = Leer_Numero(); N2 = Leer_Numero(); Multiplicacion = Multiplicar(N1, N2);

Console.Write("La Multiplicacion es :{0}", Multiplicacion); Console.ReadLine(); } if (i == 4) { float N1, N2, Divicion; Console.Clear(); N1 = Leer_Numero(); N2 = Leer_Numero(); Divicion = Dividir(N1, N2);

Console.WriteLine("La Divicion es:{0}", Divicion); if (N2 == 0)

{

Console.Write("La Divicion es infinito "); }

Console.ReadLine(); }

//modulo de ingresar numero

static float Leer_Numero() {

float N;

Console.Write("Ingrese Numero:"); N = float.Parse(Console.ReadLine()); return N;

}

//modulo para calcular la suma

static float Sumar(float N1, float N2) {

return N1 + N2; //va a devolver o retornar la suma de dos numeros }

//modulo para calcular la Resta

static float Restar(float N1, float N2) {

return N1 - N2;//va a devolver o retornar la resta de dos numeros }

//modulo para calcular la Multiplicacion

static float Multiplicar(float N1, float N2) {

return N1 * N2;//va a devolver o retornar la multiplicacion }

//modulo para calcular la Division

static float Dividir(float N1, float N2) {

return N1 / N2;//va a devolver o retornar la divison de dos numeros }

2.‐Escribir un programa modular que muestre en la pantalla la tabla de suma y multiplicar de los números del 1 al 12.

static void Main(string[] args) {

int Opcion; Opcion = 0; Menu();

Opcion = int.Parse(Console.ReadLine());

switch (Opcion) { case 1: TablaSumar(); break; case 2: TablaMultiplicar(); break; } Console.ReadLine(); }

//modulo de la tabla de sumar

static void TablaSumar() {

int Numero; Console.Clear();

Console.Write("Cual es su Número: ");

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

for (int i = 1; i <= 12; i = i + 1) { Console.WriteLine("{0} + {1} = {2}",i,Numero,i+Numero); } Console.ReadLine(); }

//modulo de la tabla de multiplicar

static void TablaMultiplicar() {

int Numero; Console.Clear();

Console.Write("Cual es su Número: "); Numero = int.Parse(Console.ReadLine()); for (int i = 1; i <= 12; i = i + 1) {

Console.WriteLine("{0} x {1} = {2}", i, Numero, i * Numero); }

Console.ReadLine(); }

//modulo menu de tipo procedimiento

static void Menu() {

Console.Clear();

Console.WriteLine("Tablas Aritmeticas"); Console.WriteLine("1. Tabla Sumar");

Console.WriteLine("2. Tabla Multiplicar"); Console.Write("Ingrese Opcion: ");

}

3.‐Escribir un programa modular determine el mayor de dos números.

static void Main(string[] args) {

int Numero1, Numero2,Resultado;

Console.Write("Ingrese Numero 1: ");

Numero1 = int.Parse(Console.ReadLine());

Console.Write("Ingrese Numero 2: ");

Numero2 = int.Parse(Console.ReadLine());

Resultado = CalcularMayor(Numero1, Numero2); Console.WriteLine("El Mayor es:{0}",Resultado);

Console.ReadLine(); }

static int CalcularMayor(int N1,int N2) { int Mayor; if (N1 > N2) Mayor = N1; else Mayor = N2; return Mayor; }

4.‐Escribir un programa modular determine el mayor de tres números.

static void Main(string[] args) {

int numero1, numero2, mayorr, numero3;

Console.Write("Ingresa Numero 1:");

numero1 = int.Parse(Console.ReadLine());

Console.Write("Ingresa Numero 2:");

numero2 = int.Parse(Console.ReadLine());

Console.Write("Ingresa Numero 3:");

numero3 = int.Parse(Console.ReadLine());

mayorr = determinarmayor(numero1, numero2); mayorr = determinarmayor(numero3, mayorr); Console.Write("El Mayor es : {0}", mayorr); Console.Read();

}

static int determinarmayor(int numero1, int numero2) { int mayor; if (numero1 > numero2) mayor = numero1; else mayor = numero2; return mayor; }

5.‐Escribir un programa modular que ordene ters números en forma ascendente.

static void Main(string[] args) {

int numero1, numero2, numero3; Console.Write("Ingresa Numero 1:");

numero1 = int.Parse(Console.ReadLine());

Console.Write("Ingresa Numero 2:");

numero2 = int.Parse(Console.ReadLine());

Console.Write("Ingresa Numero 3:");

numero3 = int.Parse(Console.ReadLine());

ordenartresnumeros(ref numero1,ref numero3); ordenartresnumeros(ref numero2, ref numero3); ordenartresnumeros(ref numero1, ref numero2);

Console.WriteLine("{0},{1},{2}",numero1,numero2,numero3); Console.Read();

}

static void ordenartresnumeros(ref int numero1, ref int numero2) { int tempora; if (numero1 > numero2) { tempora = numero1; numero1 = numero2; numero2 = tempora; } }

6.‐Escribir un programa modualar que muestre el calendario.

static void Main(string[] args) {

int Mes, Anio;

int DiaInicio = 0, NroDiasMes = 0;

Console.Write("Ingresa Mes:");

Mes = int.Parse(Console.ReadLine());

Console.Write("Ingresa Año:");

Anio = int.Parse(Console.ReadLine());

DeterminarInicicioNroDias(Mes, Anio, ref DiaInicio, ref NroDiasMes);

EscribirCalendario(Mes, Anio, DiaInicio, NroDiasMes); Console.ReadLine();

}

static void EscribirCalendario(int Mes, int Anio, int DiaInicio, int NroDiasMes) {

int i, pos;

Console.WriteLine("MES :" + Mes + " AÑO: " + Anio); Console.Clear();

Console.ForegroundColor = ConsoleColor.Red; Console.SetCursorPosition(5, 0);

Console.Write("DO"); Console.SetCursorPosition(10, 0); Console.Write("LU"); Console.SetCursorPosition(15, 0); Console.Write("MA"); Console.SetCursorPosition(20, 0); Console.Write("MI"); Console.SetCursorPosition(25, 0); Console.Write("JU"); Console.SetCursorPosition(30, 0); Console.Write("VI"); Console.SetCursorPosition(35, 0); Console.Write("SA"); Console.ForegroundColor = ConsoleColor.Gray; pos = DiaInicio; int j = 1;

for (i = 1; i <= NroDiasMes; i++) { if (i == 1) { Console.SetCursorPosition(5 * (pos + 1), j); Console.Write(i); } else { Console.SetCursorPosition(5 * (pos + 1), j); Console.Write(i); } pos = pos + 1; if (pos == 7) { Console.WriteLine(); pos = 0; j++; } } }

static void DeterminarInicicioNroDias(int Mes, int Anio, ref int DiaInicio,

ref int NroDiasMes) {

int a, b, c;

//Determianr el día de inicio del mes, Utilizando la Congruencia de

Zeller,

//El Valor de dia estar entre 0 y 6

//0 significa Domingo,1 Lunes , etc

if (Mes <= 2) { a = Mes + 10; b = (Anio - 1) % 100; c = (Anio - 1) / 100; } else { a = Mes - 2; b = Anio % 100; c = Anio / 100; } DiaInicio = (700 + (26 * a - 2) / 10 + 1 + b + b / 4 + c / 4 - 2 * c) % 7;

//Determinar el numero de días del mes intresado

switch (Mes) {

case 3: case 5: case 7: case 8: case 10:

case 12: NroDiasMes = 31; break; case 4:

case 6: case 9:

case 11: NroDiasMes = 30; break; case 2:

if (Anio % 4 == 0) {

NroDiasMes = 29; }

else NroDiasMes = 28; break; }

}

7.‐hacer un programa para saber si una palabra es capicua o no .

Una palabra es capicua cuando se lee de izquierda a derecha y derecha a izquierda la pronunciacion es igual ejemplo : lol ,

static void Main(string[] args) {

Console.WriteLine("Digite la palabra");

string palabra = Console.ReadLine();

string invertida = invertir(palabra);

if (palabra.Equals(invertida))

Console.WriteLine("La palabra es Capicúa"); else

Console.WriteLine("La palabra NO es Capicúa"); Console.Read();

}

static string invertir(string cadena) {

string invertido = "";

for (int i = cadena.Length - 1; i >= 0; i--)

invertido = invertido + cadena.Substring(i, 1); return invertido;

}

8.‐hacer un programa modular para convertir de base 10 a: base 2 , base 8 , base 16

static void Main(string[] args) {

int numero;

string cadena, cadena8, cadena16;

Console.Write("Ingresa Numero:");

numero = int.Parse(Console.ReadLine());

cadena = CambioBase(numero, 2); cadena8 = CambioBase(numero, 8); cadena16 = CambioBase(numero, 16);

Console.WriteLine("\n El número {0} en Base 2 es: {1}", numero, cadena); Console.WriteLine("\n El número {0} en Base 8 es: {1}", numero, cadena8); Console.WriteLine("\n El número {0} en Base 16 es: {1}", numero, cadena16);

Console.Read(); }

static String CambioBase(int numero, int Base) {

int numero2; int digito;

string Cadena = string.Empty; string Ncadena = string.Empty; numero2 = numero;

while (numero2 > 0) {

digito = numero2 % Base; if (digito >= 10)

{

switch (digito) {

case 10: Cadena = Cadena + Convert.ToString("A"); break;

case 11: Cadena = Cadena + Convert.ToString("B"); break;

case 12: Cadena = Cadena + Convert.ToString("C"); break;

case 13: Cadena = Cadena + Convert.ToString("D"); break;

case 14: Cadena = Cadena + Convert.ToString("E"); break;

case 15: Cadena = Cadena + Convert.ToString("F"); break;

} }

else

{

Cadena = Cadena + Convert.ToString(numero2 % Base); }

numero2 = numero2 / Base; }

Cadena.ToCharArray();

for (int i = Cadena.Length - 1; i >= 0; i--) {

Ncadena += Cadena[i]; }

return Ncadena; }

9.‐hacer un programa modular para Calcular la suma de la serie fibonacci s=1+1+2+3+5+8+..

static void Main(string[] args) {

int n, y;

Console.WriteLine("Ingresa n:");

n = int.Parse(Console.ReadLine());

y = Suma(n);

Console.WriteLine("La Suma de los {0} primeros numeros es :{1}", n, y); Console.ReadKey();

}

static int Suma(int cantidad) { int f1, f2, f3 = 0, i; if (cantidad == 1) f3 = 1; else if (cantidad == 2) f3 = 2; else { f1 = 1;

f2 = 2; i = 2; while (i < cantidad) { f3 = f1 + f2; f1 = f2; f2 = f3; i++; } } return f3; }

10.‐Hacer un Programa Modular para saber si 2 numeros son primos gemelos.

static void Main(string[] args) {

int p, q;

//tomamos la variable "p" y haremos que tome los valores

//sucesivos:1,2,3,4,5,6...,empezando por 1.

Console.WriteLine("Ingrese Numero 1:");

p = int.Parse(Console.ReadLine());

Console.WriteLine("Ingrese Numero 2:");

q = int.Parse(Console.ReadLine());

if (q - p == 2 || p - q == 2)

{

if (es_primo(p) != 1 && es_primo(q) != 1) {

Console.Write("si son primos gemelos"); }

else

Console.Write("no son primos gemelos"); }

else

Console.Write("no son primos gemelos"); Console.Read();

}

static int es_primo(int n) {

int primo;//almacena 0 si el numero es primo, 1 en caso contrario

int i;//almacena los numeros de 2 a "n" primo = 0; for (i = 2; i < n; i++) { if (n % i == 0) { primo = 1; } }

return primo;//retornamos o devolvemos el resultado }

11.‐Hacer un Programa Modular para Ordenar 4 Números.

public static int Numero1 = 0; public static int Numero2 = 0; public static int Numero3 = 0; public static int Numero4 = 0; static void Main(string[] args) {

do {

Console.Clear();

Console.Write("Ingrese Numero1: ");

Numero1 = int.Parse(Console.ReadLine());

Console.Write("Ingrese Numero2: ");

Numero2 = int.Parse(Console.ReadLine());

Console.Write("Ingrese Numero3: ");

Numero3 = int.Parse(Console.ReadLine());

Console.Write("Ingrese Numero4: ");

Numero4 = int.Parse(Console.ReadLine());

Ordenar2Numeros(ref Numero1, ref Numero2); Ordenar2Numeros(ref Numero1, ref Numero3); Ordenar2Numeros(ref Numero1, ref Numero4); Ordenar2Numeros(ref Numero2, ref Numero3); Ordenar2Numeros(ref Numero2, ref Numero4); Ordenar2Numeros(ref Numero3, ref Numero4);

Console.WriteLine("Los Numero Ordenados son: {0}, {1}, {2} ,

{3}", Numero1, Numero2, Numero3, Numero4); Console.Write("\nDESEAS CONTINUAR (s/n):");

} while (Console.ReadKey().Key != ConsoleKey.N);

System.Environment.Exit(0); Console.ReadKey();

}

static void Ordenar2Numeros(ref int N1, ref int N2) { int Temp; if (N1 > N2) { Temp = N2; N2 = N1; N1 = Temp; } }

12.‐hacer un programa modular para invertir un numero.

static void Main(string[] args) {

int n; int num;

Console.WriteLine("Ingrese Número:");

n = int.Parse(Console.ReadLine());

num = cambio(n);

Console.WriteLine("El Numero Invertido es : {0}", num); Console.ReadKey();

}

static int cambio(int numero) {

int d, ni, cambioo; ni = 0; while (numero != 0) { d = numero % 10; ni = ni * 10 + d; numero = numero / 10; } cambioo = ni; return cambioo; }

13.‐hacer un programa modular para hacer una mini‐calculadora.

static void Main(string[] args) {

float primero; //el primer numero float segundo; //el segundo numero

string operacion; //operacion a realizar

Console.Title = "Mini-Calculadora";//damos formato Console.BackgroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.Blue; Console.Clear();

Console.SetCursorPosition(3, 2);

Console.WriteLine("Introduzca el primer número:"); Console.SetCursorPosition(60, 2);

primero = float.Parse(Console.ReadLine());

Console.SetCursorPosition(3, 3);

Console.WriteLine("Introduzca operación a realizar:"); Console.SetCursorPosition(59, 3);

operacion = Console.ReadLine();

Console.SetCursorPosition(3, 4); //pedimos el segunos número

Console.WriteLine("Introduzca el segundo número:"); Console.SetCursorPosition(60, 4);

segundo = float.Parse(Console.ReadLine());

Console.SetCursorPosition(57, 5); Console.WriteLine("---"); Console.SetCursorPosition(3, 6);

Console.WriteLine("El resultado es :"); Console.SetCursorPosition(60, 6);

Console.WriteLine(calcular(primero, segundo, operacion)); Console.ReadKey();

}

static string calcular(float primero, float segundo, string operacion) {

float temp;

switch (operacion) {

case "+": temp = primero + segundo;

return temp.ToString();

case "-": temp = primero - segundo;

return temp.ToString();

case "*": temp = primero * segundo;

return temp.ToString();

case "/": temp = primero / segundo;

return temp.ToString();

}

return "-1"; }

14.‐hacer un programa modular que nos muestre los primeros n numeros primos gemelos.

static void Main(string[] args) {

int n;

int p, q, encontrados;

//tomamos la variable "p" y haremos que tome los valores

p = 1; encontrados = 0; Console.WriteLine("Ingrese N:"); n = int.Parse(Console.ReadLine()); while (encontrados < n) { q = p + 2;

if (es_primo(p) != 1 && es_primo(q) != 1) { Console.WriteLine("({0},{1})", p, q); encontrados++; } p++; } Console.Read(); }

static int es_primo(int n) {

int primo;//almacena 0 si el numero es primo, 1 en caso contrario

int i;//almacena los numeros de 2 a "n" primo = 0; for (i = 2; i < n; i++) { if (n % i == 0) { primo = 1; } }

return primo;//retornamos o devolvemos el resultado }

15.‐hacer un programa modular para calcular el maximo comun divisor de N numeros.

static void Main(string[] args) {

//declarmaos nuestras variables

int N, n1, n2, n, c = 2, resto, resto1 = 0, choclo;

string Cadena = string.Empty; do

{

Console.Clear();

Console.Write("Ingrese Cantidad de Datos:");

N = int.Parse(Console.ReadLine());

} while (N < 2);

Console.Write("Ingresa Numero 1:");

n1 = int.Parse(Console.ReadLine());

Console.Write("Ingresa Numero 2:");

n2 = int.Parse(Console.ReadLine()); resto = CalcularMaximo(n1, n2); if (N >= 3) { while (c != N) { c++;

Console.Write("Ingresa Numero {0}:", c);

n = int.Parse(Console.ReadLine());

resto1 = CalcularMaximo(resto, n); resto = resto1;

Console.WriteLine("El Maximo Común Divisor es :" + resto1); }

else

Console.WriteLine("El Maximo Común Divisor es :" + resto); Console.Read();

}

static int CalcularMaximo(int a, int b) { int resto, mcd; resto = a % b; while (resto != 0) { a = b; b = resto; resto = a % b; } mcd = b; return mcd; }

16.‐Hacer un Programa Modualr para calcular el Ordinal de una Fecha.

static int bisiesto(int año) {

if ((año % 4 == 0) && (año % 100 != 0) || (año % 400 == 0)) return 1;

else

return 0; }

static int diasdemes(int mes, int a) { int Nrodias = 0; switch (mes) { case 1: case 3: case 5: case 7: case 8: case 10:

case 12: Nrodias = 31; break; case 2: if (bisiesto(a) == 1) Nrodias = 29; else Nrodias = 28; break; case 4: case 6: case 9:

case 11: Nrodias = 30; break; }

return Nrodias; }

static int fechacorrecta(int d, int m, int a) {

int pepe = 0;

if (a > 0 && m >= 1 && m <= 12) {

pepe = 1; else pepe = 2; } return pepe; }

static int diadanio(int d, int m, int a) {

int dias; int cm; dias = 0;

for (cm = 1; cm <= m - 1; cm++) dias += diasdemes(cm, a); dias += d;

return dias; }

static void Mostras_ordinal(int n) { int u, d, c; u = n % 10; n = n / 10; d = n % 10; c = n / 10; switch (c) {

case 3: Console.Write("tricentésimo "); break; case 2: Console.Write("bicentésimo "); break; case 1: Console.Write("centésimo "); break; }

switch (d) {

case 9: Console.Write("nonagésimo "); break; case 8: Console.Write("octagésimo "); break; case 7: Console.Write("septuagésimo "); break; case 6: Console.Write("sexagésimo "); break; case 5: Console.Write("quicuagésimo "); break; case 4: Console.Write("cuadragésimo "); break; case 3: Console.Write("trigésimo "); break; case 2: Console.Write("vigésimo "); break; case 1: Console.Write("décimo "); break; }

switch (u) {

case 9: Console.Write("noveno"); break; case 8: Console.Write("octavo "); break; case 7: Console.Write("septimo"); break; case 6: Console.Write("sexto "); break; case 5: Console.Write("quinto "); break; case 4: Console.Write("cuarto "); break; case 3: Console.Write("terer "); break; case 2: Console.Write("segundo "); break; case 1: Console.Write("primer "); break; }

Console.WriteLine("día del año \n\n"); }

static void Main(string[] args) {

//calculo del dia del año que hace una determinada fecha

Console.WriteLine("Ingresa dia:");

dia = int.Parse(Console.ReadLine());

Console.WriteLine("Ingresa mes:");

mes = int.Parse(Console.ReadLine());

Console.WriteLine("Ingresa año:");

anio = int.Parse(Console.ReadLine());

if (fechacorrecta(dia, mes, anio) == 1)

Mostras_ordinal(diadanio(dia, mes, anio)); else

Console.WriteLine("Fecha Incorrecta\n\n"); Console.Read();

}

INTRODUCCION A ARREGLOS