Combinare le condizioni
Fa parte della sezione Primi circuiti del percorso Arduino di Coddy. Lezione 21 di 22.
Due condizioni possono essere unite in una sola:
&&significa e: vero solo quando entrambi i lati sono veri||significa o: vero quando almeno un lato è vero
if (count >= 3 && count <= 7) { ... } // 3, 4, 5, 6 o 7
if (count == 1 || count == 9) { ... } // 1 o 9La prima si legge «count è almeno 3 e al massimo 7»: un intervallo. La seconda si legge «count è 1 oppure count è 9».
Ogni lato deve essere un confronto completo. count == 1 || 9 non significa «1 o 9»: il lato destro è 9 da solo, che la scacchiera considera vero, quindi l'intera condizione è sempre vera.
Anche count >= 3 || count <= 7 è sempre vero, perché ogni numero è o almeno 3 o al massimo 7. Per un intervallo serve &&.
Sfida
MedioIl programma iniziale conta ogni 300 ms. LED rosso sul pin 8, LED verde sul pin 9. A ogni iterazione:
- accendi il LED verde quando
countè compreso tra 4 e 6 (4, 5 o 6) e spegnilo altrimenti - accendi il LED rosso quando
countè 2 o 8 e spegnilo altrimenti
Premi Run, poi Check.
Provalo tu
int count = 0;
void setup() {
pinMode(8, OUTPUT); // rosso
pinMode(9, OUTPUT); // verde
Serial.begin(9600);
}
void loop() {
count = count + 1;
Serial.println(count);
// verde acceso da 4 a 6, rosso acceso a 2 e a 8
delay(300);
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Primi circuiti
1Ciao, scheda
Fai lampeggiare un LEDSetup e loopCambia la velocità di lampeggioUn LED tutto tuoDue LED a turnoI commenti nel tuo sketch4Decisioni
Decisioni con ifScegliere con if e elseConfrontare i valoriCombinare le condizioniLeggere un pulsante3La matematica alla lavagna
Costanti con nomeOperatori aritmeticiDivisione interaNumeri decimali con floatUn lampeggio che acceleraEsercitati da solo: Playground Arduino