Объединение условий
Часть раздела Первые схемы путешествия по Arduino на Coddy. Урок 21 из 22.
Два условия можно объединить в одно:
&&означает и: истина, только когда истинны обе части||означает или: истина, когда истинна хотя бы одна часть
if (count >= 3 && count <= 7) { ... } // 3, 4, 5, 6 или 7
if (count == 1 || count == 9) { ... } // 1 или 9Первое читается так: «count не меньше 3 и не больше 7»: это диапазон. Второе читается так: «count равно 1 или count равно 9».
Каждая часть должна быть полным сравнением. count == 1 || 9 не означает «1 или 9»: правая часть — это просто 9, которую плата считает истинной, поэтому всё условие всегда истинно.
И count >= 3 || count <= 7 тоже всегда истинно, потому что любое число либо не меньше 3, либо не больше 7. Для диапазона нужен &&.
Задание
СреднеНачальный код увеличивает счётчик каждые 300 мс. Красный светодиод подключён к контакту 8, зелёный светодиод — к контакту 9. Каждый раз:
- включай зелёный светодиод, когда
countнаходится в диапазоне от 4 до 6 (4, 5 или 6), и выключай его в противном случае - включай красный светодиод, когда
countравен 2 или 8, и выключай его в противном случае
Нажми Run, затем Check.
Попробуйте сами
int count = 0;
void setup() {
pinMode(8, OUTPUT); // красный
pinMode(9, OUTPUT); // зелёный
Serial.begin(9600);
}
void loop() {
count = count + 1;
Serial.println(count);
// зелёный горит с 4 до 6, красный — при 2 и 8
delay(300);
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Первые схемы
Потренируйтесь самостоятельно: Песочница Arduino