You are on page 1of 25

Trabajo Colaborativo Nro.

ALGORITMOS TRABAJO COLABORATIVO Nro.3

Realizados en Microsoft Visual Studio 2010

HERNANDO ARBEY ROBLES


Tutor de Curso

PRESENTADO POR:

Ingrid Lorena Torres Prez Cd. 1.099.204.334

Grupo: 301303_248

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

Barbosa Santander

2016

1 men con 5 ejercicios del taller anterior (5 de los obligatorios)


7) Disear un algoritmo que permita leer la fecha de nacimiento de una persona
(fecha valida), y le indique su signo Zodiacal + acompaado del horscopo.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

namespace fecha_zodiacal
{
class Program
{
static void Main(string[] args)
{
Dim dia, mes As Integer
Dim zodiaco As String
Console

Console.WriteLine ("Ingrese su dia de nacimiento", dia);


dia = Console.ReadLine();
Console.WriteLine("Ingrese su mes de nacimiento");
mes = Console.ReadLine();

If dia >= 21 And mes = 3 Or dia <= 20 And mes = 4 Then


zodiaco = "Aries"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 21 And mes = 3 Or dia <= 21 And mes = 5 Then
zodiaco = "Tauro"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 22 And mes = 5 Or dia <= 21 And mes = 6 Then
zodiaco = "Geminis"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 22 And mes = 6 Or dia <= 22 And mes = 7 Then
zodiaco = "Cancer"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 23 And mes = 7 Or dia <= 22 And mes = 8 Then
zodiaco = "Leo"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 23 And mes = 8 Or dia <= 22 And mes = 9 Then
zodiaco = "Virgo"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 23 And mes = 9 Or dia <= 22 And mes = 10 Then
zodiaco = "Libra"
Console.WriteLine("---------------------------------")
Console.WriteLine("Su signo Zodiacal es: " & zodiaco)
Console.WriteLine("---------------------------------")
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 23 And mes = 10 Or dia <= 22 And mes = 11 Then
zodiaco = "Escorpio"
Console.WriteLine("---------------------------------");
Console.WriteLine("Su signo Zodiacal es: " & zodiaco);
Console.WriteLine("---------------------------------");
Console.WriteLine("Presione enter para salir");
Console.ReadLine()
Else
If dia >= 23 And mes = 11 Or dia <= 21 And mes = 12 Then
zodiaco = "Sagitario"
Console.WriteLine("---------------------------------");
Console.WriteLine("Su signo Zodiacal es: " & zodiaco);
Console.WriteLine("---------------------------------");
Console.WriteLine("Presione enter para salir")
Console.ReadLine()
Else
If dia >= 22 And mes = 12 Or dia <= 20 And mes = 1 Then
zodiaco = "Capricornio"
Console.WriteLine("---------------------------------");
Console.WriteLine("Su signo Zodiacal es: " & zodiaco);
Console.WriteLine("---------------------------------");
Console.WriteLine("Presione enter para salir");
Console.ReadLine()
Else
If dia >= 21 And mes = 1 Or dia <= 19 And mes = 2 Then
zodiaco = "Acuario"
Console.WriteLine("---------------------------------");
Console.WriteLine("Su signo Zodiacal es: " & zodiaco);
Console.WriteLine("---------------------------------");
Console.WriteLine("Presione enter para salir");
Console.ReadLine()
Else
If dia >= 20 And mes = 2 Or dia <= 20 And mes = 3 Then
zodiaco = "Picis"
Console.WriteLine("---------------------------------");
Console.WriteLine("Su signo Zodiacal es: " & zodiaco);
Console.WriteLine("---------------------------------");
Console.WriteLine("Presione enter para salir");
Console.ReadLine();
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If

End Sub
}

private static void WriteLine(string p, Dim dia)


{
throw new NotImplementedException();
}

public static string zodiaco { get; set; }


}
}

10) Realizar un algoritmo que permita leer de un men una de las opciones vlidas
y haga los respectivos clculos as:
1.- rea e un tringulo
2._ rea de un cuadrado
3.- rea de un crculo
4.- rea de un rectngulo
5.- rea de un paralelogramo
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Area;

