Sunteți pe pagina 1din 7

Algoritmi în Blockly

Introducere
Pașii ce descriu modul de rezolvare a unei probleme, formează un algoritm. Astfel putem spune că
pregătirea tortului se face după un algoritm (o rețetă). La fel pentru a rezolva problema spălatului pe
mâini trebuie executate următoarele operații: udarea mâinilor, folosirea săpunului și frecarea mâinilor,
clătirea, după care uscarea mâinilor. Extragerea radicalului dintr-un număr se face tot pe baza unui
algoritm (de natură matematică).
Pentru calculator un algoritm este un șir de pași / instrucțiuni prin care se descrie rezolvarea unei
probleme, astfel încât, pe baza datelor problemei (date de intrare), să se obțină un rezultat (date de
ieșire). Datele problemei, rezultatele finale, precum și rezultatele intermediale ale calculelor (datele
de manevră) sunt reținute în memoria calculatorului în locații separate .
Un algoritm are următoarele proprietăți: finitudine, generalitate și claritate:
 Finitudine – trebuie să se termine după un număr finit (limitat) de pași
 Generalitate – trebuie să rezolve toate problemele de același tip
 Claritate – trebuie să fie clar descris, fără ambiguități

Variabile și constante
Datele probleme trebuie să fie identificate prin câte nume și se numesc variabile.
Numele variabilelor se formeză din litere, cifre și liniuța de subliniere (underscore). Valorile variabilelor
se poate schimba pe parcursul derulării algoritmului. Într-un algoritm putem folosii și constante, a
căror valoare nu se poate schimba pe parcursul derulării algoritmului.
Numele variabilelor și a constantelor nu poate începe cu underscore. Se obișnuiește în denumirea
variabilelor să se folosească numai litere mici, iar în denumirea contantelor să se folosească numai
litere mari.

Operații și expresii
Ca la matematică variabilele și constantele pot fii folosite în expresii. Expresiile sunt formate din mai
mulți operanzi (variabile / constante) legate prin operatori.
Tabelul următor prezintă operatorii cel mai importanți:
Matematică Pseudocod Blockly a b Rezultat
Adunare a+b 5 6 11

Scădere a-b 19 7 12

Înmulțire a*b 19 11 209

Împărțire a/b 29 11 2.6363


Împărțire [a / b]
29 11 2
întreagă
a div b
Împărțire a%b
29 11 7
cu rest
a mod b
Ridicare la 9 2 81
a^b
putere

Algoritmi în Blockly 1
De multe ori în informatică trebuie să descompunem un număr în cifre. Pentru asta trebuie să folosim
împărțirea întreagă și împărțirea cu rest:
Matematică Pseudocod Blockly Descriere
Împărțire n % 10 Ultima cifră a numărului n (restul
cu rest împărțirii la 10)
n mod 10
Împărțire [n / 10] Numărul fără ultima cifră (câtul
întreagă împărțirii la 10)
n div 10

Expresia nu se pot utiliza în forma sa cunoscută din matematică ea trebuie liniarizată, adică scrisă pe
o singură linie. Ordinea operațiilor este cea cunoscută din matematică. Ca şi la matematică,
parantezele rotunde sunt evaluate primele. În informatică, putem avea expresii care să conţină mai
multe perechi de paranteze rotunde:
Matematică Pseudocod a b Rezultat
- 3 * a + a % 10 12 - 38
a
a 2 * a / (a + b) + a ^ 2 6 2 37.5
a b
2[a+b(a-5)] 2 * (a + b * (a - 5)) 6 2 16

Modalitatea de scriere a expresiilor de mai sus în Blockly:


Pseudocod Blockly
3 * a + a % 10

2 * a / (a + b) + a ^ 2

2 * (a + b * (a - 5))

Exerciții: Rezolvați următoarele exerciții:


1. Scrie o expresie care să calculeze câte numere naturale pare sunt mai mici ca un x dat.
Exemplu: Pentru x = 5, rezultatul va fi 2, pentru că sunt două numere pare mai mici decât 5: și 4.
. Calculează valoarea expresiei 3 * x – * y pentru următoarele perechi de valori:
 x = 5, y = 6
 x = 7, y = 2
 x = 4, y = 6

