-7
forループが内部で2回実行されないため、無限ループするプログラムにwhileループがあります。あなたは、コードをしているものの、あなたの問題はあなたの変数のいくつかの用途などにあるようだforループはwhileループ内では実行されません。
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
ArrayList<Integer> taxi = new ArrayList<Integer>();
for (int i=0; i<n; i++) {
taxi.add(scan.nextInt());
}
int i = 0;
int total=0;
int tax=0;
int num = 0;
while (num<n) {
i=0;
for (i=0; i<n; i++) {
if (total+taxi.get(i)<=4) {
total+=taxi.get(i);
System.out.println(total);
num++;
}
}
tax++;
}
System.out.println("Taxis= " + tax);
ここでは、デバッガの使い方を学ぶのに適しています。本当に。各コード行をステップ実行し、変数の値を調べ、動作を確認する必要があります。デバッグを学ぶことは、言語を学ぶことと同じくらい重要です。 – OldProgrammer
または 'System.out.println()'を少し入れてください;-) – piechuckerr
またはif条件の中からnum ++を削除してください...条件が真でない場合、それはincではなく、ゲームオーバーです。 – Totoc1001