Vous êtes sur la page 1sur 24

CURS 6

SCHEME LOGICE

DESCRIEREA ALGORITMILOR
Descrierea unui algoritm poate fi fcut: n limbaj natural; Sub form grafic, prin scheme logice sau diagrame de structur; Cu ajutorul tabelelor de decizie, pentru probleme de deciziii multiple; Printr-un limbaj pseudocod (limbaj algoritmic); Printr-un limbaj de programare.

DEFINIII (1)
Schema logic este deci o form de reprezentare a algoritmului i a modului de lucru al acestuia sub form grafic, folosind diferite simboluri grafice. Simbolurile folosite n realizarea schemelor logice sunt practic figuri geometrice, crora prin convenie li s-a atribuit un nume, o funcie. Acestea sunt legate ntre ele prin sgei (arce orientate), conducnd astfel de la primul pas al algoritmului, pn la sfritul lui.

DEFINIII (2)
Figurile geometrice folosite la realizarea schemelor logice se numesc simboluri sau blocuri. n fiecare bloc se nscriu instruciuni care precizeaz ce aciuni, ce prelucrri trebuie efectuate ntr-o anumit etap a procesului de calcul. Ele se deosebesc astfel unele de altele, funcie de tipul operaiilor pe care le indic.

TIPURI DE BLOCURI (1)


START-Blocul de nceput - indic nceputul desrierii algoritmului cu ajutorul shemei logice. Acest bloc nu are nici o intrare, ci numai o ieire(din el pleac un arc). STOP-Blocul de sfrit indic sfritul (ncheierea) procesului de calcul i a shemei logice. El apare o singur dat, la sfritul schemei logice i conine n interiorul lui de regul unul din cuvintele STOP, SFRIT sau EXIT. El are doar intrri de arce (sgei) i nici o ieire.

TIPURI DE BLOCURI (2)


Blocul de intrare (de citire) indic citirea, de pe suport extern, a datelor de intrare necesare pentru funcionarea algoritmului de calcul i ncrierea lor n locaii de memorie intern. El poart eticheta CITETE, iar lista-intrare conine variabile care precizeaz zonele de memorie intern receptoare. Blocul are o intrare i o ieire, pentru a indica continuarea algoritmului de calcul.

TIPURI DE BLOCURI (3)

Blocul de ieire (de scriere) are acelai format cu cel de intrare, numai c specific datele de ieire, deci cele care trebuie afiate (scrise) pe un suport extern de date, pentru a putea fi ulterior utilizate, cum ar fi : pe ecran, pe imprimant sau pe un suport magnetic. Acestea constituie practic rezultatele prelucrrilor. Acest bloc are eticheta SCRIE, urmat de lista variabilelor cerute.

TIPURI DE BLOCURI (4)


Blocul de prelucrare, da calcul sau de atribuire reprezint grafic o etap a procesului de calcul n care se efectueaz diferite calcule. n acest bloc se calculeaz valoarea unei expresii (e) i se atribuie rezultatul su unei variabile (v). Simbolul = este operator de atribuire i nu operatorul relaional din matematic. De exemplu x=z nseamn c valoarea lui z se mut n variabila x sau, altfel spus, variabilei x i se atribuie valoarea lui z.

TIPURI DE BLOCURI (5)


Blocul de decizie, de ramificaie sau de selecie marcheaz locul unde se decide, se hotrte, funcie de coninutul blocului, pe ce cale se va continua procesul de prelucrare (de calcul). El poate fi un bloc de decizie simplu, cu o intrare i dou ieiri, corespunztoare celor dou valori logice posibile la testarea unei condiii logice (Adevrat sau False), sau cu trei ieiri (mai mic, egal, mai mare). n interiorul blocului se scrie condiia ce se va testa (simpl sau complex, format din mai multe condiii simple legate ntre ele prin operatorii logici AND, OR sau NOT).

TIPURI DE BLOCURI (6)

Bloc de conexiune pe aceeai pagin (conector) este practic un cercule folosit pentru a uni dou blocuri. Un conector se va plasa n acest caz n punctul de ntrerupere al sgeii, iar altul n locul unde trebuie s continue sgeata. Cei doi conectori trebuie s aib nscris acelai coninut (grup de litere sau cifre). Conector de pagin sau bloc de conexiune pe o alt pagin se utilizeaz n acelai mod, dar pentru a continua schema logic pe o alt pagin.

PRINCIPIILE REALIZRII SCHEMELOR LOGICE:


Orice shem logic ncepe cu blocul de START. Dup terminarea activitii unui bloc de prelucrare, ncepe activitatea blocului imediat urmtor. Dup terminarea activitii unui bloc de decizie i ncepe activitatea blocul conectat la ieirea corespunztoare condiiei. n cazul unui bloc simplu, cu dou ieiri, se execut blocul conectat la DA dac este adevrat condiia specificat i blocul conectat la NU n caz contrar. Schema logic i nceteaz activitatea la blocul STOP.

