//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); }
//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); }
//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 }
//MULTIPLICACION public NumeroComplejo Multiplicar(ComplejoPolar complejo) { double modulo = this.modulo * complejo.GetModulo(); double argumento = this.argumento + complejo.GetArgumento(); return(new ComplejoPolar(modulo, argumento)); }
//DIVISION public NumeroComplejo Dividir(ComplejoPolar complejo) { double modulo = this.modulo / complejo.GetModulo(); double argumento = this.argumento - complejo.GetArgumento(); return(new ComplejoPolar(modulo, argumento)); }
//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 }
//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 }
//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); }