Оператори порівняння та if
if (умова) та ==, !=, <, > (оператори порівняння)
Функція if, яка використовується в поєднанні з операторами порівняння, перевіряє, чи було досягнуто певну умову, наприклад, чи введені дані більші за певне число. Формат застосування функції if такий:
if (someVariable > 50)
{
// зробіть щось тут
}
Програма перевіряє, чи деяка змінна більша за 50. Якщо так, програма виконає певну дію. Іншими словами, якщо твердження в дужках правдиве, оператори всередині фігурних дужок запускаються. Якщо ні, програма пропускає цю частину коду.
Фігурні дужки після оператора if також можуть бути пропущені. Якщо це так, наступний рядок (визначається крапкою з комою) стає єдиним умовним оператором.
if (x > 120) digitalWrite(LEDpin, HIGH);
if (x > 120)
digitalWrite(LEDpin, HIGH);
if (x > 120){ digitalWrite(LEDpin, HIGH); }
if (x > 120){
digitalWrite(LEDpin1, HIGH);
digitalWrite(LEDpin2, HIGH);
} // всі варіанти правильні
Поміщені у дужки вирази вимагають використання одного чи більше операторів:
Оператори порівняння:
x == y (x дорівнює y)
x != y (x не дорівнює y)
x < y (x менше, ніж y)
x > y (x більше, ніж y)
x <= y (x менше або дорівнює y)
x >= y (x більше або дорівнює y)
Остерігайтеся випадкового використання одиничного знаку рівності (if (x = 10)). Одиничний знак рівності — це оператор присвоєння, тому присвоює x значення 10. Натомість використовуйте подвійний знак рівності, який є оператором порівняння. Він перевіряє, чи х дорівнює 10. Останнє твердження правдиве лише якщо х рівний 10, а от попередній оператор завжди буде правдивим.
Це тому, що C обчислює вираз if (x=10) наступним чином: 10 присвоюється х (запам’ятайте, що одиничний знак рівності — це оператор присвоєння), тому тепер х містить 10. Тоді функція if оцінює 10, яке завжди буде істинним (TRUE), адже будь-яке ненульове число є істинним. Отже, вираз if (x = 10) завжди буде істинним, що не є бажаним результатом при використанні оператора if. Крім того, змінній x буде присвоєно значення 10, що також не є бажаною дією.
if також може бути частиною розгалуженої керувальної структури з використанням конструкції if...else.
Повернутись до головної
Коментарі 0