Sunteți pe pagina 1din 6

Noţiuni despre algoritmi.

Executanţii

1. Noţiune de algoritm

Noţiunea de algoritm este una dintre noţiunile de bază ale informaticii. Încă în Egiptul şi
Grecia antică la rezolvarea problemelor de calcul se efectuau nişte calcule succesive conform
unor reguli şi instrucţiuni bine determinate. Pornind de la unele date iniţiale se obţinea
rezultatul dorit. Cu timpul aceste procese de calcul au fost numite algoritmi.
Termenul algoritm provine de la algorithmi – în numele marelui matematician uzbec din
sec. IX ali-Xorezmi, care a formulat regulile de efectuare a operaţiilor aritmetice în sistemul
zecimal de numeraţie. La început sub algoritm se subînţelegeau numai regulile de efectuare a
celor patru operaţii aritmetice asupra numerelor de mai multe cifre. Ulterior această noţiune a
început să fie folosită în general pentru notarea succesiunilor de operaţii care duceau la
rezolvarea problemei formulate .
Prin algoritm se înţelege o prescripţie (indicaţie) precisă şi clară pentru executant
de a efectua o succesiune de operaţii orientate spre atingerea scopului indicat sau
spre rezolvarea problemei formulate .

Exemplu: Să se calculeze valoarea lui Y după formulă, pentru orice valoare a lui X.
Y=(A*X+B)*(C*X-D)
Pentru a efectua această problemă e suficient să efectuăm următoarea succesiune de operaţii:
1) Înmulţim A cu X , notând rezultatul prin R1,
2) Adunăm R1 la B, notând rezultatul prin R2,
3) Înmulţim C cu X , notând rezultatul prin R3,
4) Scădem D din R3, notând rezultatul prin R4,
5) Înmulţim R2 cu R 4, rezultatul fiind considerat ca valoarea lui Y.
Această prescripţie reprezintă algoritmul de rezolvare a problemei formulate. Nu mai este
necesar pentru omul care efectuează operaţiile să cunoască formula de calcul al valorii Y. El
trebuie doar să urmeze prescripţia indicată, executând-o pas cu pas.
Exemplul de algoritm arată că notarea algoritmului se descompune în indicaţii
distincte pentru ca executantul să efectueze o succesiune de operaţii finite - paşi. Fiecare
operaţie trebuie terminată de către executant înainte de trecerea lui la execuţia operaţiei
următoare. O indicaţie specială în notarea algoritmului, numită instrucţiune, îi prescrie
executantului să efectueze fiecare instrucţiune în parte. Această proprietate a algoritmului se
numeşte discontinuitate.
În afară de aceasta, algoritmul trebuie scris astfel, încât executând o instrucţiune dată,
executantul trebuie să ştie precis, care instrucţiune trebuie efectuată ulterior. Această
proprietate a algoritmului se numeşte exactitate.
Cea mai importantă particularitate a algoritmului constă în faptul, că îndeplinirea lui se
reduce la executarea unui număr finit de operaţii, ceea ce duce întotdeauna la rezolvarea
problemei. Această proprietate a algoritmului se numeşte finititudine.
Prin intermediul aceluiaşi algoritm pot fi rezolvate repetat probleme de acelaşi tip.
Această proprietate a algoritmului se numeşte universalitate. Universalitatea sporeşte
considerabil valoarea practică a algoritmilor.
Fiecare algoritm e alcătuit pentru un anumit executant. E necesar ca executantul să fie
în stare să execute fiecare acţiune prescrisă de instrucţiune ca să poată rezolva problema
conform algoritmului .
Totalitatea instrucţiunilor care pot fi efectuate de către executant se numeşte sistem de
instrucţiuni ale executantului.
Astfel, pentru alcătuirea corectă a algoritmului e necesar să cunoaştem sistemul de
instrucţiuni ale executantului şi să fim siguri că execuţia algoritmului se termină după un
număr finit de paşi.
Centrul Noilor Tehnologii Informaţionale ianuarie 2000
Pagina 1 din 6
Noţiuni despre algoritmi. Executanţii

Vom deosebi:
Algoritmi liniari, Algoritmi ciclici, Algoritmi de ramificare, Algoritmi combinaţi.
2. Limbajul algoritmic

