У меня возникают проблемы с рекурсивно добавлением целых чисел в java от 1^2 до n^2. Я хочу иметь возможность рекурсивно выполнять это в методе recurvMath, но все, что я получаю, - это бесконечный цикл.рекурсивно добавляют целые числа от 1^2 до n^2
import java.util.Scanner;
public class Lab9Math {
int count = 0;
static double squareSum = 0;
public static void main(String[] args){
int n = 0;
Scanner scan = new Scanner(System.in);
System.out.println("Please enter the value you want n to be: ");
n = scan.nextInt();
Lab9Math est = new Lab9Math();
squareSum = est.recurvMath(n);
System.out.println("Sum is: "+squareSum);
}
public int recurvMath(int n){
System.out.println("N:" +n);
if(n == 0){
return 0;
}//end if
if (n == 1){
return 1;
}//end if
if (n > 1){
return (recurvMath((int) ((int) n+Math.pow(n, 2))));
}//end if
return 0;
}//end method
}//end class
Я не полностью захватывая природу определения рекурсивно, так как я знаю, что я могу получить, чтобы здесь:
return (int) (Math.pow(n, 2));
, но я не могу правильно включать призвание метода recurvMath чтобы он работал. Любая помощь будет оценена по достоинству. Благодаря!
Чтобы сделать его суммой, возможно, вам следует добавить две или более вещи вместе? – hobbs
Почему вы хотите сделать это рекурсивно? 'int s = 0; for (int i = 1; i
@ElliottFrisch Я пытаюсь понять рекурсию в java. Что еще лучше попробовать? – ekep23