{
class Program
{
private static int altura;
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

int opcion =0;


float lado=0, base=0, altura=0, radio=0, rdo=0;
do
{
system("cls");
printf("\n MENU\n");
printf(" 1. Area triangulo.\n");
printf(" 2. Area cuadrado.\n");
printf(" 3. Area circulo.\n");
printf(" 4. Area rectngulo.\n");
printf(" 5. Area paralelogramo.\n");
printf("\n");
printf(" 0. Salir");
printf("\n\n Elige una opcion: ");
scanf("%d", &opcion);
switch(opcion)
{
case 0:
break;
case 1:
area_triangulo(altura, base);
break;
case 2:
area_cuadrado(lado);
break;
case 3:
area_circulo(radio);
break;
case 4:
area_rectngulo(altura);
break;
case 5:
area_paralelogramo (altura, base);
break;
default:
printf("\n Opcion no valida.");
pausa();
}// switch
}// do
while(opcion!=0);
}

private static void area_rectngulo(int altura)


{
throw new NotImplementedException();
}

private static unsafe void scanf(string p,int* p_2)


{
throw new NotImplementedException();
}

private static void printf(string p)


{
throw new NotImplementedException();
}

private static void system(string p)


{
throw new NotImplementedException();
}//end of main

void pausa()
// funcin que nos ayuda a parar el programa cuando lo necesitemos
{
printf("\n\n\n\n Pulsa cualquier tecla... ");
getch();
}

private void getch()


{
throw new NotImplementedException();
}//end of pausa
void area_cuadrado (float lado)
// funcin que pide por teclado el lado y calcula el rea del cuadrado
{
printf("\n Introduce el valor del lado: ");
scanf ("%f", &lado);
printf("\n El area del cuadrado es: %.2f", lado*lado);
pausa();
}

private void printf(string p,float p_2)


{
throw new NotImplementedException();
}

private unsafe void scanf(string p,float* p_2)


{
throw new NotImplementedException();
}//end of area_cuadrado

void area_triangulo (float altura, float base)


// funcin que pide por teclado la altura y la base y calcula el rea del tringulo
{
prin tf("\n Introduce la altura:");
scanf("%f", &altura);
printf("\n Introduce la base:");
scanf("%f", &base);
printf("\n El area del triangulo es: %.2f", base*altura/2);
pausa();
}//end of area_triangulo

void area_circulo(float radio)


// funcin que pide por teclado el radio y calcula el rea del crculo
{
printf("\n Introduce el radio: ");
scanf("%f", &radio);
printf("\n El area del circulo es: %.2f", PI*radio*radio);
pausa();
}//end of area_circulo

void area_paralelogramo (float altura, float lado)


{
printf("\n Introduce la altura: ");
scanf("%f", &altura);
printf("\n Introduce el lado: ");
scanf("%f", &lado);
printf("\n El area del paralelogramo es: %.2f", altura*lado);
pausa();
}//end of area_paralelogramo

void area_trapezoide (float altura)


{
float l1=0, l2=0;
printf("\n Introduce la altura: ");
scanf("%f", &altura);
printf("\n Introduce el lado menor: ");
scanf("%f", &l1);
printf("\n Introduce el lado mayor: ");
scanf("%f", &l2);
printf("\n El area del trapezoide es: %.2f", 0.5*(altura*(l1+l2)));
pausa();
}//end of area_trapezoide

public static int radio { get; set; }


public static int rdo { get; set; }}
}
}

22) Realizar un ejercicios que ermita emular una Calculadora que aparte de las 4
operaciones bsicas permita calcular, seno, coseno, tangente, raz cuadrada entre
otros..
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace calculadora22
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button12_Click(object sender, EventArgs e)


{

private void Form1_Load(object sender, EventArgs e)


{
Public Class Form1

Private Sub btn0_Click(sender As System.Object, e As System.EventArgs) Handles


btn0.Click

txtResultado.Text = txtResultado.Text & 0

End Sub

End Clas
}
}
}

2. men con 7 de los siguientes ejercicios (usted los selecciona)


