Scheme logice: Introducere (III)


În prima şi a doua parte am văzut scheme logice atât de simple încât totul decurgea de sus în jos, liniar. Chiar dacă am avut blocuri decizionale, ramurile lor o luau tot în jos, deci lectura se făcea într-o singură direcţie. Dar nu este acesta cazul întotdeauna. Să luăm ceva foarte simplu: afişarea numerelor de la 1 la 10 (aici schema logică sau mai jos, în stânga). Am putea să punem 10 blocuri de scriere, dar nu e eficient: dacă avem de scris 100 de numere, nu 10? Să vedem cum facem…

imagine

Ne vom folosi de o variabilă i care va parcurge pe rând valorile de la 1 la 10. Pentru aceasta o iniţializăm cu 1, de unde desigur trebuie să pornim. Afişăm valoarea (adică 1) şi apoi creştem i cu 1 – vom avea 2. Testăm dacă i<=10, adică dacă 2<=10 – în acest pas. Da,e  mai mic, deci o luăm în sus pe ramura da, şi ajungem din nou la scriere: afişăm valoarea (adică 2) şi apoi creştem i cu 1 – vom avea 3. Testăm dacă i<=10, adică dacă 3<=10 – în acest pas. Da,e mai mic, deci o luăm în sus pe ramura da, şi ajungem din nou la scriere: afişăm valoarea (adică 3) şi apoi creştem i cu 1 – vom avea 3. Testăm dacă i<=10, adică dacă 3<=10 – în acest pas. Da,e mai mic, deci o luăm în sus pe ramura da, şi ajungem din nou la scriere… şi tot aşa până când i ajunge să aibă valoarea 10: se afişează 10, se creşte i la 11, caz în care din blocul decizional nu se mai merge pe ramura da ci pe ramura nu (pentru că 11 nu este mai mic sau egal cu 10) şi se termină totul. Recitiţi cu atenţie şi încercaţi să urmăriţi singuri evoluţia variabilei i. Similar este desigur scrierea numerelor de la 10 la 1, ilustrată în schemă logică aici sau mai sus în dreapta.

Să luăm acum un exemplu puţin mai complicat: vrem să calculăm suma numerelor de la 1 la 10. Aici avem nevoie de o variabilă în care să “strângem” suma. Cum elementul neutru faţă de adunare este zero, vom iniţializa suma (notată mai jos cu s) cu zero. Apoi avem variabila i cu care ne asigurăm că repetăm procesul de adunare de la 1 la 10, adunând chiar i-ul, adică de la 1 la 10, în s. Vedeţi mai jos schema logică (sau aici): parcurgeţi-o cu atenţie, redesenaţi-o mai bine pe o foaie, şi faceţi un mic tabel cu valorile lui s şi i, ca să vedeţi cum evoluează.

imagine

Din nou teme! Dacă daţi click, aflaţi soluţia.


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (3 evaluări, media: 3,67 din 5)
Loading...Loading...

2 comentarii

  1. pety spune:

    Excelenta seria „Scheme logice”.
    Pe cand o serie „Pseudocod”?

  2. Madalin Rinja spune:

    Suma numerelor de la m la n, e de fapt afisarea numerelor de la m la n in cazul de fata. Se poate rezolva?


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *