Descrierea algoritmilor folosind pseudocodul

Pseudocodul reprezintă o notaţie textuală ce permite exprimarea logicii programelor într-un mod oarecum formalizat fără a fi necesare totuşi reguli de sintaxă riguroase ca în limbajele de programare.

În principiu, în orice pseudocod se folosesc două tipuri de propoziţii:

a) propoziţii standard prin care se exprimă operaţii ce pot fi transcrise direct într-un limbaj de programare, fiecare propoziţie începând cu un verb care exprimă cât mai fidel operaţia descrisă;

b) propoziţii nestandard prin care se exprimă operaţii ce urmează a fi detaliate ulterior, de exemplu: * se citesc datele de intrare * se afişează meniul pe ecran unde caracterul și * este folosită pentru a marca începutul propoziţiilor de acest tip.

Comanda de citire Citirea constă în transferul de valori de pe mediul de intrare în locaţiile de memorie ale calculatorului şi are sintaxa:

Pseudocod: citeste lista_de_variabile

C: int scanf(control, par1, par2, …);

C++: cin>>var1>>var2…;

Comanda de scriere. Scrierea sau afişarea constă în transferul valorii unor variabile din memorie pe mediul de ieşire, sau valoarea unor expresii şi are forma:

Pseudocod: scrie lista_de_expresii

C: int printf(control, par1, par2, …);

C++: cout<<var1<<var2…;

Comanda de atribuire. Operaţia de atribuire constă în calculul unei expresii şi asocierea acestei valori unei variabile, conform sintaxei:

Pseudocod: variabila și expresie

C/C++: variabila = expresie;

Secvenţa. Secvenţa desemnează un grup de comenzi scrise una după alta, executate secvenţial şi delimitate grafic.

 

Pseudocod:

comanda 1

comanda 2

comanda n

C/C++:

{ comanda 1

comanda 2

comanda n

}

 

Decizia este o comanda ce specifică alegerea pentru execuţie a uneia dintre două alternative.

Pseudocod:
dacă condiția atunci

secvența1;

altfel

secvența2
C/C++: if (conditie) secventa1;

else secventa2;

Selecţia reprezintă o extindere a operaţiei de decizie, permiţând alegerea unei variante din mai multe posibile.

Pseudocod:

alege expresie dintre

c 1 : secventa1

c 2 : secventa2

………..

c n : secventan

rest: secventan+1
C/C++: switch (expresie) {

case c1: secventa1; <break;>

case c2: secventa2; <break;>

……

case cn: secventan; <break;>

<default: secventan+1;>

}

 

Modul de execuţie este următorul:

  •  se evaluează expresia;
  •  se caută eticheta având valoarea egală cu valoarea expresiei şi este selectată secvenţa corespunzătoare;
  • dacă nici o etichetă nu are valoarea expresiei, atunci este selectată secventan+1;
  • se execută secvenţa selectată după care se trece la comanda următoare selecţiei.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s