Esempio n. 1
0
        /// <summary>
        /// Permite dividir dos numeros complejos
        /// </summary>
        /// <param name="pOtroComplejo">Numero complejo que divide</param>
        /// <returns>Nuevo complejo con el resultado de la division</returns>
        public Complejo DividirPor(Complejo pOtroComplejo)
        {
            //Formula division complejos: (A + Bi) / (C + Di) = ( (A*C + B*D) / (C^2 + D^2) ) + ( (B*C - A*D) / (C^2+D^2) )

            if (pOtroComplejo.Real == 0 && pOtroComplejo.Imaginario == 0)
            {
                throw new System.ArgumentException("No se puede dividir por 0.");
            }
            else
            {
                return(Complejo.Crear((((this.Real * pOtroComplejo.Real) + (this.Imaginario * pOtroComplejo.Imaginario)) / (Math.Pow(pOtroComplejo.Imaginario, 2) + Math.Pow(pOtroComplejo.Real, 2))), (((this.Imaginario * pOtroComplejo.Real) - (this.Real * pOtroComplejo.Imaginario)) / (Math.Pow(pOtroComplejo.Imaginario, 2) + Math.Pow(pOtroComplejo.Real, 2)))));
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Permite restar dos numeros complejos
 /// </summary>
 /// <param name="pOtroComplejo"> Numero complejo a resta</param>
 /// <returns>Nuevo complejo con el resultado de la resta</returns>
 public Complejo Restar(Complejo pOtroComplejo)
 {
     return(Complejo.Crear(this.Real - pOtroComplejo.Real, this.Imaginario - pOtroComplejo.Imaginario));
 }
Esempio n. 3
0
        /// <summary>
        /// Permite multiplicar dos numeros complejos
        /// </summary>
        /// <param name="pOtroComplejo">Numero complejo que multiplica</param>
        /// <returns>Nuevo complejo con el resultado de la multiplicacion</returns>
        public Complejo MultiplicarPor(Complejo pOtroComplejo)
        {
            //Formula multiplicacion complejos: (A + Bi) * (C + Di) = (A*C-B*D) + (A*D+BC)i

            return(Complejo.Crear((this.Real * pOtroComplejo.Real) - (this.Real * pOtroComplejo.Imaginario), ((this.Real * pOtroComplejo.Imaginario) + (this.Imaginario * pOtroComplejo.Real))));
        }
Esempio n. 4
0
 /// <summary>
 /// Permite sumar dos numeros complejos
 /// </summary>
 /// <param name="pOtroComplejo"> Numero complejo a sumar</param>
 /// <returns>Nuevo complejo con el resultado de la suma</returns>
 public Complejo Sumar(Complejo pOtroComplejo)
 {
     return(Complejo.Crear(this.Real + pOtroComplejo.Real, this.Imaginario + pOtroComplejo.Imaginario));
 }