Відмінності між версіями «If»
Oogway (обговорення • внесок) (Створена сторінка: === Оператор If === '''if (умова) та ==, !=, <, > (оператори порівняння)''' '''if''', використовується ра...) |
Oogway (обговорення • внесок) |
||
| Рядок 1: | Рядок 1: | ||
| − | == | + | ==if (умова) and ==, !=, <, > (оператори порівняння)== |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| + | Оператор '''if''', котрий зазвичай використовують у поєднанні з оператором порівняння, тестує, чи виконуються певні умови, наприклад, чи перевищує введене значення задане число. Формат тесту if виглядає так: | ||
| + | <pre> | ||
if (someVariable > 50) | if (someVariable > 50) | ||
{ | { | ||
| − | // | + | // виконати дію |
} | } | ||
| + | </pre> | ||
| + | Програма перевірятиме, чи якась змінна (someVariable) більша за 50. Якщо так, програма виконає певну дію. Іншими словами, якщо вираз у круглих дужках є істинним, програма виконає код у фігурних дужках. Якщо ні, програма пропустить код. | ||
| + | Вираз-дію після виразу if не обов’язково брати у фігурні дужки. У такому разі, щоб програма правильно сприйняла вираз-дію, після нього треба поставити крапку з комою, як у прикладі нижче (другий вираз if (x > 120)). | ||
| + | <pre> | ||
| + | if (x > 120) digitalWrite(LEDpin, HIGH); | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
if (x > 120) | if (x > 120) | ||
| − | digitalWrite(LEDpin, HIGH); | + | digitalWrite(LEDpin, HIGH); |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| + | if (x > 120){ digitalWrite(LEDpin, HIGH); } | ||
| + | if (x > 120){ | ||
| + | digitalWrite(LEDpin1, HIGH); | ||
| + | digitalWrite(LEDpin2, HIGH); | ||
| + | } // усі варіанти правильні | ||
| + | </pre> | ||
| + | Для того, щоб обчислити вирази у круглих дужках, необхідні ''оператори порівняння'': | ||
| + | <pre> | ||
x == y (x дорівнює y) | x == y (x дорівнює y) | ||
| + | x != y (x не дорівнює y) | ||
| + | x < y (x менше за y) | ||
| + | x > y (x більше за y) | ||
| + | x <= y (x менше або дорівнює y) | ||
| + | x >= y (x більше або дорівнює y) | ||
| + | </pre> | ||
| + | '''Увага!''' Слідкуйте за тим, щоб випадково не використати одинарний знак «дорівнює» (наприклад, if (x = 10) ): програма сприйме його як знак оператора присвоєння і присвоїть змінній х значення 10. Натомість використовуйте подвійний знак «дорівнює» (наприклад, if (x == 10) ), котрий є оператором порівняння і перевіряє, дорівнює змінна х 10 чи ні. Вираз if (x == 10) істинний лише у випадку, коли х дорівнює 10, тоді як вираз if (x = 10) завжди буде істинним. | ||
| − | + | Так є, оскільки С оцінює вираз if (x = 10) наступним чином: значення 10 присвоюється змінній х (одинарний знак «дорівнює» - оператор присвоєння), тож х тепер сприймається програмою як 10. Потім оператор if обчислює 10, котре завжди буде істинним, оскільки будь-яке число, що не дорівнює нулю, буде істинним. Відповідно, вираз if (x = 10) завжди дорівнюватиме TRUE (буде істинним), що не є бажаним результатом під час використання оператора if. Так само змінну х буде задано як 10, що також не є бажаним. | |
| − | + | Оператор if також може бути частиною розгалуженої структури керування з використанням конструкції [[if…else]]. | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
Поточна версія на 07:25, 20 липня 2016
if (умова) and ==, !=, <, > (оператори порівняння)
Оператор if, котрий зазвичай використовують у поєднанні з оператором порівняння, тестує, чи виконуються певні умови, наприклад, чи перевищує введене значення задане число. Формат тесту if виглядає так:
if (someVariable > 50)
{
// виконати дію
}
Програма перевірятиме, чи якась змінна (someVariable) більша за 50. Якщо так, програма виконає певну дію. Іншими словами, якщо вираз у круглих дужках є істинним, програма виконає код у фігурних дужках. Якщо ні, програма пропустить код.
Вираз-дію після виразу if не обов’язково брати у фігурні дужки. У такому разі, щоб програма правильно сприйняла вираз-дію, після нього треба поставити крапку з комою, як у прикладі нижче (другий вираз if (x > 120)).
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) ): програма сприйме його як знак оператора присвоєння і присвоїть змінній х значення 10. Натомість використовуйте подвійний знак «дорівнює» (наприклад, if (x == 10) ), котрий є оператором порівняння і перевіряє, дорівнює змінна х 10 чи ні. Вираз if (x == 10) істинний лише у випадку, коли х дорівнює 10, тоді як вираз if (x = 10) завжди буде істинним.
Так є, оскільки С оцінює вираз if (x = 10) наступним чином: значення 10 присвоюється змінній х (одинарний знак «дорівнює» - оператор присвоєння), тож х тепер сприймається програмою як 10. Потім оператор if обчислює 10, котре завжди буде істинним, оскільки будь-яке число, що не дорівнює нулю, буде істинним. Відповідно, вираз if (x = 10) завжди дорівнюватиме TRUE (буде істинним), що не є бажаним результатом під час використання оператора if. Так само змінну х буде задано як 10, що також не є бажаним. Оператор if також може бути частиною розгалуженої структури керування з використанням конструкції if…else.
