[/b][b]Pessoal, preciso fazer um pequeno programa que calcule a raiz cúbica, ou a raiz quinta, ou a raiz décima de um número.
Para isso preciso criar dois pacotes. Em um deles deverá haver uma classe com três métodos, um para calcular cada tipo de raiz.
No outro pacote deve haver uma classe com os métodos para se obter a raiz desejada bem como o número a ser extraído a raiz. E também deverá haver o método main() para iniciar a aplicação.
Pois bem, criei esses pacotes com os respectivos métodos, mas não está funcionando, quando chamo um dos métodos para a extração da raiz, parece que ele não é invocado, pois ao pedir para ser impresso o resultado, o programa imprime o número que informei.
Alguém poderia me ajudar a resolver isso, por favor ?
O código está logo abaixo:
package calculaRaizMetodos;
public class CalculaRaizMetodos
{
public static double raiz;
public static double calculaCubica(double num, double pot)
{
num = Math.pow(num,pot);
return num;
}
public static double calculaQuinta(double num, double pot)
{
// Teste
System.out.println("O número é : ");
System.out.println(num);
System.out.println("A potência é : ");
System.out.println(pot);
// Final de Teste
num = Math.pow(num,pot);
return num;
}
public static double calculaDecima(double num, double pot)
{
num = Math.pow(num,pot);
return num;
}
}
package calculaRaizExecuta;
import calculaRaizMetodos.CalculaRaizMetodos;
import javax.swing.JOptionPane;
public class CalculaRaizExecuta
{
public static double num;
public static double pot;
public static String mensagem = "Informe um tipo de raiz:\n" +
" 3 - Raiz cúbica\n" +
" 5 - Raiz quinta\n" +
"10 - Raiz décima\n";
public static String numero;
public static double raiz;
public static void capturaDado()
{
String type = JOptionPane.showInputDialog(null,mensagem);
double tipo = Double.parseDouble(type);
if(tipo == 3)
{
pot = 1/3;
}
if(tipo == 5)
{
pot = 1/5;
}
if(tipo == 10)
{
pot = 1/10;
}
String numero = JOptionPane.showInputDialog(null,"Informe o número a ser extraído a raiz");
num = Double.parseDouble(numero);
}
public static void invocaMetodo(double num, double pot)
{
if(pot == 1/3)
{
CalculaRaizMetodos.calculaCubica(num, pot);
}
if(pot == 1/5)
{
CalculaRaizMetodos.calculaQuinta(num, pot);
}
if(pot == 1/10)
{
CalculaRaizMetodos.calculaDecima(num, pot);
}
}
public static void mostraDado()
{
System.out.println("A raiz é:");
System.out.println(num);
}
public static void main(String[] args)
{
capturaDado();
mostraDado();
}
}
Também desejo trocar a variável de retorno, quero que o método a calcular a raiz retorne uma variável diferente de que não seja num, ou seja, quero, por exemplo, que uma variável double raiz receba a raiz e seja retornada pelo método. Assim:
raiz = Math.pow(num,pot);
return raiz;
Mas se eu fizer isso dá um erro no dizendo que raiz não pode ser resolvido no pacote calculaRaizExecuta.
Valeu aí, galera !