Sunteți pe pagina 1din 4

Probă scrisă la INFORMATICĂ

Limbajul C/C++ Tip probă: e


–pentru absolvenţii claselor a XII-a, promoţia 2003–
Sesiunea specială VARIANTA C
 Toţi itemii sunt obligatorii. Fiecare item are un singur răspuns corect.
 Se acordă câte 2 puncte pentru fiecare răspuns corect. Se acordă 10 puncte din oficiu.
 Timpul efectiv de lucru este de 3 ore.
 Pentru fiecare item, completaţi pe foaia de examen răspunsul pe care-l consideraţi corect cu
simbolul O, iar răspunsurile considerate greşite cu simbolul X.
 Atenţie: La întrebările care admit răspunsuri diferite pentru limbajul C respectiv C++, aceste
răspunsuri sunt separate cu ajutorul simbolului /.

Se consideră algoritmul pseudocod 1 citeşte n


alăturat ale cărui linii au fost numerotate 2 k  –10 ; S  0
de la 1 la 10. 3 pentru i=1,n execută
4 citeşte Vi {număr întreg}
Valoarea lui n este un număr natural din 5 dacă Vi<=k atunci Vi0 altfel k  Vi
mulţimea {1, 2, …, 50}. 6 sfârşit pentru
7 pentru i=1,n execută
Următorii 14 itemi se referă la acest 8 dacă Vi>0 atunci SS+1
algoritm. 9 sfârşit pentru
10 scrie S
1. Dacă se citeşte n=9 şi apoi se citesc, în ordine, numere naturale nenule consecutive, atunci se afişează:
a. eroare b. 1 c. 9 d. 0
2. Dacă se citeşte n=8 şi apoi se citesc numai valori egale cu -3, atunci se afişează
a. 8 b. 0 c. eroare d. 1
3. Dacă, după ce se citeşte n, se citesc, în ordine, numerele de la –20 la 20, atunci se afişează:
a. 20 b. 40 c. 41 d. 21
4. Dacă se citeşte n=6 şi apoi se introduc succesiv valorile 8 2 6 10 5 19, atunci se afişează valoarea:
a. 5 b. 3 c. 2 d. 6
5. Dacă valoarea citită pentru n este 12, atunci numărul total de valori citite prin program este:
a. 12 b. 1 c. 6 d. 13
6. Secvenţa de algoritm corespunzătoare liniilor 7-9 realizează:
a. însumarea elementelor nenule din v b. însumarea elementelor strict pozitive din v
c. numărarea elementelor nenule din v d. numărarea elementelor strict pozitive din v
7. Dacă se citeşte n=10 şi apoi se citesc numai valori egale cu 10, atunci se afişează
a. 1 b. 10 c. 9 d. 0
8. Dacă, după ce se citeşte n, se mai citesc, în ordine, toate numerele de la –20 la 20, atunci n era egal cu:
a. 20 b. 41 c. 40 d. 50
9. Datele structurate utilizate în algoritmul dat sunt:
a. două tablouri unidimensionale b. un tablou bidimensional
c. un tablou uni– şi unul bidimensional d. un tablou unidimensional
10. Pentru a obţine un algoritm echivalent, secvenţa corespunzătoare liniilor de la 3 la 9 poate fi înlocuită cu:
a. pentru i=1,n execută b. pentru i=1,n execută
citeşte x {număr întreg} citeşte x {număr întreg}
daca x>k şi x>0 atunci SS+1 dacă x>0 atunci SS+1
dacă x>k atunci kx kx
sfârşit pentru sfârşit pentru
c. pentru i=1,n execută d. pentru i=1,n execută
citeşte x {număr întreg} citeşte x {număr întreg}
dacă x>k atunci kx dacă x>k şi x>0 atunci SS+1
dacă x>0 atunci SS+1 kx
sfârşit pentru sfârşit pentru
Informatică, proba e, Limbajul C/C++ 1 Varianta C
pentru absolvenţii claselor a XII-a, promoţia 2003
11. În limbajul C/C++, instrucţiunea corespunzătoare liniei 1 este:
a. scanf("%d";&n); / cin<<n; b. scanf("%d",&n); / cin>>n;
c. printf("%d",n); / cout<<n; d. printf("%d";n); / cout>>n;
12. O declarare corectă a variabilelor în programul C/C++ corespunzător se realizează prin secvenţa:
a. int v[51],n,k,i,S; b. unsigned int v[51];
int n,k,i,S;
c. typedef int vector[51]; d. typedef int vector[51];
vector vi; unsigned int n; int S,k; vector v; unsigned int n,i,S,k;

