public static NumeroImagniario operator -(NumeroImagniario n1, NumeroImagniario n2)
        {
            double rE  = n1.Entero - n2.Entero;
            double rIM = n1.Imaginario - n2.Imaginario;

            NumeroImagniario temp = new NumeroImagniario(rE, rIM);

            return(temp);
        }
        public static NumeroImagniario operator *(NumeroImagniario n1, NumeroImagniario n2)
        {
            double rN  = n1.Entero * n2.Entero;
            double rIM = n1.Imaginario * n2.Imaginario;

            NumeroImagniario temp = new NumeroImagniario(rN, rIM);

            return(temp);
        }
        //Sobrecarga de operadores
        public static NumeroImagniario operator +(NumeroImagniario n1, NumeroImagniario n2)
        {
            double r           = 0;
            double rImaginario = 0;

            r           = n1.Entero + n2.Entero;
            rImaginario = n1.Imaginario + n2.Imaginario;

            NumeroImagniario temp = new NumeroImagniario(r, rImaginario);

            return(temp);
        }
        public override bool Equals(object obj)
        {
            if (obj is NumeroImagniario)
            {
                NumeroImagniario temp = (NumeroImagniario)obj;

                //Reglas de comparación

                if (this.Entero == temp.Entero && this.Imaginario == temp.Imaginario)
                {
                    return(true);
                }
            }
            return(false);
        }
Beispiel #5
0
        static void Main(string[] args)
        {
            NumeroImagniario nI = new NumeroImagniario(5, 10);
            NumeroImagniario n2 = new NumeroImagniario(7, 20);

            nI++;

            Console.WriteLine(nI.ToString());
            Console.WriteLine("_________________");


            n2--;
            Console.WriteLine(n2.ToString());
            Console.WriteLine("_____________________");

            nI += n2;
            Console.WriteLine(nI.ToString());
            Console.WriteLine("______________________");

            nI -= n2;
            Console.WriteLine(nI.ToString());
            Console.WriteLine("______________________");



            NumeroImagniario nI1 = new NumeroImagniario(5, 10);
            NumeroImagniario nI2 = new NumeroImagniario(5, 10);
            NumeroImagniario nI3 = new NumeroImagniario(7, 20);

            if (nI1 == nI2)
            {
                Console.WriteLine("Son iguales");
            }
            else
            {
                Console.WriteLine("Son diferentes");
            }

            if (nI1 != nI3)
            {
                Console.WriteLine("Son diferentes");
            }
            else
            {
                Console.WriteLine("Son iguales");
            }
        }
        public static NumeroImagniario operator /(NumeroImagniario n1, NumeroImagniario n2)
        {
            try
            {
                double rE  = n1.Entero / n2.Entero;
                double rIM = n1.Imaginario / n2.Imaginario;

                NumeroImagniario temp = new NumeroImagniario(rE, rIM);
                return(temp);
            }
            catch (DivideByZeroException ex)
            {
                Console.WriteLine("No se puede diviidr por 0");
                return(null);
            }catch (Exception ex)
            {
                Console.WriteLine("Ha ocurrido un error inseperado");
                Console.WriteLine(ex.ToString());
                return(null);
            }
        }
        public static NumeroImagniario operator ++(NumeroImagniario n1)
        {
            NumeroImagniario temp = new NumeroImagniario(n1.Entero + 1, n1.Imaginario + 1);

            return(temp);
        }