Как написать цикл while с несколькими условиями в C

Итак, я попытался сделать цикл while с несколькими условиями, но я просто не могу понять, как заставить это работать. Я сделал короткий пример того, что я пытался:

#include <stdio.h>

int main () {
    int Num;

    printf("Please enter an odd interger between 5-20:");
    scanf("%d", &Num);

    while ((Num % 2 == 0) && (5 > Num) && (20 < Num)) {

        printf("Not a valid input!");
        printf("Please enter an odd interger between 5-20:");
        scanf("%d", &Num);
    }
}

Я полагаю, что я использую правильный логический оператор, верно?

1 ответ

Решение

Нет, ты не прав. Подумай о логике

(5>Num) && (20<Num)

Num не может быть <5 а также >20 в то же время. Ты либо

  • нужен логический оператор ИЛИ
  • Изменить диапазон на что-то вроде (Num > 5) && (Num < 20) или что-то
Другие вопросы по тегам