Limbajul algoritmic este un sistem de notaţii şi reguli de scriere în mod unic şi precis
a algoritmilor şi de execuţie a lor. Algoritmii în acest limbaj pot fi scrişi şi citiţi ca un text
obişnuit. El poate conţine şi caractere matematice: numere, notaţiile mărimilor şi ale
funcţiilor, semnele operaţiilor şi parantezele…
Regulile limbajului algoritmic stau la baza limbajelor de programare.

3. Reguli generale ale limbajului algoritmic

Limbajul algoritmic ca şi orice limbă î-şi are vocabularul său. Baza acestui vocabular îl
constituie cuvintele folosite pentru scrierea instrucţiunilor din sistemul de instrucţiuni ale
executantului căruiva algoritm. Astfel de instrucţiuni se numesc simple.
O instrucţiune simplă arată ca o propoziţie imperativă a limbii noastre într-o formă
completă sau prescurtată, cuprinzând , dacă e necesar, formule şi alte notaţii simbolice.
Afară de aceasta în limbajul algoritmic se foloseşte un număr limitat de cuvinte al căror sens
în mod de întrebuinţare e fixat o dată şi pentru totdeauna. Ele se numesc cuvinte rezervate. La
scrierea algoritmilor ele sunt evidenţiate şi scrise abreviat. Folosirea cuvintelor rezervate face
scrierea algoritmilor mai sugestivă , iar forma de reprezentare a diferiţilor algoritmi – mai
uşoară.

4. Instrucţiuni compuse

Algoritmii sunt de trei tipuri liniari, ramificaţi, ciclici. Algoritmii alcătuiţi dintr-o secvenţă de
instrucţiuni simple în limbajul algoritmic sunt liniari. Pentru scrierea algoritmilor ramificaţi şi
ciclici se întrebuinţează aşa numitele instrucţiuni compuse. Pentru fiecare executant sunt
indicate instrucţiunile respective.

5. Subalgoritmi (Proceduri).

la compunerea unor noi algoritme pot fi utilizaţi algoritmi deja alcătuiţi. Algoritmii
folosiţi în întregime în cadrul altor algoritmi se numesc subalgoritmi (sau algoritmi
auxiliari). Nu este exclus ca un algoritm care conţine o referinţă la un subalgoritm, într-o
anumită situaţie să devină el însuşi subalgoritm. Utilizarea algoritmilor deja alcătuiţi la
compunerea celor noi î-şi află o largă aplicaţie în practica algoritmizării.

6. Executanţii

Pentru o mai bună înţelegere a noţiunii de algoritm e necesară cunoaşterea şi însuşirea


caracteristicilor de bază ale executantului: mediul, comenzile simple, comenzile avansate,
refuzurile. Executantul nu ştie nimic despre scopul final al algoritmului. El execută
instrucţiunile parvenite fără a medita care-i sensul şi scopul execuţiei instrucţiunii curente.
Executanţii permit a lucra în trei limbi: română, rusă şi engleză. Acest fapt, că
copilul studiază instrucţiunile executantului în limba maternă, trebuie să ajute elevul în a le
înţelege repede şi bine.
Lucrul cu executanţii Cangurul şi Furnica au drept scop studierea şi căpătarea
deprinderilor de lucru cu cele mai simple instrucţiuni care se folosesc în limbajele de
Centrul Noilor Tehnologii Informaţionale ianuarie 2000
Pagina 2 din 6
Noţiuni despre algoritmi. Executanţii

programare. În procesul studierii în clasa a VIII e necesar de lucrat cu unul din executanţii
Cangurul sau Furnica, la discreţia profesorului. Nu e obligatoriu de lucrat cu ambii. E de dorit
însă, de a propune pentru lucru de sinestătător careva probleme pentru a fi rezolvate cu alt
executant, diferit de cel studiat, pentru a deprinde elevii să se descurce singuri.

7. Modul de lucru cu executantul Cangur.

Instalarea
Copiaţi fişierul Setup pe winchester.
 Fixăm şoricelul la fişierul Setup
 Tastaţi butonul stâng al şoricelului de 2 ori.
 Tastaţi OK.
 Alegeţi calea, unde doriţi să se dezarhiveze, dacă nu doriţi pe cea propusă (C:\Program
Files\Cangourou).
 Tastaţi Unzip.
 Tastaţi OK.
