KULTUROSFERA

ȘI, SAU, NU: decizii în program

Ora trecută, la „Citesc un program, povestesc un algoritm", pașii tăi se executau toți, în ordine, de fiecare dată. Programele adevărate nu merg însă mereu pe același drum: uneori fac ceva doar dacă se întâmplă o condiție — și adesea condiția e compusă din mai multe bucăți. La finalul lecției vei ști să combini condiții cu ȘI, SAU, NU, să completezi tabelele lor de adevăr și să folosești operatorii în blocurile de decizie din Scratch.

Reguli pe care le știi deja de la școală

Ieși în pauza mare dacă a sunat clopoțelul ȘI profesorul a încheiat ora. Ambele trebuie să fie adevărate — dacă a sunat, dar profesorul mai dictează tema, rămâi în bancă. Asta face operatorul ȘI: condiția mare e adevărată numai când toate părțile ei sunt adevărate.

Primești scutire de la sport dacă ai adeverință de la medic SAU părinții au trimis cerere scrisă. Ajunge una dintre ele. Iar dacă le ai pe amândouă, cu atât mai bine — tot scutit ești. Asta face SAU: condiția e adevărată când cel puțin o parte e adevărată.

Iar NU întoarce condiția pe dos: „NU (plouă)" e adevărată exact atunci când nu plouă. Simplu de spus, ușor de încurcat în grabă.

Tabele de adevăr, jucate în clasă

Un joc pe care îl facem la tablă. Doi colegi ies în față: Vlad ține o propoziție („am ecuson"), Ioana alta („am adus caietul"). Fiecare ridică mâna când propoziția lui e adevărată. Clasa strigă valoarea condiției compuse, iar profesorul bifează în tabel. După patru runde, tabelul lui ȘI e complet:

am ecusonam adus caietulecuson ȘI caiet
adevăratadevăratadevărat
adevăratfalsfals
falsadevăratfals
falsfalsfals

O singură linie cu adevărat — ȘI e un operator pretențios. La SAU, jocul se termină exact pe dos:

am ecusonam adus caietulecuson SAU caiet
adevăratadevăratadevărat
adevăratfalsadevărat
falsadevăratadevărat
falsfalsfals

Tabelul lui NU are doar două linii, pentru că lucrează cu o singură condiție: NU (adevărat) dă fals, NU (fals) dă adevărat.

Operatorii în Scratch

În Scratch, condițiile sunt blocurile hexagonale, iar operatorii logici stau în categoria verde Operatori. Le îmbini ca pe niște piese: în golurile hexagonale ale lui SAU intră alte condiții hexagonale. Iată o decizie dintr-un joc de prins:

dacăatinge pisica?sauatinge marginea?atuncispuneAi pierdut!

Citește condiția cu tabelul în minte: mesajul apare dacă șoricelul tău atinge pisica, dacă atinge marginea sau dacă — ghinion dublu — le atinge pe amândouă deodată. Dacă ai fi vrut mesajul doar la coliziunea cu pisica în timp ce fuge pe margine, alegeai ȘI, iar jocul devenea mult mai iertător.

NU are și el bloc propriu, tot hexagonal: pui înăuntru o condiție și primești opusul ei. „NU (tasta spațiu apăsată)" e felul programatorului de a spune „cât timp stai cu mâinile pe lângă tastatură".

Exersează

  1. Scrie tabelul de adevăr pentru condiția „NU (am ecuson)". Două linii îți ajung.
  2. Regula bibliotecii școlii: împrumuți al treilea roman dacă le-ai returnat pe primele două ȘI NU ai întârzieri. Ana a returnat cărțile, dar are o întârziere veche. Primește romanul? Justifică pe baza tabelului lui ȘI.
  3. Deschide Scratch și construiește decizia din figura de mai sus într-un joc simplu: personajul tău se mișcă cu săgețile, iar pisica glisează la poziții aleatorii. Testează amândouă părțile condiției.
  4. Provocare: rescrie condiția „NU (atinge pisica?) ȘI NU (atinge marginea?)" în cuvinte, apoi spune în ce situație — una singură — este ea adevărată. Verific-o în jocul de la punctul 3.

Verifică-te

Activitate

Se încarcă activitatea…

Activitate

Se încarcă activitatea…

Activitate

Se încarcă activitatea…