Instrucțiuni de decizie

În programare se folosesc foarte des intrucțiuni de decizie (en. if-uri):

Dacă această condție se îndeplinește, atunci se întâmplă ceva.

Altfel se întâmplă altceva.

De exemplu, dacă un utilizator răspunde corect la o întrebare, atunci numărul de răspunsuri corecte crește cu 1.

Ce sunt condițiile?

O condiție este un fragment de cod care compară două valori. Condițiile folosesc operatori pentru a face aceste operații. Operatorii folosiți în condiții se numesc operatori logici sau de comparație.

Pentru micro:bit, blocurile pentru condiții se găsesc în categoria Logic, secțiunea Comparison. Acești a sunt: egal, diferit, mai mic, mai mic sau egal, mai mare, mai mare sau egal.

Categoria Logic, secțiunea Comparison

Operatori de comparație

Expresii logice sau booleene

Condițiile se mai numesc și expresii logice sau booleene. Termenul boolean vine de la numele matematicianului George Bool și îl putem întâlni în alte cărți de programare.

O expresie logică/booleană poate avea valoarea adevărat (en. true) sau fals (en. false). O astfel de valoare se numește valoare logică sau booleană.

În expresiile logice pot apărea operatori specifici. Aceștia se numesc operatori logici.

Pentru micro:bit, blocurile pentru valorile logice (true, false) și operatorii logici (and, or, not) se găsesc în categoria Logic, secțiunea Boolean.

Operatorii logici. Valorile booleene

Instrucțiuni de decizie/condiționale

Pentru micro:bit, blocurile pentru instrucțiuni condiționale (en. if) se găsesc în categoria Logic, secțiunea Condiționals.

Instrucțiuni if

Instrucțiune if cu mai multe ramuri

(if-uri imbricate)

Instrucțiunile de tip if folosec condiții pentru a verifica dacă ceva este True sau False. În funcție de rezultat, se urmează căi diferite de program. Aceste căi se numesc ramuri pentru că se creează o structură arborescentă.

Semnele + sau – pot extinde sau pot restrânge blocul, structura arborescentă putând deveni foarte complexă.

Exemplu

Marca sau banul? Cap sau pajură? Vom simula aruncarea unei monede folosind micro:bit-ul.

La aruncarea unei monede (considerăm că este o monedă românească), avem două alternative: să fie vizibilă fața pe care este marca sau să fie vizibilă fața pe care este valoarea/banul.

Folosim un bloc if-else în interiorul unui block on button A pressed. Pentru condiția din if vom folosi pick random true or false din categoria Math. Acest bloc returnează la întâmplare true sau false.

Dacă va returna true, vom afișa pe ecranul de LED-uri un simbol pentru marcă. Dacă va returna false, vom afișa pe ecranul de LED-uri un simbol pentru ban.

Iconițele afișate înainte de if creează o mică animație înaintea fiecărei “aruncări”.