Jump to content

[PASCAL] Structura unui program.


TEM
 Share

Recommended Posts

Cele trei parti principale ale unui program PASCAL sunt: antetul (header-ul) programului, declaratiile in care se descriu obiectele asupra carora vor avea loc prelucrarile (in cadrul programului pe care il analizam, vom considera numai declararea variabilelor) si partea principala a programului in care se scriu instructiunile (ansamblul operatiilor ce urmeaza a fi executate).

Pentru a intelege aceasta structura, deloc complicata, sa analizam fara graba un program (Borland) PASCAL care aduna 2 numere. Este vorba de un program care declara variabile, citeste valorile acestora, efectueaza un calcul simplu si afiseaza rezultatul.

 

 

PROGRAM adunare; {numele programului}
VAR a,b,S :real; {declararea variabilelor}
BEGIN
write('Introduceti prima cifra: '); readln(a);
write('Introduceti a 2-a cifra: '); readln(b); {citirea valorilor variabilelor}
S := a + b; {calculul}
writeln(S); {afisarea rezultatului}
END. {end-ul final}

 

Cand programul va fi rulat se va afisa:

 

Introduceti prima cifra:  [a]
Introduceti a 2-a cifra: [b]
a + b

 

Ce am pus intre [] sunt variabilele care trebuie sa le introducem.

Header-ul (Antetul)


Prima linie contine antetul programului. Program este un cuvant rezervat cu care incepe (optional) un program (Borland) PASCAL. El este urmat de numele programului: volumul si de simbolul punct si virgula. Simbolul punct si virgula (" ; ") este un separator de instructiuni. Este strict necesar (cu mici exceptii despre care vom vorbi mai tarziu).

 

Note:

 

 

 

Orice nume pe care il folositi intr-un program pascal se numeste identificator. El desemneaza: etichete, variabile, constante, tipuri de date, proceduri, functii, programe. Un identificator este o secventa de litere, cifre sau liniute de subliniere, primul caracter fiind obligatoriu o litera sau o liniuta de subliniere ( _ ).

Cuvintele program, begin, end, var - se numesc cuvinte cheie sau cuvinte rezervate deoarece sunt foarte importante si sunt definite sa aiba anumite semnificatii.

 

Comment-uri

Dupa cum ati vazut in micul nostru exemplu de mai sus am pus niste explicatii de-a lungul codului programului.Ele se numesc 'comment-uri' si sunt incadrate de acolade ( { } )

Aceste comentarii vor fi ignorate de compilator ! (sunt folosite doar pentru a mari inteligibilitatea unui program)

Variabilele

Declararea variabilelor incepe cu , cuvantul rezervat 'var'.
Orice variabila trebuie sa aiba un nume !

Programul nostru ('suma') foloseste 3 variabile: a,b,S identificate pe al 2-lea rand, dupa 'PROGRAM + nume_program;' [faza de analiza].


Gruparea variabilelor:
Variabile de:

* intrare -
a -> primul numar
b -> al 2-lea numar

* iesire -
S -> suma numerelor


Tipurile de date


In pascal exista doua tipuri (simple) de date pentru variabile numerice: intregi si reale.

Variabilele intregi pot lua valori numai numere intregi (pozitive sau negative) ca: 1,0,4,620,-50.

 

 

Un calculator poate reprezenta numai o submultime finita de intregi. Un intreg poate fi reprezentat in memoria unui calculator numai daca valoarea sa apartine intervalului (-maxint-1, maxint), unde maxint este o constanta predefinita. In implementarile uzuale ale limbajului pascal maxint are valoarea 32767.
Daca o variabila pascal va avea o valoare fractionara sau o valoare mai mare decat maxint (maxlongint), variabila trebuie sa fie de tip real.

 

Intr-un program pascal tipul fiecarei variabile utilizate trebuie sa fie declarat. Omiterea declararii unei variabile folosite in partea principala a programului va genera o eroare. In programul pe care-l analizam , declararea variabilelor s-a facut utilizand enuntul:

 

 

VAR a,b,S :real;

 

Odata intalnit acest enunt, compilatorul afla ca toate cele 3 variabile sunt de tip real.

BEGIN si END

 

 

* Daca nu exista cel putin un enunt intre BEGIN si END programul nu va face nimic ( PROGRAMUL VA RULA ! dar nu va face nimic );
* Cuvintele cheie BEGIN si END sunt exemple de delimitatori (cuvinte sau simboluri care delimiteaza inceputul si sfarsitul unor zone ale programului);
* Spre deosebire de separatori (virgula, punct si virgula, etc), delimitatorii se gasesc in pereche. Exemplu: BEGIN-END.

 

 

Write/Writeln

Enunturile write/writeln sunt utilizate pentru afisarea pe un suport de informatie (de regula monitorul) a rezultatelor obtinute in urma prelucrarilor, a mesajelor catre utilizator etc.

Ori de cate ori se va executa un enunt write/writeln, calculatorul va afisa ad-litteram tot ceea ce este inclus intre apostrofuri, precum si valorile oricarei variabile sau expresii aflate intre paranteze. Pentru separarea elementelor din corpul instructiunii se folosesc virgulele.

Diferenta dintre write si writeln:

* cand folosim 'writeln' programul va afisa ce este in paranteza si va trece pe randul urmator !
* pe de alta parte , cand folosim 'write' se va afisa textul dar nu se va mai trece pe randul urmator !


Read/Readln

In momentul in care s-a executat instructiunea:

 

 

readln(a);

 

 

alculatorul va astepta sa se introduca un numar care va fi atribuit variabilei 'a'.
Aceste valori pot fi tastate pe o singura linie, cu spatii intre ele, sau cate una pe linie.

Diferenta dintre read si readln este asemanatoare cu cea de la write/writeln.


Atribuirea
Atribuirea variabilelor valori:

 

 

S := a+b;
Edited by Cdorsu
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.