Menu
CoddyTech

Объединение условий

Часть раздела Первые схемы путешествия по 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. Для диапазона нужен &&.

challenge icon

Задание

Средне

Начальный код увеличивает счётчик каждые 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);
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Первые схемы

Потренируйтесь самостоятельно: Песочница Arduino