static void Main(string[] args) { Dolar d1 = new Dolar(10, 1); Dolar d2 = new Dolar(10, 1); Dolar d3 = new Dolar(20, 1); Euro e1 = new Euro(30); Euro e2 = new Euro(40); Euro e3 = new Euro(40); Pesos p1 = new Pesos(50); Pesos p2 = new Pesos(60); Pesos p3 = new Pesos(60); Console.WriteLine("d1: {0} d2: {1} d3: {2}", d1.GetCantidad(), d2.GetCantidad(), d3.GetCantidad()); Console.WriteLine("e1: {0} e2: {1} e3: {2}", e1.GetCantidad(), e2.GetCantidad(), e3.GetCantidad()); Console.WriteLine("e1: {0} e2: {1} e3: {2}", p1.GetCantidad(), p2.GetCantidad(), p3.GetCantidad()); Console.WriteLine("d1 = d2?: {0}", d1 == d2); Console.WriteLine("d1 = d3?: {0}", d1 == d3); Console.WriteLine("d1 != d3?: {0}", d1 != d3); //Console.WriteLine("d1 + d2 = {0}", d1 + d2); Console.WriteLine("e1 a dolar: {0}", ((Dolar)e1).GetCantidad()); Console.WriteLine("d1 a euro: {0}", ((Euro)d1).GetCantidad()); Console.WriteLine("e1 a pesos: {0}", ((Pesos)e1).GetCantidad()); Console.ReadKey(); }
static void Main(string[] args) { /* * 20. Generar un nuevo proyecto del tipo Console Application. Construir tres clases dentro de un namespace llamado Billetes: Pesos, Euro y Dolar. * a. Se debe lograr que los objetos de estas clases se puedan sumar, restar y comparar entre sí con total normalidad como si fueran tipos numéricos, * teniendo presente que 1 Euro equivale a 1,16 dólares y 1 dólar equivale a 38,33 pesos. * b. El atributo cotizRespectoDolar y el método GetCotizacion son estáticos. * c. Sobrecargar los operadores explicit y/o implicit para lograr compatibilidad * entre los distintos tipos de datos. * d. Colocar dentro del Main el código necesario para probar todos los métodos. * e. Los constructores privados le darán una cotización respecto del dólar por defecto a las clases. * f. Los comparadores == compararan cantidades. * g. Para operar dos tipos de monedas, se deberá convertir todo a una y luego realizar lo pedido. Por ejemplo, si quiero sumar Dólar y Euro, * deberé convertir el Euro a Dólar y luego sumarlos. * h. Reutilizar el código. Sólo realizar las conversiones dentro de los operadores para dicho uso. */ Console.Title = "Ej_20"; Euro e = new Euro(10, 0.80); Dolar d = new Dolar(10); Pesos p = new Pesos(10, 60.0); Euro aux_e = e + d; Console.WriteLine("Euro + Dólar (E10|u$s10): {0}", aux_e.GetCantidad()); aux_e = e + p; Console.WriteLine("Euro + Pesos (E20|$10) : {0}", aux_e.GetCantidad()); Console.WriteLine("----------------------------------------------"); Dolar aux_d = d + e; Console.WriteLine("Dólar + Euro (u$s10|E10) : {0}", aux_d.GetCantidad()); aux_d = d + p; Console.WriteLine("Dólar + Pesos (u$s10|$10): {0}", aux_d.GetCantidad()); Console.WriteLine("----------------------------------------------"); Pesos aux_p = p + e; Console.WriteLine("Pesos + Euro ($10 | E10 ): {0}", aux_p.GetCantidad()); aux_p = p + d; Console.WriteLine("Pesos + Dólar ($10|u$s10): {0}", aux_p.GetCantidad()); Console.ReadKey(); }