Resurse online
Pentru a afla mai multe despre programarea în Blockly accesează linkul:
 https://www.pbinfo.ro/articole/89/programeaza-cu-blockly

Algoritmi în Blockly 2
Primul program blockly
Pentru folosirea mediului de programare Blockly accesează site -ul pbinfo.ro:

Nu este nevoie de cont pe site, doar derulează și găsește pe panoul stâng link-ul Blockly:

Algoritmi în Blockly 3
Problemă rezoIvată
Problema 1.
Să se afișeze suma și produsul a două numere naturale a și b citite de la tastatură.
Exemplu: intrare: 8 5 ieșire: 13 40
Avem nevoie de 2 variabile de intrare a și b, respectiv de variabile de ieșire suma și produs:

Algoritmi în Blockly 4
După declararea tuturor variabilelor cu comanda Variabile > Variabilă nouă…, pentru citirea
variabilelor de intrare folosim blocurile disponibile în meniurile Variabile și Citiri, afișări. Pentru
efectuarea calculelor folosim meniul Operații, iar pentru afișarea rezultatelor folosim din nou meniul
Citiri, afișări:
Pseudocod Blockly

citeşte a, b
suma  a + b
produs  a * b
scrie suma, produs

Pentru a executa programul nostru apăsăm butonul verde Rulează și introducem datele de intrare:

Observăm că nu avem nevoie nici de variabilele de ieșire, deoarece aceste valori se pot calcula
direct:
Pseudocod Blockly

citeşte a, b
scrie a + b, a * b

Algoritmi în Blockly 5
Structura liniară (secvențială)
Programarea structurată are la bază teorema de structură care afirmă că orice algoritm poate fi
reprezentat ca o combinaţie de trei tipuri de structuri de control – secvenţa, decizia şi ciclul. Structura
liniară (secvența) este o succesiune de operaţii ce realizează o prelucrare a datelor, operaţiile sunt
executate una după alta, în ordinea scrierii. Prima noastră problemă rezolvată se încadrează tot aici.

Problema 2.
Se citesc două numere naturale a și b de la tastatură, numere ce reprezintă laturile unui dreptunghi.
Să se calculeze perimetrul și aria drepunghiului.
Exemplu: intrare: 8 5 ieșire: 13 40
Pseudocod Blockly

citeşte a, b
aria  a * b
scrie "primetrul="
scrie 2 * (a + b)
scrie "aria="
scrie a * b

Pentru a afișa și un mesaj înaintea varibilei de ieșire puteți folosii blocul unește din meniul Text.
Exercițiu: Rezolvați următorul exercițiu:
În figura alăturată, avem un pătrat roșu cu latura a și un
dreptunghi albastru care are lungimea de două mai mare
decât lățimea. Determinați o formulă de calcul a ariei și
perimetrului dreptunghiului format din pătratul roșu și
dreptunghiul albastru în funcție de valoarea lui a și
realizați un program Blockly care să afișeze rezultatele.

Problema 3.
Se citește un număr natural a de la tastatură, număr ce reprezintă raza unui cerc. Să se calculeze
perimetrul și aria cercului.
Exemplu: intrare: 8 ieșire: 50.26 201.06
Pseudocod Blockly

citeşte a
pi  3.14
scrie 2 * pi * a
scrie pi * a ^ 2

Blockly are definit o constantă pentru PI cu numele de π.

Algoritmi în Blockly 6
Problema 4.
Se citesc două numere naturale a și b de la tastatură. Să interschimbe valorile lor.
Exemplu: intrare: 8 34 ieșire: 34 8
Problema se rezolvă cu un algoritm de bază din informatică folosind metoda paharelor.

Pseudocod Blockly

citeşte a, b
c  b
b  a
a  c
scrie a, b

Exercițiu: Rezolvați următorarele exerciții:


1. Într-o curte sunt G găini și O oi. Să se afle numărul de capete și numărul de picioare din curte .
Exemplu: intrare: 3 2 ieșire: 5 14
2. Să se scrie un program care citeşte de la tastatură un număr natural cu cel puţin două cifre şi
determină suma dintre cifra zecilor şi cifra unităţilor numărului citit.
Exemplu: intrare: 2012 ieșire: 3

Algoritmi în Blockly 7

S-ar putea să vă placă și