這是我對這個站點的第一個問題,所以如果我發佈錯誤的東西,我很抱歉並希望得到反饋!這是一個家庭作業問題,雖然我似乎無法用這種方式標記它。Java程序在輸入循環時出現卡住一次
無論如何,代碼似乎編譯得很好(使用BlueJ),但是當我運行它時進入第一個while循環時卡住了。我添加了一些輸出行來查看問題出現的位置,第一個System.out在進入第一個while循環時從未發生過...... JVM只是繼續工作,直到我強制它重置爲止。我相信我的初始while循環應該運行4次,然後退出我使用過的值(5個學生,我從2開始),但它似乎沒有做任何事情,而且我對於我做錯了。
該程序完成後打算做什麼的摘要。
一系列學生走過一排儲物櫃。
- 學生1打開所有的儲物櫃
- 學生2關閉每秒更衣室
- 學生3反轉每三個更衣室等的狀態的學生人數
我知道我還沒有設置boolean locker標誌正確翻轉,並且打算在第二個while循環中使用!myBool的變體來做 - 但首先我想確保我的while循環可以工作。希望我錯過了一些簡單的東西,因爲盯着它太久了!
import java.util.Arrays;
public class Lockers
{
public static void main (String[]args)
{
// Size of lockerArray
int arraySize = 5;
// Set up new lockerArray
boolean[] lockerArray = new boolean[arraySize];
// Variable for number of students in the exercise
int studentNumber = 5;
System.out.println("Student 1 opens all the lockers.\n");// Outputs, good
// Student 1 opens all the lockers
// Boolean values for lockerArray true = OPEN; false = CLOSED
Arrays.fill(lockerArray, true);
System.out.println(Arrays.toString(lockerArray)); // Outputs 5 true, good
// Set the student counter at 2 (Student 1 has already made their pass)
int i = 2;
// Loop until you run out of students
while (i <= studentNumber);
{
System.out.println("Student Number " + i + " is making their pass.\n");// NEVER HAPPENS - have to reset JVM to stop program
// Set up a variable to control the sequence required (i.e., Student 2 every second locker,
// Student 3 every third locker, etc.
int j = i;
while (j <= arraySize);
{
System.out.println("Student is changing the status of locker number " + j + ".\n");
// Reverse the flag at each locker for which the statement is true for this student number
// Need to reduce the variable by 1 as locker 1 would be sitting in lockerArray[0] position
lockerArray[j-1] = false;
// Increment locker number by the value of the student in the sequence
j = j + i;
}
// Increment the student count
i++;
}
// Print the final array status
System.out.println(Arrays.toString(lockerArray));
}
}
的[標籤:功課]標籤被禁用,因爲很多人推斷功課問題是不允許的。只要提問者展示他們的嘗試並表明自己努力解決問題,那麼家庭作業問題就沒有問題。你已經做到了,所以不用擔心! –
哦,非常感謝你!刪除分號修復了問題。通常我的問題是忘記他們:)這個網站很棒,響應速度令人難以置信。 – Amber