Invatare Atomica

Reprezentarea Algoritmilor in Limbaj Natural

Progres lectie:
0%
🎯

Obiectivul lectiei

Invata sa scrii algoritmi clari si precisi folosind limba romana!

Dupa aceasta lectie vei putea:

  • Sa definesti ce este limbajul natural
  • Sa identifici verbe de actiune algoritmice
  • Sa demonstrezi pasi numerotati si structura
  • Sa folosesti vag vs precis: diferenta critica
  • Sa folosesti pattern-ul universal: input → process → output

Incearca singur!

🎯 Provocare: Scrie primul tau algoritm!

Sarcina simpla: Scrie un algoritm in limbaj natural care descrie cum iti pregatesti ghiozdanul pentru scoala.

"Dimineata, inainte de scoala, cum iti pregatesti ghiozdanul?"

ℹ️ De ce aceasta sarcina?
Nu avem nevoie de calcule sau decizii complicate — vrem sa vedem ca stii sa descrii pasi clari, in ordine, cu verbe de actiune. Daca sti sa explici ghiozdanul, stii sa scrii algoritmi!

Cum procedezi:

1
Deschide un editor de text (Notepad, Word, sau Google Docs)
2
Scrie START pe primul rand — marcheaza inceputul algoritmului
3
Scrie pasii numerotati (1., 2., 3., ...) folosind verbe de actiune: DESCHIDE, PUNE, VERIFICA, INCHIDE, SCRIE
4
Gandeste-te: ce actiuni faci, in ce ordine? Un pas = o singura actiune!
5
Scrie STOP pe ultimul rand — marcheaza sfarsitul algoritmului
Model de algoritm (copiaza si completeaza)
START 1. DESCHIDE ghiozdanul pe pat 2. PUNE caietele de matematica si romana 3. PUNE manualele necesare 4. VERIFICA daca ai toate cartile pentru ziua de azi 5. PUNE penarul cu pixuri si creioane 6. INCHIDE ghiozdanul STOP
💡 Link util
Poti scrie algoritmul intr-un editor online: Online Notepad

💡 Indicii (daca te blochezi)

💡 Indiciu 1: Cum incep?

Tot algoritmul incepe cu START. Primul pas poate fi simplu: "DESCHIDE ghiozdanul". Nu trebuie sa fie complicat!

💡 Indiciu 2: Ce verbe sa folosesc?

Verbe potrivite: DESCHIDE, PUNE, SCOATE, VERIFICA, INCHIDE, ASEAZA, ADAUGA. Fiecare pas sa inceapa cu un verb!

💡 Indiciu 3: Cat de multi pasi?

Incearca minim 5 pasi. Daca poti scrie 8-10 pasi cu actiuni diferite, esti deja un algoritm bun! Nu te opri la 3.

Bonus Challenge (dupa ce termini lectia)
Dupa ce parcurgi toate atomii de mai jos, intoarce-te si incearca o provocare mai grea: scrie un algoritm care citeste o nota, o calculeaza si decide daca ai promovat. Vei vedea ca deja stii sa faci asta!
1

1. Ce este Limbajul Natural?

🗣️

Ce este Limbajul Natural?

Limbajul natural este limba pe care o vorbim in viata de zi cu zi - romana, engleza, franceza etc. Cand scriem algoritmi in limbaj natural, folosim cuvinte si propozitii simple, nu simboluri sau coduri complicate.

Gandeste-te la limbajul natural ca la instructiunile pe care le-ai da unui prieten pentru a ajunge la casa ta:

  • "Mergi drept 200m"
  • "Coteste la stanga la semafor"
  • "Treci de parcul central"
  • "Blocul meu e pe dreapta, numarul 15"

Exact asa scriem si algoritmii in limbaj natural - cu instructiuni clare, pe intelesul oricui!

🧩 Analogie din viata ta

E ca si cum ai explica unui coleg cum sa rezolve un nivel de puzzle:

"1. Priveste tabla si gaseste piesa patrata din colt
2. Muta piesa patrata in spatiul liber din dreapta
3. Roteste piesa triunghiulara cu 90 de grade
4. Aseaza piesa triunghiulara langa cea patrata
5. Verifica daca toate piesele se potrivesc"

Observi? Nu folosesti cod de programare, doar cuvinte simple si clare!

ℹ️ De ce e util limbajul natural?
  • Nu trebuie sa stii programare ca sa scrii algoritmi
  • E usor de citit si inteles de oricine
  • Te ajuta sa gandesti logic inainte de a programa
  • E primul pas catre pseudocod si programare adevarata
2

2. Verbe de Actiune Algoritmice

🎯

Verbe de Actiune Algoritmice

Fiecare pas al unui algoritm trebuie sa inceapa cu un verb de actiune - un cuvant care spune clar CE SA FACI. Verbele sunt comenzi pe care computerul (sau executantul) le va executa.

Cele mai importante verbe algoritmice:

VERB Explicatie Exemplu
CITESTE Primeste date de la utilizator sau din alta sursa CITESTE numar
SCRIE Afiseaza un rezultat sau mesaj SCRIE "Rezultat: ", suma
CALCULEAZA Executa o operatie matematica CALCULEAZA suma = a + b
COMPARA Verifica o conditie (mai mare, mai mic, egal) DACA numar > 10 ATUNCI...
📌 Aprofundare (Clasa a VI-a)
Verbul REPETA (structura repetitiva / bucla) se va studia in clasa a VI-a (conform programei OMEN). In clasa a V-a ne concentram pe CITESTE, SCRIE, CALCULEAZA si COMPARA.
🍕 Analogie din viata ta

Reteta de pizza (folosind verbe de actiune):

1. IA aluatul din frigider
2. INTINDE aluatul cu sulelul
3. PUNE sos de rosii pe aluat
4. PRESARA cascaval pe deasupra
5. ADAUGA ingredientele preferate
6. COACE la 200°C timp de 15 minute

Fiecare pas incepe cu un VERB care spune clar ce actiune sa faci!

⚠️ Greseala comuna

GRESIT: "Cartea pe masa" (nu e o actiune!)

CORECT: "PUNE cartea pe masa" (verb + actiune clara)

Intotdeauna foloseste un VERB la inceputul fiecarui pas!

3

3. Pasi Numerotati si Structura

🔢

Pasi Numerotati si Structura

Un algoritm bine scris are o structura clara: incepe cu START, contine pasi numerotati (1, 2, 3, ...), si se termina cu STOP. Fiecare pas contine o SINGURA actiune.

Structura standard a unui algoritm:

📋 Template algoritm in limbaj natural
START 1. CITESTE date_necesare 2. CALCULEAZA/PRELUCREAZA date 3. SCRIE rezultate STOP

Reguli importante:

  • START marcheaza inceputul (punctul de pornire)
  • STOP marcheaza sfarsitul (punctul de oprire)
  • Pasii sunt numerotati (1, 2, 3, ...) pentru a sti ordinea exacta
  • Fiecare pas contine o singura actiune
  • Fiecare pas incepe cu un verb de actiune

Progresie: de la simplu la complex

Urmareste cum un algoritm creste treptat in complexitate — fiecare nivel adauga un element nou:

🟢 Nivel 1 — Un singur pas (cel mai simplu posibil)
START 1. SCRIE "Buna ziua!" STOP

✔ Orice algoritm are START si STOP. Chiar si cu un singur pas, structura este respectata.

🟡 Nivel 2 — Trei pasi secventiali (citire + calcul + afisare)
START 1. CITESTE numar 2. CALCULEAZA dublu = numar * 2 3. SCRIE "Dublul este: ", dublu STOP

