Documente Academic
Documente Profesional
Documente Cultură
10 Disciplina Informatica
PARTEA TEORETICĂ
Instrucţiunea de atribuire are forma:
<Variabilă> := <Expresie>
Execuţia unei instrucţiuni de atribuire presupune:
a) evaluarea expresiei din partea dreaptă;
b) atribuirea valorii obţinute variabilei din partea stîngă.
Variabila și rezultatul evaluării expresiei sînt compatibile din punctul de vedere al atribuirii dacă este adevărată
una din următoarele afi rmaţii:
1) variabila și rezultatul evaluării sînt de tipuri identice;
2) tipul rezultatului este un subdomeniu al tipului variabilei;
3) ambele tipuri sînt subdomenii ale aceluiași tip, iar rezultatul este în subdomeniul variabilei;
4) variabila este de tip real, iar rezultatul – de tip integer sau un subdomeniu al acestuia.
Procedura este un subalgoritm scris în limbaj de programare ce poate fi apelat din mai multe puncte ale
unui program. Fiecare procedură are un nume, de exemplu, readln, writeln, CitireDate, A15 ș.a.m.d. Limbajul
PASCAL include un set de proceduri predefi nite, cunoscute oricărui program: read, readln, write, writeln, get,
put, new etc. În completare, programatorul poate defi ni proceduri proprii.
Instrucţiunea apel de procedură lansează în execuţie procedura cu numele specifi cat. Sintaxa instrucţiunii date
este:
<Apel procedură> ::= <Nume procedură> [ <Listă parametri actuali>]
<Nume procedură> ::= <Identificator>
<Listă parametri actuali> ::= (<Parametru actual> {, <Parametru actual>})
Executarea instrucţiuni cu efect nul nu are niciun efect asupra variabilelor programului. Sintaxa
instrucţiunii în studiu este: <Instrucţiunea de efect nul> ::= Prin urmare în textul unui program instrucţiunea de
efect nul nu este reprezentată prin nimic. Întrucît instrucţiunile unui program sînt despărţite între ele prin
delimitatorul “;”, prezenţa instrucţiunii de efect nul este marcată de apariţia acestui delimitator.
Instrucţiunea de ramificare simplă if, în funcţie de valoarea unei expresii de tip boolean, decide fl uxul
execuţiei. Sintaxa instrucţiunii este:
<Instrucţiune if> ::= if <Expresie booleană> then <Instrucţiune>
[else <Instrucţiune>]
Sarcini practice:
2. Precizați pentru care valori ale variabilei j programul P2 va derula fără erori?
Program p2;
var i : -20..20;
j : integer;
begin
write(’j=’);
readln(j);
i:=j+25;
writeln(’i=’,i);
end.
Răspuns:________________
4. Ce valori va lua variabila x după executarea fiecăreia dintre instrucțiunile ce urmează? Se consideră că
a=18, b=-15 și p=true.
a) if a>b then x:=1 else x:=4; x=________
b) if p then x:=32 else x:=638; x=________
c) if (a<b) and p then x:=-1 else x:=1; x=________
d) if not (a>b) then x:=19 else x:=-2; x=________
5. Elaborați un program care calculează valorile uneia dintre funcțiile:
y=
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
6. Scrieți un program care transformă numerele zecimale 5, 50, 500, citite de la tastatură, în cifre romane
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________