13. În limbajul C/C++, instrucţiunea corespunzătoare liniei 8 este:


a. if(V[i]>0) S++; b. if V[i]>0 S=S+1;
c. if(V[i]>0) S:=S+1; d. if [V(i)>0] S++;
14. Structurile repetitive utilizate sunt:
a. o structură repetitivă cu contor b. două tipuri diferite de structuri repetitive
c. două structuri repetitive cu contor succesive d. două structuri repetitive cu contor imbricate

În următorii 6 itemi, variabilele i, a, b, m, n sunt de tip întreg, iar x este de tip real. S-a folosit notaţia [x]
pentru partea întragă a numărului real x şi m%n pentru restul împărţirii lui m la n.
15. 1) ab 2) ma 3)bm 4) im 5) bi
Care sunt instrucţiunile numerotate şi care este ordinea lor de executare pentru ca la sfârşitul executării
secvenţei a să aibă valoarea iniţială a lui b, b valoarea iniţială a lui i, iar i valoarea iniţială a lui a?
a. 2 4 1 3 b. 2 1 5 4 c. 1 2 3 4 d. 2 3 4 5
16. Dacă executarea secvenţei alăturate se încheie exact după repetă xx*10 până când x=[x]
3 atribuiri, atunci valoarea iniţială a variabilei x poate fi:
a. 3000 b. 3.05 c. 0.003 d. 12.9
17. Dacă valoarea iniţială a lui m este 3, atunci la sfârşitul pentru i=1,400 execută
executării secvenţei alăturate, valoarea lui m va fi: dacă m<8 atunci m:=m*2
sfârşit pentru
a. 12 b. 2400 c. 24 d. 4002
18. Variabila întreagă perf trebuie să reţină câte numere naturale pătrate perfecte mai mari decât 0 şi mai
mici sau egale cu n există. Care este expresia cu care trebuie completată atribuirea perf=...?
a. sqrt(n) b. sqr(n) c. sqrt(n)+1 d. sqr(n)+1
19. Dacă a şi b au iniţial valorile 40 şi respectiv 12, la sfârşitul cât timp ab execută
secvenţei alăturate, ele vor avea valorile (respectiv): dacă a>b atunci aa–b
dacă b>a atunci bb-a
sfârşit cât timp
a. 0 şi 4 b. 0 şi 0 c. 4 şi 0 d. 4 şi 4
20. Ştiind că n este un număr natural neprim de două cifre, iar valoarea iniţială a variabilei i este 2, stabiliţi
care dintre secvenţele următoare calculează în variabila a cel mai mare divizor al lui n mai mic decât n?
a. cât timp n%i=0 execută ii+1 b. cât timp n%i>0 execută ii+1
ai a[n/i]
c. repetă ii+1 până când n%i=0 d. cât timp n%i=0 execută n[n/i]
a[n/i] an