Programele sau dezarhivat şi automat se lansează programul Cangurul.
Dacă dorim să lucrăm scriem algoritmul, dacă nu părăsim programul.
Pentru al apela altă dată e mai comod de făcut o comandă scurtă pe masa de lucru:
 Tastăm butonul drept al şoricelului pe un loc gol de pe masa de lucru.
 Alegem new/shortcut.
 Tastăm Browse.
 Alegem Program Files/Cangourou/ Cangourou/Open.
 Tastăm Next/Finish.
Tastând pe această iconiţă de două ori activăm programul Cangur.

Unde în partea stângă sunt desenate 6 butoane, pentru:


1. A încheia sesiunea de lucru cu programul.
2. A trece la îndeplinirea comenzilor “manual”. Adică cangurul primeşte comanda şi în
acelaşi timp o îndeplineşte.
3. A trece la îndeplinirea comenzilor prin program. Adică scriem algoritmul, şi abea după
aceasta cangurul îl îndeplineşte.
4. Verificarea corectitudinii programului şi scrie mesajul respectiv.
5. A stopa avariat îndeplinirea algoritmului
6. Îndeplineşte algoritmul.

Programul conţine de asemenea şi un meniu principal, unde sunt indicate:


Fişier / Editare / Comenzi / Opţiuni / Ajutor.
Comenzile acestor meniuri sunt destul de simple de acea nu ne v-om opri la ele numai cât v-
om menţiona doar:
 La Opţiuni veţi găsi Setarea limbii unde veţi alege Română, Engleză sau Rusă.
 La Fişier / Fişier Nou sunt 2 variante
Fereastră nouă şi
Program nou.
 Comenzile simple pas, salt şi rotire pot fi culese, inserate prin Comenzi/Comenzi simple
cum şi prin butoanele respective din partea de sus a ferestrei de program.

Comenzile executantului.

Centrul Noilor Tehnologii Informaţionale ianuarie 2000


Pagina 3 din 6
Noţiuni despre algoritmi. Executanţii

Cangurul poate executa următoarele comenzi simple:


PAS – se mişcă în direcţia în care se “uită” cu un pătrăţel şi trage o linie pe unde sa mişcat.
SALT – se mişcă în direcţia în care se “uită” cu un pătrăţel dar nu trage linie pe unde sa
mişcat.
ROTIRE – se roteşte cu 900 după acele de ceasornic.

Pentru a scrie algoritmi mai complicaţi se folosesc Procedurile, care pot fi scrise cu ajutorul
cuvântului rezervat PROCEDURA <nume>, şi respectiv apelat cu EXECUTĂ<nume>.
De asemenea sunt 2 instrucţiuni de ciclu
REPETĂ N ORI
Secvenţă
SFIRSITUL REPETARII şi
CIT <condiţie>
Secvenţă
SFIRSITUL CICLULUI
unde în calitate de condiţie Se folosesc:
E_MARGINE,
NU E_MARGINE,
E_LINIE,
NU E_LINIE.

Se poate folosi şi instrucţiunea de ramificare


DACĂ <condiţie> ATUNCI
<instrucţiune>
ALTFEL
<instrucţiune>.

Exemple de algoritmi:
Algoritm liniar Algoritm ciclic Algoritm de Algoritm combinat
ramificare
[ [ [ [
PAS CIT NU DACA E_LINIE CIT NU
PAS E_MARGINE ATUNCI E_MARGINE
SALT PAS ROTIRE PAS
ROTIRE SFIRSITUL ALTFEL DACA E_LINIE
PAS CICLULUI PAS ATUNCI
SALT ] ] ROTIRE
] SFIRSITUL
CICLULUI
]
Acesta este un
exemplu de algoritm
ce se ciclează.

8. Modul de lucru cu executantul Furnica.

Instalarea
Copiaţi fişierul Firnica_ins pe winchester.
Centrul Noilor Tehnologii Informaţionale ianuarie 2000
Pagina 4 din 6
Noţiuni despre algoritmi. Executanţii

 Fixăm şoricelul la fişierul Firnica_ins


 Tastaţi butonul stâng al şoricelului de 2 ori.
 Tastaţi OK.
 Alegeţi calea, unde doriţi să se dezarhiveze, dacă nu doriţi pe cea propusă (C:\Program
Files\Furnica).
 Tastaţi Unzip.
 Tastaţi OK.
 Închideţi fereastra.
