- What you must know
- How it appears at the exam
- Solved example
- Typical mistakes
- Check yourself
- 4 more sections — in the subscription
What you must know
Tipurile pe care le cer testele
| Pascal | C++ | ce reține | ordinal |
|---|---|---|---|
integer | int | numere întregi | da |
real | float | numere reale | nu |
char | char | un caracter | da |
boolean | bool | true sau false | da |
string | string | un șir de caractere | nu |
(A, B, C) enumerat | enum {A, B, C} | valori numite, în ordine | da |
array[1..10] of integer | int B[10] | tablou | nu |
record ... end | struct { ... } | componente de tipuri diferite | nu |
Tipurile ordinale au valori numărabile, fiecare cu un predecesor și un succesor; pe ele funcționează ord, chr, succ, pred și instrucțiunea for. Tipul enumerat este ordinal, iar valorile lui au indici de la 0: în type xx = (A, B, C, D, E), și .
Identificatori și cuvinte-cheie
Un identificator începe cu literă sau liniuță de subliniere și conține litere, cifre și liniuțe: abc și a1b2 sunt identificatori, 3a2b nu este element al limbajului, fiindcă începe cu o cifră. case, for, type (Pascal), switch, typedef (C++) sunt cuvinte-cheie și nu pot fi folosite ca nume de variabile.
Operatori și ordinea lor
- aritmetici:
+,-,*, iar împărțirea are două forme:/dă un rezultat real în ambele limbaje,divșimod(Pascal),/și%între întregi (C++) dau câtul și restul întreg divșimodcer operanzi întregi:y mod tcuyreal este o greșeală de sintaxă, la fel cay % tîn C++- restul păstrează semnul deîmpărțitului:
- de comparare:
=,<>,<,<=,>,>=în Pascal;==,!=,<,<=,>,>=în C++ - logici:
not,and,orîn Pascal;!,&&,||în C++ - ordinea: funcțiile și parantezele, apoi
not, apoi*,/,div,mod,and, apoi+,-,or, iar la urmă comparările
Atribuire și comparare
În Pascal atribuirea este :=, iar = compară: c = chr(ord(c) - 2) nu schimbă pe c, ci dă o valoare booleană. În C++ atribuirea este =, iar compararea ==, și o atribuire are ea însăși o valoare, de tipul variabilei din stânga.
Funcții predefiniteabs, sqr (Pascal) sau pow (C++), sqrt, trunc, round, ord, chr, length. trunc taie partea fracționară fără rotunjire: ; în C++ același efect îl dă conversia int(...). Codul ASCII al literei A este 65, deci ord('D') = 68.
Cum scrii o expresie matematică în cod
Treci fracția pe un rând, cu paranteze la numărător și la numitor, și înlocuiești fiecare simbol cu funcția lui: devine în Pascal și în C++. Fiecare funcție și fiecare pereche de paranteze are punctul ei în barem.
Afișarea cu format
În Pascal write(y:0:2) afișează un număr real cu două zecimale, iar write(x:5) îl aliniază pe cinci poziții. În C++ aceleași lucruri se fac cu setw(5), fixed și setprecision(2).
The rest of the lesson is in the subscription
The real ANCE items where the topic appears, the step-by-step solved example, the typical mistakes and the 7 check questions open with the subscription. “What you must know” stays free.
The diagnostic on real ANCE items stays free: 20 minutes — where you lose points, 10–15 more minutes — an estimated grade for each exam. All it takes is an account, no card.
A whole month is 299 lei: ≈ 10 lei per evening of work. No automatic renewal.
BAC · real profile · practice test no. 1 · 2026Nota10
Tipuri de date și expresii · 8 pts
Fie date definițiile de tipuri și declarațiile de variabile și valorile lor (limbajul Pascal, respectiv C++):
Limbajul Pascal
Var x : (Rosu, Verde, Galben, Albastru, Gri, Orange );
b : boolean;
c : char;
y : real;
q : integer;
x := Gri;
b := x > Verde;
c := 'D';
y := 11;
q := 3;Limbajul C++
enum {Rosu, Verde, Galben, Albastru, Gri, Orange} x = Gri;
bool b = x > Verde;
char c = 'D';
float y = 11;
int q = 3;a) Completați, pentru limbajul pe care îl utilizați, valorile și tipurile corespunzătoare expresiilor: y / 4; c = chr(ord(c) - 2) (Pascal) / c = c - 2 (C++); ord(x) mod q (Pascal) / x % q (C++); ord(b) - ord(Albastru) (Pascal) / b - Albastru (C++).