Menu
CoddyTech

Combinando condições

Parte da seção Primeiros circuitos do Journey de Arduino da Coddy. Lição 21 de 22.

Duas condições podem ser combinadas em uma:

  • && significa e: verdadeiro somente quando ambos os lados são verdadeiros
  • || significa ou: verdadeiro quando pelo menos um dos lados é verdadeiro
if (count >= 3 && count <= 7) { ... }   // 3, 4, 5, 6 ou 7
if (count == 1 || count == 9) { ... }   // 1 ou 9

A primeira expressão pode ser lida como "count é pelo menos 3 e no máximo 7": um intervalo. A segunda pode ser lida como "count é 1 ou count é 9".

Cada lado precisa ser uma comparação completa. count == 1 || 9 não significa "1 ou 9": o lado direito é 9 por si só, e a placa o trata como verdadeiro, então a condição toda é sempre verdadeira.

E count >= 3 || count <= 7 também é sempre verdadeiro, porque todo número é pelo menos 3 ou no máximo 7. Um intervalo precisa de &&.

challenge icon

Desafio

Médio

O código inicial conta a cada 300 ms. LED vermelho no pino 8, LED verde no pino 9. A cada iteração:

  • ligue o LED verde quando count estiver entre 4 e 6 (4, 5 ou 6) e desligue-o nos demais casos
  • ligue o LED vermelho quando count for 2 ou 8 e desligue-o nos demais casos

Pressione Run e, em seguida, Check.

Experimente você mesmo

int count = 0;

void setup() {
  pinMode(8, OUTPUT);  // vermelho
  pinMode(9, OUTPUT);  // verde
  Serial.begin(9600);
}

void loop() {
  count = count + 1;
  Serial.println(count);
  // verde aceso de 4 a 6, vermelho aceso em 2 e em 8
  delay(300);
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Primeiros circuitos

Pratique por conta própria: Playground de Arduino