Ejercicios
1. Un banco ha solicitado se disee un programa que permita encriptar la
informacin de las contraseas (4 nmeros) digitada por teclado (como un nico
numero) hasta el servidor principal, utilizando el siguiente criterio, el primer
nmero se enva de ltimo, el segundo, de penltimo, el tercer numero pasa a la
segunda posicin, el ltimo pasa a ser primero: ejemplo: Sea 6532, se debe enviar
como 2356

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Ejerc_1_TC_3_Banco_Contraseas
{
class Program
{
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

//Un banco ha solicitado se disee un programa que permita encriptar la informacin


de las contraseas
//(4 nmeros) digitada por teclado (como un nico numero) hasta el servidor
principal, utilizando
//el siguiente criterio, el primer nmero se enva de ltimo, el segundo, de
penltimo, el tercer numero
//pasa a la segunda posicin, el ltimo pasa a ser primero: ejemplo: Sea 6532, se
debe enviar como 2356

String a = "";
Console.WriteLine("Ingresa un numero de 4 digitos");
String pal = Console.ReadLine();
intnumero = pal.Length;

if (numero > 4)
{
Console.WriteLine(" El numero ingresado por usted no es de 4 dijitos, la
contrasea debe ser de 4 digitos");
Console.ReadLine();
}

if (numero < 4)
{
Console.WriteLine(" El numero ingresado por usted no es de 4 dijitos, la
contrasea debe ser de 4 digitos");
Console.ReadLine();
}

if (numero == 4)
{
for (inti = numero - 1; i >= 0; i--)
{
a = a + pal.Substring(i, 1);
}
}

Console.WriteLine(" La Clave Asignada Es : {0} ", a);


Console.WriteLine("");
Console.ReadLine();

public static int numero { get; set; }

public static int intnumero { get; set; }

public static int inti { get; set; }

public static int i { get; set; }


}
}
Pantalla Visual Studio 2010

2. Escribir un programa para calcular la fecha del siguiente da a partir de una fecha
digitada desde el teclado por el usuario ( dd, mm, aaaa ) e imprimirla. (Tenga en
cuenta los aos bisiestos.).

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

// Escribir un programa para calcular la fecha del siguiente da a partir de una fecha
digitada
// desde el teclado por el usuario ( dd, mm, aaaa ) e imprimirla. (Tenga en cuenta los
aos bisiestos.).

int a, x_siguiente, dia;


int dia_siguiente, mes, mes_siguiente;

Console.Write("Ingrese el valor de dia:");

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

Console.Write("Ingrese el valor de mes:");


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

Console.Write("Ingrese el valor de ao: ");


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

if ((dia> 30 && (mes == 4 || mes == 6 || mes == 9 || mes == 11)) || (dia> 29 && mes ==
2) || (dia> 28 && mes == 2 && ((a % 4 != 0) || (a % 100) == 0) && (a % 400) != 0) || (dia>
31))
{
Console.WriteLine("Usted Dijito Valores No Validos");
}

else
{
if ((dia == 30 && (mes == 4 || mes == 6 || mes == 9 || mes == 11)) || (dia == 29 && mes
== 2) || (dia == 28 && mes == 2 && ((a % 4 != 0) || (a % 100) == 0) && (a % 400) != 0) ||
(dia == 31))
{
dia_siguiente = 0;
mes_siguiente = mes + 1;
}
else {
dia_siguiente = dia + 1;
mes_siguiente = mes;
}
if (dia_siguiente == 0 &&mes_siguiente == 0) {
mes_siguiente = 0;
x_siguiente = a + 1;
}
else
x_siguiente = a;

Console.WriteLine(" Valor de diasuguiente : " + dia_siguiente);


Console.WriteLine(" Valor de mes siguiente : " + mes_siguiente);
Console.WriteLine(" Valor de ao siguiente : " + x_siguiente);
}
Console.ReadKey();

private static void Write(string p)


{
throw new NotImplementedException();
}

public static int mes { get; set; }


public static int mes_siguiente { get; set; }

public static int dia_siguiente { get; set; }


}
}

Pantalla Visual Studio 2010

3. Se lee un nmero de mximo tres dgitos (verifique que efectivamente sea de


mximo tres dgitos) y se debe determinar si es un nmero capica, es decir, que
ledo de izquierda a derecha es igual que ledo de derecha a izquierda. Por
ejemplo: 727, 343, etc.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

//Se lee un nmero de mximo tres dgitos (verifique que efectivamente sea de
mximo tres dgitos)
// y se debe determinar si es un nmero capica, es decir, que ledo de izquierda a
derecha es igual
// que ledo de derecha a izquierda. Por ejemplo: 727, 343, etc.

// Este programa determina si un nmero es capica o no es capica

Console.WriteLine(" ");
Console.WriteLine("Ingrese el nmero de tres digitos: ");
Console.WriteLine(" ");
intNro = int.Parse(Console.ReadLine());

int C = Nro / 100;


int U = Nro % 10;

if (C == U)
{
Console.WriteLine(" El nmero Dijitado por usted es un Numero Capicua ");
}
else
{
Console.WriteLine(" El nmero Dijitado por usted No es un Numero Capicua ");
}

Console.ReadKey();

public static int intNro { get; set; }

public static int Nro { get; set; }


}
}