Pentru următorii 10 itemi se consideră implicite proprietăţile: între oricare două noduri există cel mult o
muchie; de la orice vârf i la orice vârf j există cel mult un arc; nu există arc/muchie de la un nod la el însuşi.
21. Determinaţi numărul total de grafuri neorientate distincte cu 3 noduri. Două grafuri se consideră
distincte dacă matricele lor de adiacenţă diferă.
a. 64 b. 7 c. 8 d. 4
22. Un graf neorientat are 80 de noduri şi 80 de muchii. Numărul de noduri izolate este cel mult:
a. 67 b. 66 c. 10 d. 90
23. Un arbore are nodurile numerotate de la 1 la 5. Care poate fi vectorul de taţi corespunzător?
a. 2 4 0 3 4 b. 2 1 0 3 4 c. 5 2 4 5 0 d. 5 4 2 1 3
Informatică, proba e, Limbajul C/C++ 2 Varianta C
pentru absolvenţii claselor a XII-a, promoţia 2003
24. Dacă într-un graf neorientat conex cu n noduri, lista de adiacenţă a fiecărui nod este formată din exact
două elemente, atunci în graful respectiv există:
a. exact un ciclu b. cel puţin n/2 cicluri c. cel puţin două cicluri d. exact n/2 cicluri
25. Un arbore are 14 noduri. Atât rădăcina, cât şi fiecare dintre nodurile neterminale are cel puţin 3 descen-
denţi direcţi. Înălţimea maximă a arborelui (numărul maxim de muchii ce leagă rădăcina de o frunză) este:
a. 3 b. 5 c. 13 d. 4
26. Memorarea unui arbore cu ajutorul matricei de adiacenţă a grafului este o metodă:
a. recomandabilă b. neeficientă c. eficientă d. incorectă
27. Stabiliţi care dintre următoarele variante este matricea de
adiacenţă a unui subgraf al grafului din figura alăturată.
a. 0 1 1 b. 0 1 1 c. 0 0 0 d. 0 1 0
1 0 1 1 0 1 0 0 0 1 0 1
1 0 1 1 1 0 0 0 0 0 1 1

28. Se consideră arborele din figura alăturată. Care dintre noduri trebuie ales ca 1 2 3 4
rădăcină astfel încât înălţimea arborelui să fie minimă?
5 6 7
a. 3 b. 7 c. 5 d. 6

29. Se consideră graful din figura alăturată. Determinaţi matricea de adiacenţă


corespunzătoare.
a. 0 1 1 1 b. 0 1 1 1 c. 0 1 0 1 d. 0 1 1 1
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0
1 1 0 1 1 1 0 0 0 1 0 1 1 1 0 1
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

30. Reţeaua străzilor şi a traficului auto din Bucureşti se reprezintă corect cu ajutorul structurii de date:
a. listă liniară b. graf orientat c. graf neorientat d. arbore
31. Două şiruri de caractere notate cu s şi t sunt identice dacă:
a. strcmp(s,t)!=0 b. strlen(s)==strlen(t)
c. strcmp(s,t)==0 d. s[0]==t[0]
32. Este definită o funcţie smax care primeşte două valori întregi prin intermediul a doi parametri şi returnează
suma tuturor cifrelor celor două numere. De exemplu smax(73,608) returnează 24. Stabiliţi în ce mod
se poate apela funcţia smax pentru a determina suma cifrelor unui număr întreg n.
a. nu se poate utiliza b. smax(n,0) c. smax(n,1) d. smax(n, n)

33. Dacă se utilizează metoda backtracking pentru a genera toate permutările de 5 obiecte şi primele 4
permutări generate sunt: 5 4 3 2 1, 5 4 3 1 2, 5 4 2 3 1, 5 4 2 1 3, atunci a 5-a permutare este:
a. 5 4 3 2 1 b. 5 4 1 3 2 c. 5 3 4 2 1 d. 5 4 1 2 3
34. Se cere afişarea tuturor numerelor naturale formate din cifre nenule distincte, numere cu cel puţin 2
cifre şi cel mult 8 cifre. O modalitate eficientă de rezolvare presupune:
a. parcurgerea numerelor din intervalul [10, 108-1]
b. parcurgerea numerelor din intervalul [12, 98.765.432]
c. aplicarea metodei backtracking
d. aplicarea unei formule de calcul matematic

