Documente Academic
Documente Profesional
Documente Cultură
9 Disciplina Informatica
FIŞĂ DE LUCRU (Varianta 1)
Expresii. Evaluarea expresiilor. Programarea expresiilor
PARTEA TEORETICĂ
Formulele pentru calculul unor valori se reprezintă în PASCAL prin expresii. Acestea sunt formate din
operanzi (constante, variabile, referinţe de funcţii) și operatori (simbolurile operaţiilor).
Prin evaluarea unei expresii se înţelege calculul valorii ei. Rezultatul furnizat depinde de valorile
operanzilor și de operatorii care acţionează asupra acestora. Regulile de evaluare a unei expresii sunt cele
obișnuite în matematică:
– operaţiile se efectuează conform priorităţii operatorilor;
– în cazul priorităţilor egale, operaţiile se efectuează de la stânga spre dreapta;
– mai întâi se calculează expresiile dintre paranteze.
În funcţie de mulţimea valorilor pe care le poate lua, fiecare expresie se asociază cu un anumit tip de date.
Conform conceptului de dată realizat în limbajul PASCAL, tipul expresiei derivă (rezultă) din tipul operanzilor și
operatorilor care acţionează asupra acestora. Prin urmare tipul unei expresii poate fi dedus fără a calcula valoarea
ei.
În funcţie de tipul expresiei, distingem:
– expresii aritmetice (integer sau real);
– expresii ordinale (integer, boolean, char, enumerare);
– expresii booleene (boolean).
De obicei, expresiile aritmetice se utilizează în calcule (instrucţiunea de atribuire), expresiile ordinale – în
instrucţiunile case și for, iar expresiile booleene – în instrucţiunile if, repeat și while.
Sarcini practice:
1. Scrieți conform regulilor limbajului Pascal expresiile:
a2 + b2 = |z| > 5 & x =
(x + y)2 = cos 2x =
ex – x3 = =
a) 2*x + y – z = _______________________________________________________________________
b) (x + z) + y*z = _____________________________________________________________________
c) x*y > y*z = ________________________________________________________________________
d) not (x + y - z) = _____________________________________________________________________
4. Elaborați un program care evaluează expresiile a) și c) din exercițiul 3. Valorile curente ale variabilelor
reale x, y și z se citesc de la tastatură.
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
5. În prezența declarațiilor:
var x, y : real;
i, j : integer;
p,q : boolean;
r : char;
s : (A, B, C, D, E, F, G, H)
aflaţi tipul următoarelor expresii:
a) i mod 4
b) x +y / (x – y)
c) ord(B)
6. Elaborați un program care evaluează expresiile din ex.5, luând în considerație că variabilele x=3 și y=4
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
Expresia Rezultatul
a) i mod 4
b) x +y / (x – y)
c) ord(r)
d) chr(66)
e) sqr(3) – sqrt(16)
f) pred(6) > succ(4)
g) not(i+j>0) or q
PARTEA TEORETICĂ
Formulele pentru calculul unor valori se reprezintă în PASCAL prin expresii. Acestea sunt formate din
operanzi (constante, variabile, referinţe de funcţii) și operatori (simbolurile operaţiilor).
Prin evaluarea unei expresii se înţelege calculul valorii ei. Rezultatul furnizat depinde de valorile
operanzilor și de operatorii care acţionează asupra acestora. Regulile de evaluare a unei expresii sunt cele
obișnuite în matematică:
– operaţiile se efectuează conform priorităţii operatorilor;
– în cazul priorităţilor egale, operaţiile se efectuează de la stânga spre dreapta;
– mai întâi se calculează expresiile dintre paranteze.
În funcţie de mulţimea valorilor pe care le poate lua, fiecare expresie se asociază cu un anumit tip de date.
Conform conceptului de dată realizat în limbajul PASCAL, tipul expresiei derivă (rezultă) din tipul operanzilor și
operatorilor care acţionează asupra acestora. Prin urmare tipul unei expresii poate fi dedus fără a calcula valoarea
ei.
În funcţie de tipul expresiei, distingem:
– expresii aritmetice (integer sau real);
– expresii ordinale (integer, boolean, char, enumerare);
– expresii booleene (boolean).
De obicei, expresiile aritmetice se utilizează în calcule (instrucţiunea de atribuire), expresiile ordinale – în
instrucţiunile case și for, iar expresiile booleene – în instrucţiunile if, repeat și while.
Sarcini practice:
1. Scrieți conform regulilor limbajului Pascal expresiile:
2a2 + b = |a| < 5 V b =
(m + n)2 = cos x + sin y =
x4- ex = 2xy+3xz =
a) 4*x - y + z = _______________________________________________________________________
b) (z - x) + y*z = _____________________________________________________________________
c) x*y < x*z = ________________________________________________________________________
d) not (2*x - y) = _____________________________________________________________________
4. Elaborați un program care evaluează expresiile b) și d) din exercițiul 3. Valorile curente ale variabilelor
reale x, y și z se citesc de la tastatură.
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
5. În prezența declarațiilor:
var x, y : real;
i, j : integer;
p,q : boolean;
r : char;
s : (A, B, C, D, E, F, G, H)
aflaţi tipul următoarelor expresii:
h) j div 3
6. Elaborați un program care evaluează expresiile din ex.5, luând în considerație că variabilele x=3 și y=4
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
Expresia Rezultatul
a) j div 3
b) x – y / (x + y)
c) ord(F)
d) chr(65)
e) sqr(4) + sqrt(9)
f) pred(4) > succ(8)
g) not(i+j<0) and q