Pantalla Visual Studio 2010 ejecutando Numero Capica


4. En una organizacin se tiene a los empleados agrupados por categora, los de
categora 1 ganan $20.000, los de categora 2, $15.000, los de categora 3,
$10.000 y los de categora 4, $7.500. Se quiere un algoritmo que permita
determinar cunto debe pagarse a un empleado si se conoce el nmero de horas
que trabaj durante el mes y la categora a la que pertenece. Se sabe que a todos
se les descuenta un 7.2% por concepto de salud, y si el salario total devengado
(mensual) es menos de 1 000.000, se le da un subsidio del 15% sobre su salario
mensual (sin descuentos).

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //
// En una organizacin se tiene a los empleados agrupados por categora, los de
categora 1 ganan $20.000,
// los de categora 2, $15.000, los de categora 3, $10.000 y los de categora 4,
$7.500.
// Se quiere un algoritmo que permita determinar cunto debe pagarse a un
empleado si se conoce el nmero
// de horas que trabaj durante el mes y la categora a la que pertenece. Se sabe
que a
// todos se les descuenta un 7.2% por concepto de salud, y si el salario total
devengado (mensual)
// es menos de 1 000.000, se le da un subsidio del 15% sobre su salario mensual
(sin descuentos).

int horas;
int categoria;
double subsidio, sal = 0, descuento;
int salir = 1;

//ya que el ejercicio no especifica los valores para cada categorialos tomo como
ganancia por 1 hora trabajada

do
{
Console.Clear();

Console.WriteLine("Ingrese el numero de la categoria a la que pertenece de la 1 a


la 4 ");
categoria = int.Parse(Console.ReadLine());
Console.WriteLine(" ");

if (categoria > 0 && categoria < 6)


{
Console.WriteLine(" Ingrese el numero de horas Laboradas en el mes: ");
horas = int.Parse(Console.ReadLine());
Console.WriteLine(" ");

switch (categoria)
{
case 1:
sal = 20000 * horas;
break;
case 2:
sal = 15000 * horas;
break;
case 3:
sal = 10000 * horas;
break;
case 4:
sal = 7500 * horas;
break;

default:
Console.WriteLine(" La categoria seleccionada no existe ");
break;
}

descuento = (sal * 7.2) / 100;


// aqui se valida si salario es menor a 1.000.000
if (sal < 1000000)
{
subsidio = sal * 0.15;
Console.WriteLine(" El salario sin descuento es: " + sal);
Console.WriteLine(" El valor del descuento es: " + descuento);
Console.WriteLine(" El valor del subsidio es : " + subsidio);
Console.WriteLine(" El salario Total es: " + (sal + subsidio - descuento));
Console.WriteLine(" ");
}
else
{
Console.WriteLine(" El salario sin descuento es: " + sal);
Console.WriteLine(" El valor del descuento es: " + descuento);
Console.WriteLine(" El salario Total es: " + (sal - descuento));
Console.WriteLine(" El salario desvengado por usted es superior a 1000.000
no aplica subsidio ");
Console.WriteLine(" ");
}
}

Console.WriteLine(" Desea continuar? Si:1, No:2 ");


Console.WriteLine(" ");
Console.ReadKey();

} while (salir == 1);

Console.ReadKey();

}
}
}

Pantalla Visual Studio 2010


6. Escriba un programa para calcular si un nmero es primo o no, recuerde que los
nmeros primos son aquellos que solo son divisibles por la unidad y por ellos
mismos: ejemplo 5, 11, 17

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

// 6. Escriba un programa para calcular si un nmero es primo o no,


// recuerde que los nmeros primos son aquellos que solo son divisibles por la
unidad y por ellos mismos: ejemplo 5, 11, 17

int num, divisor = 2;


Console.WriteLine(" Dijite Un numero ");
num = int.Parse(Console.ReadLine());
Console.WriteLine(" ");

while (divisor<num)
{
while (num % divisor != 0)
divisor = divisor + 1;
if (num == divisor)
{
Console.WriteLine(" el numero " + num +" es un numero primo por que es divisible por el
mismo " );
}
else
{
Console.WriteLine(" el numero " + num + " No es Numero primo ");
Console.WriteLine(" ");
break;
}
}
Console.ReadKey();

}
}
}

Pantalla Visual Studio 2010 con nmero primo

Pantalla Visual Studio 2010 sin nmero primo


7. Lea los valores de los lados de un tringulo. Detecte y muestre un mensaje
correspondiente a su tipo (EQUILTERO, ISSCELES, O ESCALENO)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

