コード例 #1
0
        //RAICES PRIMITIVAS
        public NumeroComplejo[] RaicesPrimitivas(int indice)
        {
            NumeroComplejo[] raicesPrimitivas = new NumeroComplejo[indice];

            if (indice == 1)
            {
                raicesPrimitivas[0] = new ComplejoPolar(1, 0);
                return(raicesPrimitivas);
            }

            NumeroComplejo[] raicesNesimas = this.Raices_n_esimas(indice);//Obtengo las raices n-esimas

            //La raiz sub0 no es primitiva, no la agrego

            raicesPrimitivas[0] = raicesNesimas[1]; //La raiz sub 1 siempre es primitiva, la agrego
            int k = 2, i = 1;

            while (k < indice)       //Recorro las raices n-esimas y me quedo con las primitivas segun MCD
            {
                if (MCD(k, indice) == 1)
                {
                    raicesPrimitivas[i] = raicesNesimas[k];
                    i++;
                }
                k++;
            }
            return(raicesPrimitivas);
        }
コード例 #2
0
ファイル: ComplejoBinomica.cs プロジェクト: nicolascalle/ncom
        //RAICES PRIMITIVAS
        public NumeroComplejo[] RaicesPrimitivas(int indice)
        {
            ComplejoPolar numeroPolar = this.ToPolar();                            //Convierto numero a polar

            NumeroComplejo[] raicesPolares = numeroPolar.RaicesPrimitivas(indice); //Envio calculo a forma polar
            return(raicesPolares);
        }
コード例 #3
0
ファイル: ComplejoBinomica.cs プロジェクト: nicolascalle/ncom
        //POTENCIA
        public NumeroComplejo Potencia(int potencia)
        {
            ComplejoPolar  numeroPolar   = this.ToPolar();                 //Convierto numero a polar
            NumeroComplejo potenciaPolar = numeroPolar.Potencia(potencia); //Envio calculo a forma polar

            return(potenciaPolar.ToBinomica());                            //Retorno en forma binomica
        }
コード例 #4
0
        //MULTIPLICACION

        public NumeroComplejo Multiplicar(ComplejoPolar complejo)
        {
            double modulo    = this.modulo * complejo.GetModulo();
            double argumento = this.argumento + complejo.GetArgumento();

            return(new ComplejoPolar(modulo, argumento));
        }
コード例 #5
0
        //DIVISION
        public NumeroComplejo Dividir(ComplejoPolar complejo)
        {
            double modulo    = this.modulo / complejo.GetModulo();
            double argumento = this.argumento - complejo.GetArgumento();

            return(new ComplejoPolar(modulo, argumento));
        }
コード例 #6
0
ファイル: ComplejoBinomica.cs プロジェクト: nicolascalle/ncom
        //DIVISION
        public NumeroComplejo Dividir(NumeroComplejo complejo)
        {
            //Convierto ambos numeros a polar
            ComplejoPolar  polar1        = complejo.ToPolar();
            ComplejoPolar  polar2        = this.ToPolar();
            NumeroComplejo cocientePolar = polar2.Dividir(polar1); //Envio calculo a forma polar

            return(cocientePolar.ToBinomica());                    //Retorno en forma binomica
        }
コード例 #7
0
ファイル: ComplejoBinomica.cs プロジェクト: nicolascalle/ncom
        //MULTIPLICACION
        public NumeroComplejo Multiplicar(NumeroComplejo complejo)
        {
            //Convierto ambos numeros a polar
            ComplejoPolar  polar1        = complejo.ToPolar();
            ComplejoPolar  polar2        = this.ToPolar();
            NumeroComplejo productoPolar = polar2.Multiplicar(polar1); //Envio calculo a forma polar

            return(productoPolar.ToBinomica());                        //Retorno en forma binomica
        }
コード例 #8
0
        //RAICES N-ESIMAS
        public NumeroComplejo[] Raices_n_esimas(int indice)
        {
            int k = 0;

            NumeroComplejo[] raicesComplejas = new NumeroComplejo[indice];

            while (k < indice)   //Calculo cada raiz y las agrego al array.
            {
                double modulo    = Math.Pow(this.modulo, Math.Pow(indice, -1));
                double argumento = (this.argumento + 2 * k * Math.PI) / indice;
                raicesComplejas[k] = new ComplejoPolar(modulo, argumento);
                k++;
            }

            return(raicesComplejas);
        }