2016-10-31 3 views
-1

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

#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); 
    } 
} 

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

+2

Там нет числа как меньше 5 и больше, чем 20. –

ответ

2

Нет, вы ошибаетесь. Подумайте о логике

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

Num не может быть <5 и >20 одновременно. Вы либо

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

@link whoopsie..edit clash..sorry. –

+0

Или означает '(5 Num)'. –

+0

@SouravGhosh О, боже, да, я полностью перепутал их, черт возьми, спасибо, человек! Сейчас он работает – NotAProgrammer

 Смежные вопросы

  • Нет связанных вопросов^_^