// 7. Lea los valores de los lados de un tringulo.


// Detecte y muestre un mensaje correspondiente a su tipo (EQUILTERO,
ISSCELES, O ESCALENO)

double a = 0, b = 0, c = 0;
Console.WriteLine(" Ingrese el lado a Del Triangulo ");
a = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
Console.WriteLine(" Ingrese el lado b Del Triangulo ");
b = int.Parse(Console.ReadLine());
Console.WriteLine(" ");
Console.WriteLine(" Ingrese el lado c Del Triangulo ");
c = int.Parse(Console.ReadLine());
Console.WriteLine(" ");

if (a == b && b == c)
Console.WriteLine(" Los Datos ingresados pertenecen a un triangulo EQUILATERO
");

else
{
if (a == b || a == c || b == c)
Console.WriteLine(" Los Datos ingresados pertenecen a un triangulo ISOCELES
");

else
{
Console.WriteLine(" Los Datos ingresados pertenecen a un triangulo ESCALENO
");
}
}

Console.ReadKey();

}
}
}

Pantalla Visual Studio 2010 Tringulo Equiltero

Pantalla Visual Studio 2010 Triangulo Issceles


Pantalla Visual Studio 2010 Triangulo Escaleno
10. Dada tu fecha de nacimiento (mes, da, ao) indicar cuantos das (exactos) han
transcurrido desde ese ao.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication10
{
class Program
{
private int intdia_nacimiento;
private int mes_nacimiento;
private int ao;
privatestaticvoid Main(string[] args)

{
//Nombre del Autor: Ingrid Lorena Torres Prez//
//Fecha: 18 Noviembre 2016
//Doy fe que este ejercicio es de mi autora, en caso de encontrar plagio la nota de
todo mi
//trabajo debe ser de CERO adems de las respectivas sanciones a que haya lugar //

//10.Dada tu fecha de nacimiento (mes, da, ao) indicar cuantos das (exactos)
// han transcurrido desde ese ao.
//Variables que usaremos para la fecha de nacimiento

int dia_nacimiento=0, mes_nacimiento=0, ao_nacimiento = 0;


Console.WriteLine(" ");
Console.WriteLine(" Escriba Su nombre ");
Console.WriteLine(" ");
stringnombre = Console.ReadLine();

while (true)
{
Console.WriteLine(" ");
Console.Write(" Dijite en numero su dia de nacimiento: ");
dia_nacimiento = int.Parse(Console.ReadLine());
if (dia_nacimiento< 1 || dia_nacimiento> 31)
Console.WriteLine(" Por favor, dijte los Numeros del dia en el rango entre 1 y 31 ");
else
//Si el dia es valido, entonces pasamos a pedir el mes
break;
}

while (true)
{
Console.Write(" Dijite en numero su Mes de nacimiento: ");
mes_nacimiento = int.Parse(Console.ReadLine());
if (mes_nacimiento< 1 || mes_nacimiento> 12)
Console.WriteLine("Por favor, dijte los Numeros del dia en el rango entre 1 y 12 ");
else
break;
}
while (true)
{
Console.Write(" Dijite en numero su Ao de nacimiento : ");
ao_nacimiento = int.Parse(Console.ReadLine());
if (ao_nacimiento< 1900 || ao_nacimiento>DateTime.Now.Year)
Console.WriteLine("Por favor, especifique un ao entre 1900 y el {0}", DateTime.Now.Year);
else
break;
}
int edad = DameEdad (dia_nacimiento, mes_nacimiento, ao_nacimiento);
Console.WriteLine(" ");
Console.WriteLine(" Hola " + nombre + ", usted en la actualidad tiene " + edad + " aos de
edad.");
Console.WriteLine(" ");
Console.ReadKey();
}
private int DameEdad(int dia_nacimiento,int mes_nacimiento,int ao_nacimiento)
{
throw new NotImplementedException();
}
publicstaticint DameEdad(int dia, int mes, int ao)
{
//Usamos la clase DateTime y un mtodo estatico para restar fechas
DateTime fecha_nacimiento = new DateTime (ao, mes, dia);
TimeSpan edad = DateTime.Now.Subtract(fecha_nacimiento);
return (edad.Days / 365);
}

public int ao_nacimiento { get; set; }


public string stringnombre { get; set; }
public int dia_nacimiento { get; set; }
public string nombre { get; set; }
public int mes { get; set; }
public int dia { get; set; }}
}

You might also like