OBSERVAIE:

Pentru descrierea algoritmilor se pot utiliza i alte simboluri, cu condiia ca ele s fie explicate, s fie clar sensul i nelesul lor.

SCHEME LOGICE STRUCTURATE


O schem logic este structurat, dac ndeplinete urmtoarele condiii: Conine un singur bloc de intrare Conine un singur bloc de ieire Conine una din structurile de control, denumite i structuri fundamentale, cum sunt:structura secvenial, structura alternativ, structura repetitiv.

PROGRAMAREA STRUCTURAT

Putem spune astfel c programarea structurat reprezint o modalitate de ordonare a activitii mentale desfurate n scopul realizrii de programe, constituite din structuri fundamentale impuse secvenial, alternativ i repetitiv - n condiiile minimizrii efortului de programare i obinerii unui produs informatic de cea mai bun calitate. Un program este structurat dac are o singur intrare, o singur ieire i conine numai structuri fundamentale admise.

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (LINIAR)


Structura secvenial sau liniar Desemneaz una sau mai multe operaii ce se execut una dup cealalt, n mod liniar (secvenial).

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR(IF-THEN-ELSE (1))


Structura alternativ sau selecia (IF-THEN-ELSE) Structura alternativ desemneaz execuia unei secvene de operaii S1 sau a alteia S2, n funcie de ndeplinirea sau nu a unei condiii.

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (IF-THEN-ELSE (2))


Structurile alternative sunt de mai multe tipuri: Structura IF-THEN-ELSE, selecteaz succesiunea operaiilor ce urmeaz a fi executate, funcie de valoarea logic de adevr sau fals pe care o are n momentul respectiv condiia specificat. Dac este adevrat condiia, se urmeaz calea specificat de ramura Da, altfel se urmeaz calea lui Nu. Structura IF-THEN numit i selecia simpl, este practic o form particular a seleciei IF-THEN-ELSE, n care blocul de pe ramura Nu este vid. n mod asemntor se poate construi i selecia IF-ELSE, cu precizarea c n acest caz blocul vid va fi cel de pe ramura Da.

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (CASE-OF (1))


Structura CASE-OF selecteaz una dintre mai multe ranuri, n funcie de valoarea unui selector. De aceea, structura de acest tip se mai numete selecie multipl. Dac selectorul are o valoare care aparine listei de valori specificat, atunci se execut secvena de operaii precizat pentru valoarea respectiv. Dac selectorul nu are o valoare care s aparin unei liste de valori, atunci se execut aciunea specificat n mod expres pentru acest caz sau nu se execut nimic n caz.

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (CASE-OF (2))

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (ITERAIA)


Structura repetitiv sau iteraia Structura repetitiv indic repetarea unei operaii sau secvene de operaii S, atta timp ct este ndeplinit o anumit condiie. n funcie de momentul n care se face testarea condiiei specificate, structurilor repetitive sunt de mai multe tipuri (WHILE-DO, DO-UNTIL).

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (WHILE-DO)

Condiia C se testeaz anterior execuiei secvenei de comenzi S i atunci avem o structur de tip WHILE-DO

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR (DO-UNTIL)

Condiia se testeaz posterior execuiei secvenei de comenzi S i atunci avem o structur de tip DO-UNTIL

STRUCTURI FUNDAMENTALE ALE ALGORITMILOR


Structura repetitiv mai poate fi analizat i din punct de vedere al numrului de reluri. Din acest punct de vedere, o structur repetitiv poaste fi: Fr numrtor, cci nu se cunoate de la nceput numrul de reluri. Aa este cazul structurii de tip WHILE, indiferent de tipul ei. Cu numrtor, atunci cnd se tie sau se poate calcula automat numrul de reluri. Aa este cazul structurii repetitive de tip DO-FOR

Structura repetitiv cu numrtor DO-FOR funcioneaz astfel:


Se iniializeaz o variabil v cu rol de contor de numrare, cu o valoare iniial (vi); Se verific dac valoarea contorului este mai mic sau egal cu valoarea final (dat), vf . Dac Da, atunci se execut setul de operaii specificat prin S, se incrementeaz (se mrete) valoarea contorului cu pasul specificat prin vr i se trece la o nou comparare a valorii contorului cu valoarea final. Dac Nu, atunci execuia ciclului s-a ncheiat. Prin urmare, la acest tip de structur repetitiv se cunosc i se dau de la nceput: valoarea iniial a contorului de numrare; pasul de cretere a valorii lui, dup fiecare execuie a ciclului. Valoarea final a contorului, care stabilete condiia de ieire din ciclu. Atunci cnd contorul a ajuns la o valoare egal sau mai mare dect cea precizat prin vf, se termin automat execuia ciclului.

Vous aimerez peut-être aussi