Menu
CoddyTech

Decyzje z użyciem if

Część sekcji Pierwsze obwody ścieżki Arduino w Coddy. Lekcja 18 z 22.

if wykonuje niektóre wiersze tylko wtedy, gdy coś jest prawdą:

if (waitTime > 200) {
  waitTime = waitTime - 200;
}

Część w nawiasach to warunek. waitTime > 200 oznacza „waitTime jest większe niż 200” i może być prawdą albo fałszem. Gdy warunek jest prawdziwy, płytka wykonuje wiersze wewnątrz nawiasów klamrowych. Gdy jest fałszywy, pomija je i kontynuuje działanie po zamykającym nawiasie klamrowym.

< oznacza „mniejsze niż”. Wkrótce poznasz pozostałe porównania.

Po warunku nie ma średnika. if (waitTime > 200); kończy instrukcję if w tym miejscu, bez żadnej zawartości, a wiersze w nawiasach klamrowych wykonują się wtedy za każdym razem.

challenge icon

Wyzwanie

Łatwy

Wersja początkowa powoduje miganie, które przyspiesza, a potem się zatrzymuje. Napraw ją:

  • zmniejszaj waitTime tylko wtedy, gdy jest większe niż 200

Miganie powinno przyspieszać, a następnie trwać w tempie 200 ms. Naciśnij Run, a następnie Check.

Spróbuj swoich sił

int waitTime = 1000;

void setup() {
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);
  delay(waitTime);
  digitalWrite(13, LOW);
  delay(waitTime);
  // rób to tylko wtedy, gdy waitTime jest większe niż 200
  waitTime = waitTime - 200;
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Pierwsze obwody

Poćwicz samodzielnie: Edytor online Arduino