Documente Academic
Documente Profesional
Documente Cultură
Test C Model2
Test C Model2
Test la INFORMATICĂ
1. Variabila x este de tip real. Scrieţi o expresie C/C++ care are valoarea 1 dacă şi numai dacă
numărul real memorat în variabila x aparţine intervalului [1,3] [4,7]. (4p.)
2. Variabila x este de tip natural şi memorează un număr cu exact 5 cifre. Scrieţi o secvenţă
C/C++ care interschimbă prima şi ultima cifră din numărul memorat în variabila x. Exemplu:
pentru x=12345, după executarea secvenţei x va deveni 52341. (4p.)
1. Se spune despre numărul natural n (n>1) că este olimpic dacă poate fi scris ca sumă de două
numere naturale distincte cu aceeaşi sumă a cifrelor. Scrieţi un program C/C++ care citeşte de la
tastatură două numere naturale a şi b (a<b) şi afişează numerele olimpice din intervalul [a,b].
Dacă nu există niciun număr olimpic în acest interval, programul va afişa pe ecran valoarea 0.
(6p.)
2. Se spune despre numărul natural n (n>1) că este norocos dacă atât n, cât şi n+n’ sunt
numere prime, unde n’ este inversul numărului n. Scrieţi un program C/C++ care citeşte de la
tastatură două numere naturale a şi b (a<b) şi afişează numerele norocoase din intervalul (a,b).
De exemplu, 229 este număr norocos deoarece atât el, cât şi numărul rezultat prin adunarea
inversului (1221) sunt prime. (6p.)
3. Considerăm două stive, s1 şi s2, ambele vide. Funcţia push(s,x) inserează elementul x în
vârful stivei s, iar funcţia pop(s) returnează elementul din vârful stivei s şi îl elimină pe acesta
din stivă. Care va fi suma elementelor din stiva s1 în urma executării următoarei secvenţe de
operaţii: push(s1,5); push(s2,6); push(s1,7); push(s2,8); pop(s1); pop(s2);
push(s1,9); push(s2,10); push(s1,pop(s2));? (6p.)
4. În critpografie, cifrul lui Cezar este una dintre cele mai simple şi mai cunoscute tehnici de
criptare. Este un tip de cifru al substituţiei, în care fiecare literă din textul iniţial este înlocuită
cu o literă care se află la o distanţă fixă faţă de cea înlocuită. De exemplu, la o deplasare cu 4
poziţii, a devine e, c devine g, z devine d, etc. Scrieţi un program C/C++ care citeşte de la
tastatură un numărul natural n (numărul deplasărilor, n<20) şi un text cu maxim 255 de
caractere (litere mici ale alfabetului englez şi spaţii) şi afişează pe ecran textul astfel criptat.
Exemplu: pentru n=3 şi textul ana are mere, programul va afişa dqd duh phuh. (6p.)
5. Scrieţi un program C/C++ care citeşte de la tastatură un număr natural n (2<n<10) şi n*n
numere naturale, reprezentând elementele unei matrici pătratice, cu n linii şi n coloane.
Programul afişează pe ecran valoarea 1 dacă elementele situate sub diagonala principală sunt fie
toate pare, fie toate impare, respectiv 0 în caz contrar. Exemplu: pentru n=4 şi matricea de mai
jos, programul va afişa 1.
1 2 3 4
3 6 2 8
5 7 2 4
9 3 5 8
(6p.)
SUBIECTUL al III-lea (30 de puncte)
1. În câte dintre permutările mulţimii {I,N,F,O} pe prima poziţie va sta o vocală? (4p.)
la 1 la 9, 6 3 7 4 8 5 1 2 9
9 5 2 1 7 6 3 4 8
fiecare coloană a matricei conţine o singură dată toate cifrele
7 6 4 5 3 2 8 9 1
de la 1 la 9, 3 2 1 9 6 8 7 5 4
fiecare dintre cele 9 submatrici, evidenţiate în exemplul 8 9 5 7 1 4 6 3 2
alăturat prin linii îngroşate, conţine o singură dată toate
cifrele de la 1 la 9.
2 7 1 6 4 8 3
b) Descrieţi, în limbaj natural, o metodă de rezolvare a unui puzzle
8 3 5 2 1 4 6
SUDOKU. (6p.) 4 5 8 7 2 9 1
6 9 4 2 5 3 8 7
c) Scrieţi în C/C++ o funcţie care primeşte ca argument o matrice cu 7 8 4 1 6 2 5
9 x 9 căsuţe, reprezentând un puzzle SUDOKU, în care poziţiile 5 2 6 7 8 4 3 9
3 4 1 9 2 6 8
necompletate sunt egale cu 0. Funcţia afişează pe ecran o matrice 9
9 5 8 7 4 6 3 1 2
x 9 drept soluţie a puzzle-ului, câte o linie a matricei pe o linie a 1 2 6 8 5 9 7
ecranului, cu spaţii între elementele fiecărei linii. Dacă puzzle-ul nu
are nicio soluţie, funcţia va afişa pe ecran valoarea 0. (10p.)
BAREM DE CORECTARE ŞI NOTARE
2 7 1 9 6 4 8 5 3
8 3 9 5 2 1 7 4 6
4 6 5 3 8 7 2 9 1
6 9 4 2 5 3 1 8 7
7 8 3 4 1 9 6 2 5
5 1 2 6 7 8 4 3 9
3 4 7 1 9 2 5 6 8
9 5 8 7 4 6 3 1 2
1 2 6 8 3 5 9 7 4