gpt4 book ai didi

java - 我的数组哪里出界了?

转载 作者:行者123 更新时间:2023-12-02 07:33:18 25 4
gpt4 key购买 nike

我正在尝试为此编写一个算法:有 100 名学生和 100 个储物柜。第一个学生从第一个储物柜开始,打开每个储物柜。下一个学生,即第二个学生,从第二个储物柜开始,如果第二个储物柜打开,则将其关闭,反之亦然。第三个学生从第三个储物柜开始,对于每三个储物柜,重复该过程。我写了一些我认为应该有效的东西,但我的数组超出了范围,我不知道如何:

public static void main(String[] args) 
{
int startingStudents = 1;
int lockersToCheck = 1;
int lockersPosition = 1;
boolean[] lockers = new boolean[101];

//Cycles through 100 students
for(int students = startingStudents; startingStudents <= 100; students++)
{
//What each student does
while(lockersToCheck <= 100)
{
//If its closed, open
if(lockers[lockersToCheck] == false)
{
lockers[lockersToCheck] = true;
}
//If its open, close
else
{
lockers[lockersToCheck] = false;
}

//Which locker they should be at
lockersToCheck += lockersPosition;
}


//Zero out to start at the right locker
lockersToCheck = 0;
//Where the next student starts
lockersPosition += students;
//Make sure the next student starts there
lockersToCheck = lockersPosition;

}

for(int n = 1; n <= 100; n++)
{
System.out.print(lockers[n] + " " + n);
}

}

感谢您的帮助!

最佳答案

for(int Students =startingStudents; startingStudents <= 100; Students++)

应该是

for(int Students =startingStudents; 学生<= 100; Students++)

关于java - 我的数组哪里出界了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12649863/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com