Если операторы, где х может быть равен серии чисел / диапазон чисел? - PullRequest
0 голосов
/ 24 апреля 2018

Попытка написать программу для кодового замка, где, если введенный номер находится в пределах 3 чисел от правильного номера, будет указано, что замок открыт.(т. е. если первое число комбинации блокировок равно 5, будет указано, что блокировка открыта, если кто-то введет 2, 3, 4, 5, 6, 7 или 8.)

Это кодДо сих пор у меня (я только пытаюсь выяснить, как заставить программу распознавать, является ли первое число правильным в данный момент, если вам интересно, почему существует второй + третий вход.)

    Scanner keyboard = new Scanner(System.in);
    System.out.print("Enter the first number: ");
    int first = keyboard.nextInt();
    System.out.print("Enter the second number: ");
    int second = keyboard.nextInt();
    System.out.print ("Enter the third number: ");
    int third = keyboard.nextInt();
    if (first == )
        System.out.println("It works!");
    else
        System.out.println("It didn't work");
}

Ответы [ 2 ]

0 голосов
/ 24 апреля 2018

Вы можете проверить, что разница находится в диапазоне 3, используя абсолютное значение first - lock (или lock - first, как вы предпочитаете).

if(Math.abs(first-lock)<=3)
0 голосов
/ 24 апреля 2018

Вот как вы могли бы это сделать:

If (first <= lock + 3 && first >= lock - 3)
    //do something

Предполагая, что Lock - это ваша "5", как в вашем примере, и first вход, который вы хотите проверить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...