Как мне решить этот Java-код, имеющий проблему с этим вопросом массива, я хочу отобразить весь массив в системе?
/*WAP in java to store factorial of first five natural numbers and display.*/
public class ArrayFactorial {
public static void main(String[] args) {
System.out.println(" factorial of first five natural numbers");
int fact[] = new int[5];
int r = 1;
for (int i = 1; i <= 5; i++) {
r = r * i;
fact[i - 1] = r;
System.out.println(fact[i]);
}
}
}
Я хочу отобразить все 5 массивов, как мне показывать в отображении, когда я показываю массив отображения, он показывает 0 только при отображении r
это показывает правильно
4 ответа
Менять:
System.out.println(fact[i]);
От:
System.out.println(fact[i-1]);
Потому что вы не называете хороший индекс
Попробуйте сохранить индекс в отдельной переменной и использовать его для доступа к элементу массива для присваивания и значения
for (int i = 1; i <= 5; i++) {
int index = i-1;
r = r * i;
fact[index] = r;
System.out.println(fact[index]);
}
Вы устанавливаете значение на fact[i-1]
а затем печать fact[i]
который 0
еще. Так замени System.out.println(fact[i]);
с System.out.println(fact[i-1]);
/*WAP in java to store factorial of first five natural numbers and display.*/
public class ArrayFactorial {
public static void main (String [] args ){
System.out.println(" factorial of first five natural numbers");
int fact[] = new int [5];
int r = 1;
for (int i = 1; i<=5 ; i++){
r=r*i;
fact[i-1]=r;
}
for(int i = 0; i<5; i++ ){
System.out.println(fact[i]);
}
}
}
это ответ, ребята, я понял