Estou precisando fazer um método recursivo para gerar a sequencia an = 2n²-1, ja pensei, pensei e não sei onde encaixar a chamada dele mesmo.
public static void main(String[] args) {
int a = Integer.parseInt(JOptionPane.showInputDialog("Digite o numero de elementos a ser gerado: "));
}
public static double seq(int x){
if (x==0){
return 1;
}
else
return 2 * Math.pow(x, 2) - 1;
}
Porque você precisa de recursão? Quantos termos quer calcular?
A quantidade de termos é colocada em “a
” pelo usuário?
public static List<Double> gerarSequencia(int primeiroTermo, int ultimoTermo) {
List<Double> seq = new ArrayList<>();
for (int i = primeiroTermo; i <= ultimoTermo; i++) {
seq.add((2.0 * Math.pow(i, 2)) - 1.0);
}
return seq;
}
Isso, “a” pega a quantidade de termos, a recursão seria pra ir de 1 até esse termo gerando o valor dado pela sequencia.
O código que coloquei já resolve? Ou você quer usar o valor obtido a cada cálculo para ser o “n” no próximo cálculo (aí sim usaria a recursão)?