Как мне решить этот 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]);
    }


}
}

это ответ, ребята, я понял

Другие вопросы по тегам