35. Se cere determinarea tuturor modalităţilor de planificare în zile diferite a 4 probe (rezistenţă, aruncarea
suliţei, sărituri, tir) în oricare dintre cele 7 zile dintr-o săptămână. Problema este echivalentă cu generarea:
a. aranjamentelor de 4 obiecte luate câte 7 b. aranjamentelor de 7 obiecte luate câte 4
c. combinărilor de 4 obiecte luate câte 7 d. combinărilor de 7 obiecte luate câte 4
36. Algoritmul lui Euclid este utilizat pentru :
a. calculul numărului de multipli b. calculul numărului de divizori
c. calculul celui mai mare divizor comun d. descompunerea în factori primi

Informatică, proba e, Limbajul C/C++ 3 Varianta C


pentru absolvenţii claselor a XII-a, promoţia 2003
37. Generarea tuturor şirurilor de 3 elemente, fiecare element putând fi orice număr din mulţimea {1, 2, ..., 6},
se realizează cu ajutorul unui algoritm echivalent cu algoritmul de generare a:
a. aranjamentelor b. combinărilor c. permutărilor d. produsului cartezian
38. Condiţia ca ambele numere întregi de cel mult 3 cifre fiecare n şi p să fie nenule este:
a. n+p!=0 b. np!=0
c. (n!=0)||(p!=0) d. !(n==0 && p==0)
39. O listă liniară simplu înlănţuită, cu adresa de început memorată în variabila p este vidă dacă:
a. p==NULL / !p b. p==NULL / !*p c. p!=NULL / p d. p!=NULL / *p

40. O listă liniară simplu înlănţuită formată din cel puţin 10 elemente are adresa de început memorată iniţial
în variabila p. În câmpul ref al fiecărui nod al listei se memorează adresa elementului următor. Pentru a
reţine în p adresa penultimului element al listei se execută secvenţa:
a. while(p->ref->ref) p=p->ref b. while (!p) p=p->ref
c. while (p->ref) p=p->ref d. while (!p->ref) p=p->ref
41. Numărul minim de atribuiri necesare pentru interschimbarea valorilor a două variabile este:
a. 1 b. 2 c. 3 d. 0
42. Condiţia ca două puncte distincte A şi B (de tip structură) să aparţină aceleiaşi axe de coordonate este:
a. ((A.x==0)||(B.x==0))&&((A.y==0)||(B.y==0))
b. A.x==0 && B.x==0 || A.y==0 && B.y==0
c. ((A.x==0)||(A.y==0))&&((B.x==0)||(B.y==0))
d. (A.x==0)&&(B.x==0)&&(A.y==0)&&(B.y==0)

43. Este definită o funcţie min care primeşte două valori reale prin intermediul a doi parametri şi returnează
cea mai mică dintre cele două valori. Stabiliţi care dintre următoarele expresii nu este egală cu cea mai
mică dintre valorile reale a, b şi c.
a. min(min(a,b),c) b. min(a,min(b,c))
c. a+b+c-min(a,b)-min(a,c) d. min(min(a,b),min(a,c))
44. Funcţia prim(int i) returnează valoarea 1 dacă i este un int max(int i)
număr prim şi valoarea 0 în caz contrar. Funcţia recursivă max {
trebuie definită astfel încât apelul max(n) să returneze cel mai //1 nu este numar prim
mare număr prim mai mic sau egal cu n sau valoarea 0 în caz if (i<2) return 0;
else if (prim(i)) return i;
că nu există un astfel de număr. Care este expresia cu care
else return ...;
trebuie completată definiţia funcţiei?
}
a. 1+max(i-1) b. max(i-1) c. i-1 d. prim(i-1)
45. Subprogramul patcub returnează pătratul şi cubul unui număr real transmis prin parametrul a. Care
dintre următoarele variante este antetul corect al unui astfel de subprogram?
a. void patcub(float a, float &b, float &c)
b. float patcub(float a)
c. void patcub(float &a, float &b, &c)
d. void patcub(float a; float &b; float &c)

Informatică, proba e, Limbajul C/C++ 4 Varianta C


pentru absolvenţii claselor a XII-a, promoţia 2003

S-ar putea să vă placă și