Programele sau dezarhivat şi automat se lansează programul Furnica.
Dacă dorim să lucrăm scriem algoritmul, dacă nu părăsim programul.
Pentru al apela altă dată e mai comod de făcut o comandă scurtă pe masa de lucru.

În partea de sus sunt desenate 8 butoane sub care se scrie funcţia lui când aducem cursorul la
el.

Programul conţine de asemenea şi un meniu principal, unde sunt indicate:


Fişier / Program / Configurare / Ajutor.

Comenzile executantului.
Menţionăm că:
INCEPUT - indica începutul programului
SFIRSIT - indica sfârşitul programului

Furnica poate executa următoarele comenzi simple:


SUS - mişcă furnica cu o poziţie in sus
JOS - mişcă furnica cu o poziţie in jos
DREAPTA - mişcă furnica cu o poziţie in dreapta
STINGA - mişcă furnica cu o poziţie in stânga

Comenzile compuse:

REPETA <N> ORI


...
SFIRSIT REPETA - este structura repetitiva ce repeta un anumit set de instrucţiuni de <n>
ori
CIT <condiţie> EXECUTA
...
SFIRSIT CIT - este o structura repetitiva ce repeta un anumit set de instrucţiuni până când
<CONDITIE> va fi adevărată

DACA <condiţie> ATUNCI <instructiune1> ALTFEL <instructiune2>


- este instrucţiunea de ramificator ce va îndeplini <intructiune1> in caz când <condiţie> este
adevărată şi <intructiune2> in caz când <condiţie> este falsă.
<condiţie> - poate avea valorile E_MARGINE sau NU_E_MARGINE

PROCEDURA <nume>
...
SFIRSIT PROCEDURA

Centrul Noilor Tehnologii Informaţionale ianuarie 2000


Pagina 5 din 6
Noţiuni despre algoritmi. Executanţii

- in acest fel se declara procedurile. Ele sunt plasate întotdeauna înaintea instrucţiunii început.
In corpul procedurii pot intra toate instrucţiunile descrise mai sus, cit si alte proceduri. Apelul
procedurii se face in program scriind doar numele ei.
<nume> - poate conţine atât litere cit si cifre, excluzând semnele speciale, spatiile şi cuvinte
rezervate.

La editarea algoritmului se poate de folosit:

Textul selectat + CTRL + INS = Copierea textului selectat in memorie


Textul selectat + SHIFT + INS = Plasarea textului din memorie
Textul selectat + SHIFT + DEL = Ştergerea textului selectat + plasarea lui in memorie

Exemple de algoritmi:
Algoritm liniar Algoritm ciclic
INCEPUT INCEPUT
DREAPTA CIT NU_E_MARGINE EXECUTA
DREAPTA DREAPTA
DREAPTA SFIRSIT CIT
JOS SFIRSIT
JOS
STINGA
SUS
SFIRSIT

Algoritm de ramificare
INCEPUT
DACA E_MARGINE ATUNCI JOS ALTFEL DREAPTA
SFIRSIT
Atenţie: Dacă …. Se scrie într-un singur rând.

Algoritm combinat
INCEPUT
REPETA 5 ORI
DACA E_MARGINE ATUNCI JOS ALTFEL DREAPTA
SFIRSIT REPETA
SFIRSIT

Cu ajutorul butonului Setarea poziţiei se poate de schimbat poziţia iniţială a furnicii, de unde
se va începe îndeplinirea algoritmului.
Pentru a scrie careva simboluri pe câmp folosim butonul editare caracterul, unde scriem
simbolul necesar, care se înscrie în câmp tastând butonul stâng al şoricelului în locul dorit.
Pentru a şterge simbolurile folosim butonul Şterge şi procedăm ca la scriere.

Notă: Fiţi atent când lucraţi cu mutarea simbolurilor. Să nu duceţi simbolul la margine, de
unde doriţi sa-l mutaţi. V-a fi imposibil.
Executanţii au fost creaţi la Şcolile de vară la Informatică în anii 1998 şi 1999 de
către elevii Stas Oaserele şi Andrei Boboc, care studiază respectiv la Colegiul Republican de
informatică şi la Liceul “Iulia Hajdeu”.

Centrul Noilor Tehnologii Informaţionale ianuarie 2000


Pagina 6 din 6

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