✔ Acum avem INPUT (citire) → PROCESS (calcul) → OUTPUT (afisare). Acesta este pattern-ul de baza al majoritatii algoritmilor.

🔴 Nivel 3 — Cinci pasi cu decizie (secventa + ramificare)
START 1. CITESTE numar1 2. CITESTE numar2 3. CALCULEAZA suma = numar1 + numar2 4. DACA suma > 100 ATUNCI 4.1. SCRIE "Suma este mare: ", suma ALTFEL 4.2. SCRIE "Suma este mica: ", suma 5. SCRIE "Algoritm terminat." STOP

✔ Acum algoritmul decide: in functie de valoarea sumei, afiseaza mesaje diferite. Pasul 4 contine o structura alternativa (DACA...ATUNCI...ALTFEL), iar sub-pasii 4.1 si 4.2 sunt indentati pentru claritate.

ℹ️ Ce urmeaza?
La clasa a VI-a vei adauga si structura repetitiva (REPETA / cat timp...) — algoritmii vor putea executa pasi de mai multe ori. Deocamdata, in clasa a V-a, ne concentram pe secventa si decizie.
💡 De ce numerotam pasii?
  • Stim exact ordinea de executie (ce urmeaza dupa ce)
  • Putem face referiri: "Repeta pasul 3" sau "Daca da, mergi la pasul 5"
  • E usor sa gasim unde e o greseala
  • Putem colabora cu alti colegi ("Am ajuns la pasul 4, ce urmeaza?")
GRESIT (fara structura)
Citeste un numar Aduna la alt numar Afiseaza ceva

⚠️ Lipsesc START/STOP, pasii nu sunt numerotati, nu e clar ce se intampla

CORECT (cu structura)
START 1. CITESTE numar1 2. CITESTE numar2 3. CALCULEAZA suma = numar1 + numar2 4. SCRIE "Suma este: ", suma STOP

✓ Clar, structurat, oricine poate urmari si intelege!

4

4. Vag vs Precis: Diferenta Critica

⚖️

Vag vs Precis: Diferenta Critica

Un algoritm trebuie sa fie PRECIS si NEAMBIGUU. O instructiune vaga lasa loc de interpretare, iar un computer (sau alta persoana) nu va stii exact ce sa faca.

Exemple comparative:

❌ Descrieri VAGE

"Ia niste numere"

Ce inseamna "niste"? Cate? Care?

"Calculeaza ceva"

Ce anume? Cum? Cu ce date?

"Afiseaza rezultatul"

Ce rezultat? Unde? Cum?

✅ Descrieri PRECISE

"CITESTE numarul N"

Exact ce date si cum le numim!

"CALCULEAZA patrat = N * N"

Operatie clara cu rezultat stocat!

"SCRIE 'Patratul lui ', N, ' este ', patrat"

Exact ce si cum se afiseaza!

🎯 Analogie din viata ta

Imagineaza-ti ca dai instructiuni unui robot de livrare:

VAG: "Mergi undeva si livreaza pachetul cuiva"
→ Robotul nu stie unde sa mearga sau cui sa dea pachetul!

PRECIS: "Mergi la adresa Strada Florilor nr. 25, Apartamentul 3B, si livreaza pachetul lui Ion Popescu"
→ Robotul stie EXACT ce sa faca!

⚠️ Atentie la detalii!

Un algoritm precis trebuie sa raspunda la:

  • CE date citesc? (nume de variabile, sursa)
  • CUM le prelucrez? (operatii exacte)
  • UNDE afisez rezultatul? (ecran, fisier, etc.)
  • CAND se intampla fiecare actiune? (ordinea pasilor)
5

5. Pattern-ul Universal: INPUT → PROCESS → OUTPUT

🔄

Pattern-ul Universal: INPUT → PROCESS → OUTPUT

Majoritatea algoritmilor urmeaza un pattern simplu: CITESTE date (INPUT) → PRELUCREAZA date (PROCESS) → SCRIE rezultat (OUTPUT). Intelege acest pattern si vei putea scrie orice algoritm!
📥

INPUT

CITESTE datele necesare

CITESTE a, b
⚙️

PROCESS

CALCULEAZA / PRELUCREAZA

suma = a + b
📤

OUTPUT

SCRIE rezultatul

SCRIE suma

Exemple practice:

Exemplul 1: Calculeaza aria unui dreptunghi
START // INPUT - Citim datele 1. CITESTE lungime 2. CITESTE latime // PROCESS - Prelucram datele 3. CALCULEAZA aria = lungime * latime // OUTPUT - Afisam rezultatul 4. SCRIE "Aria dreptunghiului este: ", aria STOP
Exemplul 2: Verifica daca un numar este pozitiv
START // INPUT 1. CITESTE numar // PROCESS (cu decizie) 2. DACA numar > 0 ATUNCI 2.1. rezultat = "pozitiv" ALTFEL 2.2. rezultat = "negativ sau zero" // OUTPUT 3. SCRIE "Numarul este: ", rezultat STOP
💡 Trucul profesionistilor

Cand primesti o problema, intreaba-te mereu:

  1. Ce date am nevoie? (INPUT) → CITESTE...
  2. Ce calcule/decizii fac? (PROCESS) → CALCULEAZA/DACA...
  3. Ce afisez/returnez? (OUTPUT) → SCRIE...

Raspunde la aceste 3 intrebari si ai algoritmul gata!

Exercitii practice

Exercitiul 1 (Nivel minim) - Exercitiu Creativ

1

Exercitiu Creativ

Sarcina: Scrie un algoritm in limbaj natural pentru a prepara sandvisul tau preferat. Include toate detaliile: ce ingrediente iei, in ce ordine le pui, cum il tai, etc.

Cerinte:

  • Foloseste START si STOP
  • Numeroteaza pasii
  • Fiecare pas incepe cu un verb de actiune
  • Un pas = o actiune
  • Minim 8 pasi

Exercitiul 2 (Nivel standard) - Exercitiu Practic

2

Exercitiu Practic

Sarcina: Scrie un algoritm pentru a determina care dintre trei numere (A, B, C) este cel mai mare.

Cerinte:

  • CITESTE cele 3 numere
  • Foloseste COMPARA (DACA... ATUNCI... ALTFEL)
  • SCRIE care numar este cel mai mare
  • Gestioneaza cazul in care doua/toate numerele sunt egale

Exercitiul 3 (Nivel performanta) - Exercitiu Analitic

3

Exercitiu Analitic

Sarcina: Analizeaza urmatorul algoritm si identifica greselile. Rescrie-l corect.

Ia doua numere Aduna-le si inmulteste cu 3 Daca rezultatul e mare, scrie mesaj STOP START

Ce sa cauti: Lipseste START la inceput? Pasii nu sunt numerotati? Verbe de actiune? Instructiuni vage?

Ce ai invatat astazi

  • Limbaj natural= limba pe care o vorbim zilnic (romana, engleza, etc.), folosita pentru a descrie algoritmi fara cod de programare
  • Verbe algoritmice clasa V: CITESTE (primeste date), SCRIE (afiseaza rezultat), CALCULEAZA (operatii matematice), COMPARA (verifica conditii — DACA...ATUNCI...)
  • Structura algoritm: START → pasi numerotati (1, 2, 3...) cu verbe de actiune → STOP. Un pas = o actiune!
  • Precis vs Vag: Algoritm bun = instructiuni clare, fara ambiguitati. Raspunde la: CE date? CUM le prelucrez? UNDE afisez?
  • Pattern universal: INPUT (CITESTE date) → PROCESS (CALCULEAZA/prelucreaza) → OUTPUT (SCRIE rezultat)

Urmatoarea lectie

Continua cu lectia urmatoare pentru a aprofunda cunostintele.

Continua →