У меня есть цикл, где пользователю необходимо ввести целое число между 0 и 19, и если число действительно составляет от 0 до 19, написано число из массива. Если это не так, программа заканчивается. Тем не менее, Nextint не работает, когда петля начинается в первый раз. < /P>
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int inputNum, num1, num2, done;
int[] fiboArray;
fiboArray = new int[20];
Scanner kb = new Scanner(System.in);
System.out.println("Enter an integer between 0 and 19: ");
inputNum = kb.nextInt();
num1 = 0;
num2 = 1;
fiboArray[0] = num1;
fiboArray[1] = num2;
for (int i = 2; i < 20; ++i) {
fiboArray = num1 + num2;
num2 = fiboArray;
num1 = fiboArray[i-1];
}
done = 0;
while (done == 0) {
System.out.println("Enter an integer between 0 and 19: ");
inputNum = kb.nextInt();
System.out.println("test");
if (inputNum > 19 || inputNum < 0) {
done = 1;
}
else
System.out.println(fiboArray[inputNum]);
}
}
}
< /code>
Он даже не печатает тест. Цикл просто перезапускает и просит пользователя снова написать ввод. После этого программа работает как задумана. < /P>
Как мне заставить ее работать в первый раз? В чем проблема?
Подробнее здесь: https://stackoverflow.com/questions/794 ... -the-input
Scanner.nextint () не читая ввод? ⇐ Javascript
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение