Varinate BAC Informatica 2008
Varinate BAC Informatica 2008
. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 001 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila x este de tip real. Care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac num rul real memorat n variabila x apar ine intervalului (5,8]? (4p.) b. (x<=8) || (x>5) d. (x<=8) && (x>5)
Varianta 1 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. cite te n (num r natural) S-a notat cu x%y restul mp r irii num rului ntreg x la num rul z 0 p 1 ntreg nenul y i cu [a] partea ntreag a num rului real a. ct timp n>0 execut a) Scrie i valoarea care se va afi a dac se cite te c n%10 n=103456. (6p.) n [n/10] dac c%3=0 atunci b) Scrie i toate numere naturale impare, distincte, fiecare z z+p*(9-c) avnd exact dou cifre, care pot fi citite pentru variabila p p*10 n astfel nct s se afi eze valoarea 3. (4p.) c) Scrie i n pseudocod un algoritm, echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut scrie z cu o structur repetitiv de alt tip. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 001 Pentru fiecare dintre itemii 1 r spunsului corect. 1. Se consider o coad
1 2
. Se noteaz cu AD(x) opera ia prin care se adaug elementul cu valorile 1 i 2: valoarea x n coad i cu EL opera ia prin care se elimin un element din coad . Cte elemente2009 va con ine coada urma execut rii secven ei de opera BACALAUREAT - INFORMATIC , limbajul n C/C++ Subiectul I ii: AD(4);EL;EL;AD(5);EL;AD(3) ? (4p.) Specializarea Matematic -informatic a. 2. a. 3 b. 1 c. 2 d. 5 Care este num rul maxim de componente conexe pe care le poate avea un graf neorientat cu 20 noduri i 12 muchii? (4p.) 6 b. 12 c. 10 d. 15
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. n declararea al turat , cmpurile x i y ale nregistr rii pot struct punct { memora coordonatele carteziene ale unui punct din planul xOy. float x,y; Scrie i o secven de instruc iuni prin executarea c reia se } A,B; calculeaz i se afi eaz pe ecran distan a dintre dou puncte ale c ror coordonate sunt memorate de variabilele A i B. (6p.) float d; Pentru arborele reprezentat prin vectorul de ta i T=(6,6,5,0,6,4,4,7), scrie i care este nodul cu cei mai mul i fii i care sunt frunzele arborelui. (6p.) Scrie i un program C/C++ care cite te de la tastatur dou numere naturale nenule n i m (2 m 10, 2 n 10) i care construie te n memorie i apoi afi eaz o matrice A cu n linii (numerotate de la 1 la n) i m coloane (numerotate de la 1 la m) cu proprietatea c fiecare element Aij memoreaz cea mai mic dintre valorile indicilor i i j (1 i n, 1 j m). Matricea se va afi a pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele fiec rei linii fiind separate prin cte un spa iu. 1 1 1 1 1 Exemplu: pentru n=4 i m=5 se va afi a matricea al turat . 1 2 2 2 2 1 2 3 3 3 1 2 3 4 4 (10p.)
4. 5.
Varianta 1 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 001 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mul imea A={a,b,c,d}, cuvinte care nu con in dou vocale al turate. Primele trei cuvinte generate sunt, n ordine: abab, abac, abad. Care este cel de-al aselea cuvnt generat? (4p.) b. abbc c. abba d. abbd a. abbb Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia de mai jos a subprogramului f, f(121,1);? //C void f(long n, int i) { if(n==0) printf("%d",i); if(n%3>0) f(n/3,i+1); } ce se afi eaz ca urmare a apelului (6p.)
3.
Fi ierul text bac.txt con ine, pe o singur linie, cel mult 1000 de numere naturale nenule cu cel mult 4 cifre fiecare, numerele fiind separate prin cte un spa iu. Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n999) i numerele din fi ierul bac.txt i care afi eaz pe ecran, separate prin cte un spa iu, toate numerele din fi ier care sunt divizibile cu n. Dac fi ierul nu con ine niciun astfel de num r, atunci se va afi a pe ecran mesajul NU EXISTA. Exemplu: dac fi ierul bac.txt con ine numerele: 3 100 40 70 25 5 80 6 3798, pentru n=10 atunci pe ecran se va afi a: 100 40 70 80 (10p.) Subprogramul sub, cu trei parametri, prime te prin intermediul parametrilor: v un tablou unidimensional cu cel mult 100 de componente ce memoreaz numere ntregi de cel mult 4 cifre fiecare; n un num r natural nenul mai mic sau egal cu 100 ce reprezint num rul efectiv de componente ale tabloului primit prin intermediul parametrului v; a un num r ntreg cu cel mult 4 cifre. Subprogramul sub returneaz num rul componentelor tabloului primit prin intermediul parametrului v ale c ror valori sunt egale cu valoarea parametrului a. Exemplu: pentru valorile n=5, v=(1,21,9,21,403), a=21 ale parametrilor, n urma apelului, subprogramului sub va returna valoarea 2. a) Scrie i defini ia complet a subprogramului sub. (4p.)
4.
b) Scrie i un program C/C++ care s citeasc de la tastatur un num r natural nenul n (n 100) i n numere ntregi, fiecare avnd cel mult 4 cifre, i care, folosind apeluri utile ale subprogramului sub, s afi eze pe ecran mesajul DA dac oricare dou dintre cele n numere citite sunt distincte dou cte dou , sau mesajul NU n caz contrar. Exemplu: pentru n=6 i cele n numere citite de la tastatur : 47 183 69 8 134 -56 se va afi a pe ecran mesajul DA (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 002 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele x i y sunt tip int. Care dintre expresiile C/C++ de mai jos are valoarea 1 dac i numai dac valorile ntregi nenule memorate n variabilele x i y sunt egale? (4p.) b. (x<=y) && (y<x) d. x*x==y*y
Varianta 2 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te x (num r natural nenul) ct timp x>0 execut pseudocod. cite te y (num r natural) S-a notat cu x%y restul mp r irii num rului ntreg x la dac x>y atunci num rul ntreg nenul y. scrie x%10 a) Scrie i ce se va afi a dac se citesc, n aceast altfel ordine, numerele: 17 22 13 101 2 7 5 0. scrie y%10 (6p.) ( x y b) Scrie i un ir de date de intrare, format doar din numere naturale cu cel mult dou cifre fiecare, care s determine afi area valorii 9877. (4p.) c) d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 002 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Cte grafuri neorientate, distincte, cu 4 vrfuri se pot construi? Dou grafuri se consider distincte dac matricele lor de adiacen sunt diferite. (4p.) 6 6 4 b. 2 c. 6 d. 4 a. 4 Variabila t, declarat al turat, memoreaz n cmpurile struct triunghi Subiectul I { float a,b,c,p; }t; t valoarea perimetrului triunghiului respectiv? (4p.) b. p.t=a.t+b.t+c.t; a. p.t=t.a+t.b+t.b; c. t.p=t.a+t.b+t.c; d. t.p==t.a+t.b+t.c;
2.
BACALAUREAT - INFORMATIC limbajul C/C++Care dintre a, b i 2009 c lungimile laturilor ,unui triunghi. Specializarea Matematic -informatic urm toarele instruc iuni atribuie cmpului p al variabilei
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider o stiv n care ini ial au fost introduse, n aceast ordine, elementele cu valorile 1, 2 i 3. Se noteaz cu AD(x) opera ia prin care se adaug elementul cu valoarea x n vrful stivei i cu EL opera ia prin care se elimin elementul din vrful stivei. Asupra acestei stive se execut urm toarea secven de opera ii: AD(4);EL;AD(5);EL;AD(6);EL;EL. a) Care este valoarea elementului din vrful stivei n urma execut rii acestei secven e de opera ii? (3p.) b) Care este suma valorilor elementelor aflate n stiv n urma execut rii acestei secven e de opera ii? (3p.) 4. n secven a de program al turat , variabila a memoreaz o matrice cu n linii i n coloane (numerotate de la 0 la n-1) cu elemente numere ntregi, iar toate celelalte variabile sunt ntregi. tiind c n este un num r natural nenul i c pe fiecare linie a matricei se afl cel pu in un element nenul, scrie i instruc iunile care pot nlocui punctele de suspensie din secven a de program al turat astfel nct, n urma execut rii acesteia, s se afi eze ultima cifr a produsului elementelor nenule de pe linia k (0 k<n) a matricei a. (6p.) p = 1; for(j = 0; j < n; j++) ............. printf("%d",p);|cout<<p;
5.
Scrie i un program C/C++ care cite te de la tastatur un cuvnt format din cel mult 20 de caractere, doar litere ale alfabetului englez. Programul determin transformarea cuvntului citit prin eliminarea fiec rei litere mici a cuvntului, restul literelor nemodificndu-se, ca n exemplu. Programul afi eaz pe ecran cuvntul ob inut. n cazul n care cuvntul citit con ine numai litere mici, programul va afi a mesajul CUVANT VID. Exemple: - dac se cite te cuvntul: baCALaUreaT se va afi a pe ecran: CALUT - dac se cite te cuvntul: vara se va afi a pe ecran: CUVANT VID (10p.)
Varianta 2 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 002 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mul imea A={a,b,c,d}, cuvinte care nu con in dou vocale al turate. Primele cinci cuvinte generate sunt, n ordine: abab, abac, abad, abba, abbb. Care este ultimul cuvnt generat? (4p.) b. dcba c. abcd d. dddd a. ddcd
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a void f(int n) subprogramului f, ce se afi eaz ca { cout<<n%10; | printf(%d,n%10); if(n!=0) urmare a apelului f(125);? (6p.) { cout<<n%10; | printf(%d,n%10); f(n/100); } } 3. Fi ierul text NR.TXT con ine pe o singur linie, separate prin cte un singur spa iu, cel mult 100 de numere ntregi, fiecare num r avnd cel mult 4 cifre. Scrie i un program C/C++ care cite te numerele din fi ierul NR.TXT i afi eaz pe ecran, separate prin cte un spa iu, n ordine cresc toare, toate numerele naturale nenule din fi ier. Dac nu exist astfel de numere se va afi a pe ecran mesajul NU EXISTA. Exemplu: dac fi ierul NR.TXT con ine numerele: -3 -10 0 7 -5 7 51 -800 6 3798, atunci pe ecran se va afi a: 6 7 7 51 3798 (10p.) 4. Un num r n se nume te extraprim dac att el, ct i orice num r ob inut prin permutarea circular a cifrelor lui n, sunt numere prime. De exemplu, num rul 197 este un num r extraprim deoarece 197, 971, 719 sunt numere prime. Num rul 23 nu este extraprim deoarece 32 nu este prim. a) Scrie i defini ia complet a unui subprogram f, cu un parametru, subprogram care: - prime te prin intermediul parametrului a un num r natural cu cel mult 2 cifre (a>1) ; - returneaz suma tuturor exponen ilor din descompunerea n factori primi a valorii parametrului a. Exemplu: pentru a=90 subprogramul va returna valoarea 4, deoarece a=2*32*5 i 1+2+1=4. (4p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n, 2 n 99, i care, folosind apeluri utile ale subprogramului f, verific dac n este un num r extraprim i afi eaz pe ecran, n caz afirmativ mesajul DA, iar altfel mesajul NU. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 003 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac memorat n variabila x se afl n intervalul (-2,2)? b. 4-x*x>0 i numai dac num rul real (4p.) d. (x-2)*(x+2)>0
Varianta 3 - informatica
a. x*x-4<=0
c. (2<x)&&(x<-2)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te z,x (numere naturale nenule) pseudocod. ct timp x>0 execut S-a notat cu x%y restul mp r irii num rului ntreg x la cite te y (num r natural) num rul ntreg nenul y. dac z<y-x atunci a) Scrie i ce se va afi a dac se citesc, n aceast scrie x%10 ordine, numerele: 2 5 16 9 12 13 5 0. (6p.) altfel scrie y%10 b) Scrie i un ir de date de intrare, format doar din numere naturale cu o singur cifr fiecare, care s x y determine afi area valorii 7310. (4p.) c) d) Scrie i n pseudocod un algoritm, echivalent cu cel dat, n care s structura ct timp...execut cu o structur repetitiv de alt tip. Scrie i programul C/C++ corespunz tor algoritmului dat. se nlocuiasc (6p.) (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 003 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider un graf orientat cu 6 noduri numerotate de la 1 la 6 i cu mul imea arcelor format doar din arcele: - de la fiecare nod numerotat cu un num r neprim i (i>1) la toate nodurile numerotate cu numere ce apar in mul imii divizorilor proprii ai lui i (divizori diferi i de 1 i de i) BACALAUREAT 2009numerotat - INFORMATIC , limbajul C/C++ Subiectul I - de la nodul cu 1 la nodul numerotat cu 6 Specializarea Matematic -informatic - de la fiecare nod numerotat cu un num r prim i la nodul numerotat cu i-1 Pentru graful dat, cte dintre nodurile grafului au gradul exterior strict mai mare dect gradul interior? (4p.) a. 2. a. 1 b. 2 c. 4 d. 3 Cte frunze are arborele cu r d cin (6,5,5,2,0,3,3,3,8,7,7)? 1 b. 2 c. descris prin urm torul vector de ta i: (4p.) 5 d. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. n declararea al turat , cmpurile x i y ale nregistr rii pot struct fractie { memora num r torul, respectiv numitorul unei frac ii. Scrie i int x,y; secven a de instruc iuni prin executarea c reia se construie te }f,f1,f2; n variabila f o frac ie ob inut prin nsumarea frac iilor memorate n variabilele f1 i f2. (6p.) n secven a de instruc iuni de mai jos, variabila s memoreaz un ir de caractere format doar din litere ale alfabetului englez, iar variabilele i i n sunt de tip int. tiind c n urma execut rii secven ei s-a afi at succesiunea de caractere eeleeeneee scrie i care este irul de caractere memorat de variabila s. (6p.) n=strlen(s); for(i=0;i<n;i++) printf("%c%c",s[i],e); | cout<<s[i]<<'e'; 5. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2 n 24) i construie te n memorie o matrice cu n linii i n coloane ale c rei elemente vor primi valori dup cum urmeaz : - elementele aflate pe diagonala principal a matricei vor primi valoarea 0 - elementele de pe prima coloan , cu excep ia celui aflat pe diagonala principal vor primi valoarea n - elementele de pe a doua coloan , cu excep ia celui aflat pe diagonala principal vor primi valoarea n-1 ... - elementele de pe ultima coloan , cu excep ia celui aflat pe diagonala principal vor primi valoarea 1 Programul va afi a matricea astfel construit pe ecran, cte o linie a matricei 0 3 2 1 pe cte o linie a ecranului, cu cte un spa iu ntre elementele fiec rei linii (ca n 4 0 2 1 4 3 0 1 exemplu). Exemplu: pentru n=4 se va afi a matricea al turat . (10p.) 4 3 2 0
4.
Varianta 3 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 003 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mul imea A={a,b,c,d}, cuvinte care nu con in dou vocale al turate. Primele patru cuvinte generate sunt, n ordine: abab, abac, abad, abba. Care este antepenultimul cuvnt generat? (4p.) b. ddcd c. ddba d. dcdd a. dddb
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a void f (int x) subprogramului f, ce se afi eaz ca { if(x>0) { cout<<'x'; | printf("%c",'x'); urmare a apelului f(26);? (6p.) f(x/3); cout<<'y'; | printf("%c",'y'); } } 3. Fi ierul text NR.TXT con ine pe o singur linie, separate prin cte un singur spa iu, cel mult 100 de numere naturale, fiecare num r avnd cel mult 4 cifre. Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz pe ecran, separate prin cte un spa iu, n ordine cresc toare, toate numerele din fi ier care au cel pu in 3 cifre. Dac fi ierul nu con ine astfel de numere se va afi a pe ecran mesajul NU EXISTA. (10p.) Subprogramul cif, cu doi parametri, prime te prin intermediul parametrului a un num r natural cu cel mult 8 cifre i prin intermediul parametrului b o cifr ; subprogramul returneaz num rul de apari ii ale cifrei b n scrierea num rului a. Exemplu: pentru a=125854 i b=5, subprogramul va returna valoarea 2. a) Scrie i defini ia complet a subprogramului cif. (4p.)
4.
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n cu cel mult 8 cifre, dintre care cel pu in una impar , i care determin i afi eaz pe ecran, folosind apeluri utile ale subprogramului cif, cel mai mare num r natural care poate fi ob inut utiliznd toate cifrele impare ale num rului n. (6p.) Exemplu: dac n=2152331 atunci se va afi a pe ecran num rul 53311.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 004 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este rezultatul evalu rii expresiei C/C++ al turate? b. 10 c. 2.75 (4p.) 11*3/2*2/3 d. 11 a. 2
Varianta 4 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y i cu xy opera ia de interschimbare a valorilor variabilelor x i y. a) b) Scrie i ce se afi eaz pentru a=5 i b=17. (6p.) Scrie i toate perechile de valori care pot fi citite pentru variabilele a i b, astfel nct s se afi eze, n acest ordine, numerele: 1 -1. (4p.) cite te a,b (numere ntregi) dac a<b atunci ab pentru x a,b,-1 execut dac x%2 0 atunci scrie x,
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura pentru...execut cu o structur repetitiv de alt tip. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 004 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider un graf orientat cu 6 noduri numerotate de la 1 la 6 i cu mul imea arcelor format doar din arcele: - de la fiecare nod numerotat cu un num r neprim i (i>1) la toate nodurile numerotate cu numere ce apar in mul imii divizorilor proprii ai lui i (divizori diferi i de 1 i de i) BACALAUREAT 2009numerotat - INFORMATIC , limbajul C/C++ Subiectul I - de la nodul cu 1 la nodul numerotat cu 6 Specializarea Matematic -informatic - de la fiecare nod numerotat cu un num r prim i la nodul numerotat cu i-1 Pentru graful dat, cte dintre nodurile grafului au gradul exterior egal cu gradul interior? (4p.) a. 2. a. 2 b. 3 c. 1 d. 4 Cte frunze are arborele cu r d cin , cu 8 noduri, numerotate de la 1 la 8, descris prin urm torul vector de ta i: (6,5,5,2,0,3,3,3)? (4p.) 4 b. 6 c. 5 d. 3
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider o stiv n care ini ial au fost introduse, n aceast ordine, elementele cu valorile 1, 2 i 3, ca n figura al turat . Se noteaz cu AD(x) opera ia prin care se adaug elementul cu valoarea x n vrful stivei i cu EL opera ia prin care se elimin elementul din vrful stivei. Reprezenta i, dup modelul al turat, con inutul stivei rezultat n urma execut rii secven ei de opera ii: AD(4);EL;EL;AD(5);EL? (6p.) Fie s o variabil ce memoreaz un ir de caractere, format doar din litere ale alfabetului englez, i i o variabil de tip int. Scrie i instruc iunile ce pot nlocui punctele de suspensie din secven a de program al turat astfel nct executarea ei s determine nlocuirea tuturor literelor mici din irul s cu litera W i apoi afi area irului ob inut. (6p.)
3 2 1
vrf
baza
4.
5.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2 n 24) i construie te n memorie o matrice cu n linii i n coloane ale c rei elemente vor primi valori dup cum urmeaz : - elementele aflate pe diagonala secundar a matricei vor primi valoarea 0 - elementele de pe prima linie, cu excep ia celui aflat pe diagonala secundar vor primi valoarea n - elementele de pe a doua linie, cu excep ia celui aflat pe diagonala secundar vor primi valoarea n-1 ... - elementele de pe ultima linie, cu excep ia celui aflat pe diagonala secundar vor primi valoarea 1 Programul va afi a matricea astfel construit pe ecran, cte o linie a matricei 4 4 4 0 pe cte o linie a ecranului, cu cte un spa iu ntre elementele fiec rei linii (ca 3 3 0 3 n exemplu). 2 0 2 2 Exemplu: pentru n=4 se va afi a matricea al turat . (10p.) 0 1 1 1
Varianta 4 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 004 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mul imea A={a,b,c,d}, cuvinte care nu con in dou vocale al turate. Primele trei cuvinte generate sunt, n ordine: abab, abac, abad. Care este penultimul cuvnt generat? (4p.) b. dcba c. dddc d. ddcd a. dcdb
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru subprogramul f definit void f (int n, int x) al turat, ce se afi eaz ca urmare { if(x>n) cout<<*; | printf(%c,*); a apelului f(15,2);? (6p.) else { f(n,x+4); cout<<x%10; | printf(%d,x%10); } } 3. Fi ierul text NR.TXT con ine pe o singur linie, separate prin cte un singur spa iu, cel mult 100 de numere naturale, fiecare num r avnd cel mult 4 cifre. Scrie i un program C/C++ care cite te numerele din fi ierul NR.TXT i afi eaz pe ecran, separate prin cte un spa iu, n ordine descresc toare, toate numerele din fi ier care au cel mult 2 cifre. Dac fi ierul nu con ine astfel de numere se va afi a pe ecran mesajul NU EXISTA. (10p.) Subprogramul cif, cu doi parametri, prime te prin intermediul parametrului a un num r natural cu cel mult 8 cifre i prin intermediul parametrului b o cifr ; subprogramul returneaz num rul de apari ii ale cifrei b n scrierea num rului a. Exemplu: pentru a=125854 i b=5, subprogramul va returna valoarea 2. a) Scrie i defini ia complet a subprogramului cif. b) Scrie i un program C/C++ care cite te de la tastatur un cifre, dintre care cel pu in una impar , i care determin apeluri utile ale subprogramului cif, cel mai mic num r utiliznd toate cifrele impare ale num rului n. Exemplu: dac n=2152331 atunci se va afi a pe ecran num (4p.) num r natural n cu cel mult 8 i afi eaz pe ecran, folosind natural care poate fi ob inut rul 11335. (6p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 005 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila x este de tip real. Care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac num rul real memorat n variabila x nu apar ine intervalului (2,9]? (4p.) b. (x<=2) && (x>9) d. (x<2) || (x>9)
Varianta 5 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider programul pseudocod al turat. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y i cu [a] partea ntreag a num rului real a. a) Scrie i ce se va afi a dac se citesc, n aceast ordine, valorile 729385 i 532. (6p.) Dac pentru z se cite te valoarea 99, scrie i cte numere naturale, cu exact 3 cifre fiecare, pot fi citite pentru x astfel nct s se afi eze valoarea 0 n fiecare dintre aceste cazuri. (4p.) cite te x,z (numere naturale) y 0 repet y y*10+x%10 x [x/100] pn cnd x=0 ct timp y*z>0 i y%10=z%10 execut y [y/10] z [z/10] dac y+z=0 scrie 1 altfel scrie 0 atunci
b)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se foloseasc o singur structur repetitiv . (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 005 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
ntr-un graf neorientat cu 10 muchii, fiecare nod are gradul un num r nenul. Doar trei dintre noduri au gradul un num r par, restul nodurilor avnd gradele numere impare. Care este num rul maxim de noduri pe care poate s le aib graful? (4p.) 14 b. 17 c. 10 d. 16
Subiectul I
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Specializarea Matematic -informatic 2. Variabila d, declarat al turat, memoreaz n cmpurile a
a.
i b l imea i, respectiv, lungimea unui dreptunghi. Care dintre urm toarele instruc iuni atribuie cmpului aria al variabilei d valoarea ariei dreptunghiului respectiv? (4p.) d.aria==d.a*d.b; aria.d=d.a*d.b; b. d.
a. c.
aria.d=a.d*b.d; d.aria=d.a*d.b;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un arbore cu r d cin n care doar 13 dintre nodurile arborelui au exact 2 descenden i direc i (fii), restul nodurilor avnd cel mult un descendent direct (fiu). Care este num rul frunzelor arborelui? (6p.) Fie s o variabil ce memoreaz un ir de caractere, c i d dou variabile ce memoreaz cte un caracter, iar n i i variabile ntregi. Scrie i instruc iunile ce pot nlocui punctele de suspensie din secven a de program de mai jos astfel nct executarea ei s determine nlocuirea tuturor apari iilor caracterului memorat n=strlen(s); de variabila c n irul s cu caracterul memorat de for(i=0;i<n;i++) variabila d i apoi afi area irului ob inut. (6p.) ............... printf("%s",s);| cout<<s; Scrie i un program C/C++ care cite te de la tastatur dou numere naturale n i m (2 m 10, 2 n 10) i care construie te n memorie i apoi afi eaz o matrice A cu n linii (numerotate de la 1 la n) i m coloane (numerotate de la 1 la m) cu proprietatea c fiecare element Aij memoreaz cea mai mare dintre valorile indicilor i i j (1 i n, 1 j m). Matricea se va afi a pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele fiec rei linii fiind separate prin cte un spa iu. (10p.) Exemplu: pentru n=4 i m=5 se va afi a matricea al turat . 1 2 3 4 5 . (10p.) 2 2 3 4 5 3 3 3 4 5 4 4 4 4 5
4.
5.
Varianta 5 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 005 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Folosind modelul combin rilor se genereaz numerele naturale cu cte trei cifre distincte din mul imea {1,2,3,4}, numere cu cifrele n ordine strict cresc toare, ob inndu-se, n ordine: 123, 124, 134, 234. Dac se utilizeaz exact aceea i metod pentru a genera numerele naturale cu cte patru cifre distincte din mul imea {1,2,3,4,5}, cte dintre numerele generate au prima cifr 1 i ultima cifr 5? (4p.) b. 2 c. 6 d. 3 a. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia de mai jos a subprogramului f(10);? //C void f (int b) { if(3<=b) {f(b-2); printf(%c,*);} else printf(%d,b); } f, ce se afi eaz ca urmare a apelului (6p.)
3.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n cu cel mult 8 cifre (n10) i care creeaz fi ierul text NR.TXT ce con ine num rul n i toate prefixele nenule ale acestuia, pe o singur linie, separate prin cte un spa iu, n ordine descresc toare a valorii lor. Exemplu: pentru n=10305 fi ierul NR.TXT va con ine numerele: 10305 1030 103 10 1 (10p.) Subprogramul f, cu un parametru: - prime te prin intermediul parametrului a un num r natural cu cel mult 8 cifre (a>1); - returneaz cel mai mic divizor prim al valorii parametrului a. Exemplu: pentru valoarea 45 a parametrului a, subprogramul va returna valoarea 3 deoarece a=32*5, iar cel mai mic divizor prim al s u este 3. a) Scrie i defini ia complet a subprogramului f. (4p.)
4.
b) Scrie i un program C/C++ care s citeasc de la tastatur un num r natural nenul n (n 100) i un ir de n numere naturale de cel mult 8 cifre fiecare, toate numerele din ir fiind strict mai mari dect 1. Folosind apeluri utile ale subprogramului f, programul va determina i va afi a pe ecran toate numerele prime din irul citit. Numerele determinate se vor afi a pe ecran, separate prin cte un spa iu. Dac nu exist astfel de numere se va afi a pe ecran mesajul NU EXISTA. Exemplu: pentru n=8, irul: 1125, 2, 314, 101, 37, 225, 15, 12 se va afi a: 2 101 37 (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 006 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++, are ca valoare cel mai mic dintre numerele naturale nenule, cu cel mult 4 cifre fiecare, memorate n variabilele ntregi x i y? (4p.) a. (x+y-abs(x-y))/2 c. (x+y+abs(x-y))/2 b. x+y-abs(x-y)/2 d. (x+y+abs(x+y))/2
Varianta 6 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod: cite te n (num r natural) S-a notat cu [c] partea ntreag a num rului real c, iar cu a%b s -1 ct timp n>0 execut restul mp r irii num rului ntreg a la num rul ntreg nenul b. dac n%10>s atunci a) Scrie i valoarea care se afi eaz , n urma execut rii s n%10 algoritmului, dac se cite te num rul 9321. (6p.) altfel s 11 b) Scrie i cea mai mare valoare de 4 cifre distincte care poate fi citit pentru n astfel nct s se afi eze valoarea 11. (4p.) c) n [n/10]
Scrie i n pseudocod un algoritm echivalent cu cel dat n scrie s care s se nlocuiasc structura ct timp ... execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 006 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
struct p{ n declararea al turat , cmpul a al structurii memoreaz int a,b;} x,y; num ratorul, iar cmpul b memoreaz numitorul unei frac ii. Care dintre urm toarele secven e de instruc iuni determin , int t; n urma execut rii, interschimbarea numitorului frac iei x cu BACALAUREAT - INFORMATIC , limbajul C/C++ Subiectul I (4p.) numitorul2009 frac iei y?
Specializarea Matematic -informatic
a. c. 2. a.
b. d.
Se consider un graf neorientat cu 10 noduri i 7 muchii. Care este num rul maxim de componente conexe din care poate fi format graful? (4p.) 8 b. 7 c. 6 d. 10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Care este num rul de muchii ale unui arbore cu 15 noduri? n secven a al turat se consider c variabila a memoreaz un tablou bidimensional cu n linii i n coloane, numerotate de la 0 la n-1, iar toate celelalte variabile sunt ntregi. Ce valoare se va afi a n urma execut rii secven ei, dac n=4, iar tabloul are con inutul de mai jos? 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 (6p.) (6p.) p=0; u=n-1; s=0; while (p<=u) { s=s+a[p][p]+a[u][u]; p=p+1; u=u-1; } cout<<s; | printf(%d,s);
5.
Se consider un text cu maximum 255 de caractere n care cuvintele sunt separate prin unul sau mai multe spa ii. Primul caracter din textul citit este o liter , iar cuvintele sunt formate numai din litere mici ale alfabetului englez. Scrie i un program C/C++ care cite te de la tastatur textul i l transform nlocuind prima liter a fiec rui cuvnt cu litera mare corespunz toare, restul caracterelor r mnnd nemodificate. Textul astfel transformat va fi afi at pe ecran. Exemplu: dac de la tastatur se introduce textul: mare frig rosu se va afi a pe ecran: Mare Frig Rosu (10p.)
Varianta 6 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 006 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul cu defini ia al turat . Ce valoare se va afi a n urma execut rii instruc iunii de mai jos? cout<<f(12); | printf(%d,f(12)); (4p.) int f (int n){ int c; if (n!=0) {if (n%2==1) c=1+f(n/2); else c=f(n/2); cout<<n%2; | printf(%d,n%2); return c; } else return 0; } c. 10102 d. 00112
a. 11002
b. 20011
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Utiliznd metoda backtracking sunt generate numerele de 3 cifre, avnd toate cifrele distincte i cu proprietatea c cifrele aflate pe pozi ii consecutive sunt de paritate diferit . tiind c primele ase solu ii generate, sunt n aceast ordine, 103, 105, 107, 109, 123, 125 scrie i a aptea i a noua solu ie generat . (6p.) Se consider definite urm toarele subprograme: - s1, cu doi parametri: a, b dou numere ntregi cu cel mult 4 cifre fiecare; subprogramul interschimb valorile a dou variabile transmise prin intermediul parametrilor a i b. - s2, cu trei parametri: a, un tablou unidimensional cu exact 100 de elemente, numere ntregi cu cel mult 4 cifre fiecare, p, un num r natural (p 100), q, un num r natural (q 100). Subprogramul caut primul element divizibil cu 5 n secven a ap,ap+1, ..., aq, i returneaz pozi ia acestuia, dac exist un astfel de element, sau valoarea -1 n caz contrar. a) Scrie i numai antetul subprogramului s1. (4p.) b) Scrie i defini ia complet a subprogramului s2. (6p.) c) Scrie i programul C/C++ care cite te de la tastatur o valoare natural n (0<n 100) i apoi un tablou unidimensional a, cu n elemente, numere ntregi cu cel mult 4 cifre fiecare. Programul determin , folosind apeluri utile ale subprogramului s2, primul element divizibil cu 5 (dac exist ) i ultimul element divizibil cu 5 (dac exist ) al tabloului a, interschimb valorile elementelor g site, folosind apelul subprogramului s1, i apoi scrie pe prima linie a fi ierului text BAC.TXT elementele tabloului a, astfel transformat, separate prin cte un spa iu, sau valoarea 0 dac tabloul con ine mai pu in de dou elemente divizibile cu 5. Exemplu: pentru n=7 i tabloul a=(6,10,4,15,2,5,8), programul va scrie n fi ier: 6 5 4 15 2 10 8 (10p.)
3.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 007 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Fiecare dintre variabilele ntregi x i y memoreaz cte un num r natural. Care dintre expresiile C/C++ de mai jos are valoarea 1 dac i numai dac num rul memorat n x este strict mai mare dect 0 i num rul memorat n y este strict mai mare dect 5? (4p.) a. x*y-5!=0 c. x*(y-5)>=0 b. x*(y-5)!=0 d. !(x*(y-5)<=0)
Varianta 7 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod: S-a notat cu [c] partea ntreag a num rului real c, iar cu a%b restul mp r irii num rului ntreg a la num rul ntreg nenul b. a) Scrie i valoarea afi at , execut rii algoritmului, dac pentru n valoarea 232493. n urma se cite te (4p.) cite te n (num r natural nenul) nr 0 pentru a 9,0,-1 execut m n ct timp m 0 i m%10a execut m [m/10] dac m0 atunci nr nr*10+m%10 scrie nr
b)
Scrie i dou valori naturale distincte care pot fi citite pentru n astfel nct, n urma execut rii algoritmului s se afi eze num rul 9654. (6p.)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura pentru...execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 007 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider tabloul bidimensional a cu n linii p=0; numerotate de la 0 la n-1 i m coloane for (i=1;i<m;i++) if (a[n-1][p]<a[n-1][i]) numerotate de la 0 la m-1. Ce reprezint p=i; elementul a[n-1][p] dup executarea BACALAUREAT 2009 - INFORMATIC , limbajul C/C++(4p.) Subiectul I secven ei de program al turate?
Specializarea Matematic -informatic
a. c. 2. a.
cel mai mare element de pe linia n-1 cel mai mare element de pe coloana n-1
b. d.
cel mai mic element de pe linia n-1 cel mai mic element de pe coloana n-1
Care dintre urm toarele valori pot reprezenta gradele nodurilor unui graf neorientat cu 6 noduri? (4p.) 3 2 2 2 3 3 b. 4 2 2 2 3 2 c. 5 2 2 2 0 3 d. 5 2 2 2 1 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. de struct elev Considerndu-se declararea al turat , scrie i o secven instruc iuni prin executarea c reia s se afi eze, pe o singur { char nume[50]; int clasa; linie a ecranului, con inutul variabilei x. (6p.) float medie; }x; Se consider graful neorientat cu mul imea vrfurilor {1,2,3,4,5,6} i mul imea muchiilor {[1,2],[2,3],[3,4],[3,5],[4,5],[1,3],[2,6],[2,4],[4,6]}. Care este num rul minim de muchii ce trebuie eliminate i care sunt aceste muchii astfel nct graful par ial ob inut s nu mai fie conex? (6p.) Se consider un text cu maximum 255 de caractere, format din litere mici ale alfabetului englez i spa ii. Textul con ine cel pu in o consoan . Scrie i un program C/C++ care cite te de la tastatur textul i afi eaz pe ecran numai ultima consoan care apare n text. Exemplu: dac de la tastatur se introduce textul mare frig saci pe ecran se va afi a: c (10p.)
4.
5.
Varianta 7 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 007 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. void f(long n){ Se consider subprogramul if (n!=0){ cu defini ia al turat . Ce se if (n%2==0) va afi a n urma apelului cout<<n%10; | printf(%d,n%10); f(12345);? (4p.) f(n/10); if (n%2!=0) cout<<n%10;| printf(%d,n%10); } else cout<<endl; | printf(\n); } b. 24 c. 531 d. 42 a. 531 24 135 42 135 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Folosind tehnica bactracking un elev a scris un program care genereaz toate numerele de cte n cifre (0<n 9), cifrele fiind n ordine strict cresc toare. Dac n este egal cu 5, scrie i n ordine cresc toare toate numerele avnd cifra unit ilor 6, care vor fi generate de program. (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (0<n 100) i cele 3*n elemente ale tabloului unidimensional v, numere naturale cu cel mult patru cifre fiecare. Tabloul este mp r it n trei zone, cu cte n elemente fiecare: prima zon con ine primele n elemente din tablou, a doua zon con ine urm toarele n elemente din tablou, restul elementelor fiind n zona a treia. Programul va interschimba elementele zonei unu cu elementele zonei trei i va afi a pe ecran toate elementele tabloului, astfel transformat, separate prin cte un spa iu. De exemplu, pentru n=3 i v=(1 2 3 4 5 6 7 8 9), se va afi a pe ecran : 7 8 9 4 5 6 1 2 3 (10p.) Se consider irul definit de urm toarea rela ie de recuren : a) Scrie i numai antetul unui subprogram sub, care prime te prin intermediul parametrului n un num r natural de maximum 8 cifre, i care returneaz cel mai mare termen al irului de mai sus mai mic sau cel mult egal cu n. Exemplu: dac n=83 atunci subprogramul va returna valoarea 80. (4p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural s (s 10000000) i determin un ir de numere distincte a c ror sum este egal cu s, folosind apeluri utile ale subprogramului sub. Numerele determinate se vor scrie n fi ierul Numere.txt, pe prima linie a acestuia, separate prin cte un spa iu. Exemplu: dac valoarea citit de la tastatur este 63, atunci fi ierul Numere.txt va con ine valorile urm toare, nu neap rat n aceast ordine: 40 20 3. (6p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 008 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are ca valoare cel mai mare dintre numerele naturale nenule, cu cel mult 4 cifre fiecare, memorate n variabilele ntregi a i b? (4p.) b. a+b+abs(a-b)/2 d. (a+b-abs(a+b))/2
Varianta 8 - informatica
a. (a+b+abs(a-b))/2 c. (a+b-abs(a-b))/2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n cite te n,k (numere naturale nenule) pseudocod: nr 0 p 1 S-a notat cu [c] partea ntreag a num rului real ct timp n0 i k0 execut c, iar cu a%b restul mp r irii num rului ntreg a la dac n%2=0 atunci num rul ntreg b. nr nr+ n%10*p a) Scrie i valoarea care se afi eaz , n urma p p*10 execut rii algoritmului, dac se cite te altfel pentru n valoarea 932125 i pentru k k k-1 valoarea 3. (4p.) b) Scrie i un set de date de intrare astfel nct, n urma execut rii algoritmului, s se (6p.) afi eze valoarea 0. Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp ... execut cu o (6p.) structur repetitiv cu test final. Scrie i programul C/C++ corespunz tor algoritmului dat.
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
n [n/10] scrie nr
c)
d)
(10p.)
Subiectul II (30 de puncte) - Varianta 008 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 1 0 1 0 0 0 0 d. 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 2 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 Subiectul I 1 0 0 0 0 0
Cte frunze are arborele cu 8 noduri i r d cina 1, 0 1 reprezentat prin matricea de adiacen al turat ? (4p.) 1 0 0 1 0 0 1 0 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ 0 0 Specializarea Matematic -informatic 0 0 0 0 a. 2. a. 5 b. 4 c. 3
Care este num rul maxim de vrfuri de grad 0 pe care le poate avea un graf neorientat cu 10 noduri i 7 muchii? (4p.) 5 b. 6 c. 4 d. 7
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce se afi eaz n urma execut rii secven ei de program urm toare, dac memoreaz irul de caractere abcdefgh? strcpy(s+2,s+4); cout<<s<< <<strlen(s); | printf(%s %d ,s,strlen(s)); 4. variabila s
(6p.)
Se consider un graf orientat cu 6 noduri care are urm toarele propriet ti: - suma gradelor externe ale tuturor varfurilor grafului este egal cu 6; - sunt doar 3 vrfuri care au gradul intern egal cu 1. Care este valoarea maxim pe care o poate avea gradul extern al unui vrf din graful dat? Reprezenta i prin liste de adiacen un graf care ndepline te condi iile din enun ul problemei i n care unul dintre vrfuri are acest grad extern maxim. (6p.) Scrie i un program C/C++ care cite te de la tastatur dou numere naturale n i p (2 n 15, 1 p 15) i construie te n memorie un tablou bidimensional cu n linii i p coloane. Tabloul va fi construit astfel nct, parcurgnd tabloul linie cu linie de sus n jos i fiecare linie de la stnga la dreapta, s se ob in irul primelor n*p p trate perfecte impare, ordonat strict cresc tor, ca n exemplu. Tabloul astfel construit va fi afi at pe ecran, fiecare linie a tabloului pe cte o linie a ecranului, cu cte un spa iu ntre elementele fiec rei linii. Exemplu: pentru n=2, p=3 programul va afi a 1 9 25 tabloul al turat: (10p.) 49 81 121
5.
Varianta 8 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 008 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul f cu void f(long n){ if (n!=0){ defini ia al turat . Ce se va afi a n if (n%2!=0) urma apelului f(12345);? (4p.) cout<<n%10; | printf(%d,n%10); f(n/10); if (n%2==0) cout<<n%10;| printf(%d,n%10); } else cout<<endl; | printf(\n); } b. 135 42 c. 531 24 d. 531 42
a. 135 24
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Utiliznd metoda backtracking sunt generate numerele de 3 cifre, avnd toate cifrele distincte i cu proprietatea c cifrele aflate pe pozi ii consecutive sunt de paritate diferit . tiind c primele trei solu ii generate sunt, n aceast ordine, 103, 105, 107, cte dintre numerele generate au suma cifrelor egal cu 6? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (n 50) i care afi eaz pe prima linie a fi ierului BAC.TXT primele n numere pare, pe a doua linie primele n-1 numere pare, ..., pe linia n primul num r par. Numerele vor fi afi ate pe fiecare linie n ordine cresc toare i vor fi separate prin cte un spa iu. (10p.) 0 2 4 Exemplu: dac n=3 fi ierul BAC.TXT va avea con inutul al turat. 0 2 0 Se consider definite urm toarele subprograme: - p1 care prime te prin intermediul parametrului n un num r natural cu cel mult 8 cifre i returneaz suma cifrelor num rului primit prin parametrul n Exemplu: dac n este egal cu 1234 valoarea returnat de subprogram va fi 10. -p2 care prime te prin intermediul parametrului n un num r natural cu cel mult 8 cifre, elimin ultima cifr a acestui num r i returneaz noul num r ob inut. Exemplu: dac n este egal cu 1234 valoarea returnat de subprogram va fi 123. a) Scrie i numai antetul subprogramelor p1 i p2. (4p.)
3.
4.
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n cu cel mult 8 cifre i determin , prin apeluri utile ale subprogramelor p1 i p2, num rul de cifre egale cu 0 din scrierea lui n. Programul va afi a pe ecran num rul ob inut. Exemplu: dac n este 102030, programul va afi a valoarea 3. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 009 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre expresiile C/C++ de mai jos este ((a>3) && (a<15)) || (a!=b) echivalent cu expresia al turat ? (4p.) b. !((a<=3) || (a>=15)) || (a!=b) d. !(a<3 || a>15) && (a!=b)
Varianta 9 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod: cite te n (num r natural) S-a notat cu [c] partea ntreag a num rului real c, iar cu s 10 ct timp n>0 execut a%b restul mp r irii num rului ntreg a la num rul ntreg nenul dac n%10<s atunci b. s n%10 a) Scrie i valoarea care se afi eaz , n urma execut rii altfel algoritmului, dac se cite te pentru n valoarea 1239. s -1 (6p.) n [n/10] b) Scrie i cea mai mic valoare de 4 cifre distincte care poate fi citit valoarea -1. c) pentru n astfel nct s se afi eze (4p.) scrie s
Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp ... execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 009 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Considernd declararea al turat , care dintre urm toarele secven e de struct { instruc iuni realizeaz n mod corect citirea de la tastatur a valorilor int a, b; celor dou cmpuri ale variabilei x? (4p.) } x; cin>>x; | | | scanf(%d, &x);
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I Specializarea Matematic -informatic cin>>a.x>>b.x; | scanf(%d %d, &a.x,&b.x); b.
a.
c. d. 2.
cin>>x.a>>x.b; cin>>a->x>>b->x;
Se consider graful neorientat G cu 8 noduri, care are urm toarele propriet i: - suma gradelor tuturor nodurilor este 12 - graful are exact 3 noduri cu gradul 1 Care este num rul maxim de noduri de grad 0 ale grafului G? 1 b. 4 c. 2 d. 0
(4p.)
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce se afi eaz n urma execut rii secven ei de n=strlen(s); program al turate, dac variabila s memoreaz irul s[n-1]=s[0]; de caractere abcdef iar variabila n este de tip cout<<s; | printf(%s ,s); ntreg? (6p.) Se consider graful orientat G reprezentat prin listele de adiacen al turate. Care este lungimea maxim a unui drum elementar din acest graf? Care sunt arcele care compun un drum cu aceste propriet i? (6p.)
4.
5.
Se consider tabloul bidimensional cu n linii i n coloane ce con ine numere naturale cu cel mult patru cifre fiecare. Scrie i programul C/C++ care cite te de la tastatur num rul natural n (2 n 23) i cele n*n elemente ale tabloului i apoi afi eaz pe ecran elementele primului p trat concentric, separate prin cte un spa iu. P tratul este parcurs n sensul acelor de ceasornic ncepnd din col ul s u stnga-sus, ca n exemplu. Primul p trat concentric este format din prima i ultima linie, prima i ultima coloan a tabloului. Exemplu: pentru n=5 i tabloul al turat, se va 1 2 3 4 5 afi a: 6 7 8 9 1 1 2 3 4 5 1 6 2 7 6 5 4 3 7 2 6 2 3 4 5 6 (10p.) 7 8 9 1 2 3 4 5 6 7
Varianta 9 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 009 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul cu defini ia int f (int n){ int c; al turat . Ce valoare se va afi a n urma if (n!=0) execut rii instruc iunii de mai jos? {if (n%2==0) cout<<f(8); | c=1+f(n/2); printf(%d,f(8)); (4p.) else c=f(n/2); cout<<n%2; | printf(%d,n%2); return c; } else return 0; } b. 30001 c. 10013 d. 00112 a. 10003 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Utiliznd metoda backtracking sunt generate n ordine cresc toare toate numerele de 3 cifre, avnd cifrele n ordine cresc toare, iar cifrele aflate pe pozi ii consecutive sunt de paritate diferit . tiind c primele cinci solu ii generate sunt, n aceast ordine, 123, 125, 127, 129, 145, care este cel de al 6-lea num r generat? Dar al 8-lea? (6p.) Se consider definite dou subprograme: - Subprogramul s1, cu 3 parametri, care prime te prin intermediul parametrului a un tablou unidimensional cu exact 100 de elemente, numerotate de la 0 la 99, numere ntregi de cel mult 4 cifre fiecare, iar prin intermediul parametrilor p i q (0 p<q<100) pozi iile a dou elemente ale tabloului. Subprogramul furnizeaz prin intermediul parametrului p pozi ia primului element par (dac exist ), i prin intermediul parametrului q pozi ia ultimului element impar (dac exist ), din secven a ap,ap+1, ..., aq. Dac aceast secven nu con ine niciun element par subprogramul va furniza prin intermediul lui p valoarea -1, iar dac nu con ine niciun element impar, va furniza prin intermediul lui q valoarea -1. - Subprogramul s2, cu doi parametri, a i b, dou numere ntregi cu cel mult 4 cifre fiecare; subprogramul interschimb valorile a dou variabile transmise prin intermediul parametrilor a i b. a) Scrie i numai antetul subprogramului s2. b) Scrie i defini ia complet a subprogramului s1. (4p.) (6p.)
3.
c) Scrie i un program C/C++ care: - cite te de la tastatur un num r natural nenul n (0 n<100), apoi cele n elemente ale unui ir a. Fiecare dintre aceste elemente este un num r ntreg cu cel mult 4 cifre i cel pu in un element al irului este par; - determin rearanjarea elementelor irului astfel nct toate valorile pare s fie plasate la sfr itul irului a, folosind apeluri utile ale subprogramelor s1 i s2; - scrie elementele irului rezultat n urma acestei transform ri pe o singur linie a fi ierului text BAC.TXT, separate prin cte un spa iu. Exemplu: pentru n=5 i a=(2,3,4,7,5) fi ierul ar putea avea con inutul: 7 5 3 4 2. (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 010 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este valoarea expresiei C/C++ al turate? (4p.) b. 4 d. -3.75 9/2*2-5 a. 3 c. -3
Varianta 10 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te n,k (numere naturale nenule) pseudocod nr 0 S-a notat cu [c] partea ntreag a num rului real c, p 1 iar cu a%b restul mp r irii num rului ntreg a la ct timp n0 i k0 execut num rul ntreg nenul b. dac n%2 0 atunci a) Scrie i valoarea care se afi eaz , n urma nr nr + [n/10]%10*p execut rii algoritmului, dac se cite te pentru p p*10 n valoarea 23456 i pentru k valoarea 3. (4p.) altfel k k-1 b) Scrie i dou seturi distincte de date de intrare, astfel nct, pentru fiecare dintre ele, n urma n [n/10] execut rii algoritmului, s se afi eze valoarea 234. (6p.) scrie nr c) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp ... execut cu o structur repetitiv cu test final. (6p.) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 010 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Considernd declararea al turat , care dintre urm toarele secven e de struct { int a, b; instruc iuni afi eaz valorile memorate n cele dou cmpuri ale } x; variabilei x, separate printr-un spa iu? (4p.) cout <<x.a<< <<x.b; cout<<x; cout<<a->x<< <<b->x; Se consider declar rile de mai jos: | | | | printf(%d %d, x.a,x.b); printf(%d %d, a.x,b.x); printf(%d, x); printf(%d %d, a->x,b->x);
Subiectul I
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Specializarea Matematic -informatic cout<<a.x<< <<b.x; b.
a.
c. d. 2.
i=0; while (i<strlen(s)-1) char s[]=abbacdde; if (s[i]==s[i+1]) int i; { strcpy(s+i,s+i+2); if (i>0) i=i-1; Ce ir re ine variabila s dup executarea secven ei de } instruc iuni al turate? (4p.) else i=i+1; aace b. ace c. ce d. acde
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care este gradul maxim pe care l poate avea un nod al unui graf neorientat cu 6 muchii i 6 noduri dintre care exact dou au gradul 0? Care este reprezentarea prin liste de adiacen pentru un astfel de graf? (6p.) Se consider graful neorientat cu 80 de noduri i 3160 muchii. Care este num rul de muchii ce pot fi eliminate astfel nct graful par ial ob inut s devin arbore? (6p.) Scrie i un program C/C++ care cite te de la tastatur dou numere naturale n i p (2 n 15, 1 p 15) i construie te n memorie un tablou bidimensional cu n linii i p coloane. Tabloul va fi construit astfel nct parcurgnd matricea de la prima linie c tre ultima i fiecare linie de la stnga la dreapta s se ob in irul primelor n*p p trate perfecte pare ordonat strict cresc tor. Tabloul astfel construit va fi afi at pe ecran, fiecare linie a tabloului pe cte o linie a ecranului, cu cte un spa iu ntre elementele fiec rei linii. 0 4 16 Exemplu: pentru n=2, p=3 programul va afi a 36 64 100 tabloul al turat: (10p.)
4. 5.
Varianta 10 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 010 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. int f(int n,int y) Se consider subprogramul cu defini ia { if(n!=0) al turat . Ce valoare are f(3,1)? (4p.) { y=y+1; return y+f(n-1,y); } else return 0; } b. 9 c. 7 d. 6 a. 8 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Folosind metoda bactracking un elev a scris un program care genereaz toate numerele de cte n cifre (0<n 9), cifrele fiind n ordine strict cresc toare. Dac n este egal cu 5, scrie i toate numerele generate de program care au prima cifr 4. (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (n 100) i apoi cele n elemente, numere naturale cu cel mult 4 cifre fiecare, ale unui tablou unidimensional a. Programul determin i afi eaz pe prima linie a ecranului suma celor n elemente ale tabloului, pe a doua linie a ecranului suma primelor n-1 elemente i a a mai departe astfel nct pe linia n-1 se va afi a suma primelor dou elemente, iar pe linia n primul element al tabloului. 10 Exemplu: dac n=4, iar tabloul are elementele a=(1,2,3,4) programul 6 va afi a valorile al turate. (10p.) 3 1 Fi ierul BAC.TXT con ine pe prima linie un num r natural n (0<n 1000000) i pe a doua linie, separate prin cte un spa iu, n numere naturale nenule (cu cel mult 7 cifre fiecare) ordonate cresc tor. a) Scrie i un program C/C++ care cite te toate numerele din fi ier i, utiliznd un algoritm eficient din punct de vedere al memoriei utilizate i al timpului de executare, determin pentru fiecare num r citit de pe a doua linie a fi ierului, cea mai mic valoare mai mare sau egal cu acesta ce reprezint o putere a lui 2. Un num r natural x este putere a lui 2 dac exist un num r natural k astfel nct x=2k. Numerele astfel determinate vor fi scrise pe ecran, separate prin cte un spa iu. Exemplu: dac fi ierul are con inutul de mai jos 5 3 5 8 9 12 pe ecran se va afi a: 4 8 8 16 16 (6p.) b) Descrie i succint, n limbaj natural, algoritmul pe baza c ruia a fost scris programul de la punctul a), explicnd n ce const eficien a metodei folosite. (4p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 011 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele x i y sunt de tip ntreg, x memornd valoarea 8, iar y valoarea 6. Care dintre expresiile C/C++ de mai jos are valoarea 0? (4p.) a. 3*x-4*y==0 b. (x+y)/2 > x%y+1 c. !(x/2+2==y) d. x-y+3!=0
Varianta 11 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. algoritmul al turat, descris n cite te n,k (numere naturale) p 1 ct timp n>0 i k>0 execut S-a notat cu x%y restul mp r irii num rului natural x c n%10 la num rul natural nenul y i cu [z] partea ntreag a dac c%2=1 atunci num rului real z. p p*c a) Scrie i valoarea care se va afi a dac se n [n/10] cite te pentru n valoarea 296385, iar pentru k k k-1 valoarea 3. (6p.) b) Dac se cite te pentru k valoarea 4, scrie i scrie p cea mai mare valoare de 5 cifre care poate fi citit pentru n astfel nct num rul afi at n urma execut rii algoritmului s fie 1. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) 2. Se consider pseudocod.
c) d)
Scrie i n pseudocod un algoritm echivalent cu algoritmul dat, n care s se nlocuiasc cu o structur repetitiv structura repetitiv ct timp...execut , pentru...execut . (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 011 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 0 0 0 1 1 d. 1 0 0 0 1 0 1 0 0 1 0 1 5 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1 Subiectul I 0 0
Se consider graful orientat reprezentat prin matricea de adiacen al turat . Care este lungimea maxim a unui drum de la vrful 4 pn la vrful 6 format din vrfuri distincte dou cte dou ? (6p.)
a. 2. a. c.
b.
c.
Pentru a memora simultan numele i media la informatic a unui elev n variabila e, se poate utiliza declararea: (4p.) struct e{ string nume; float media;} float e; b. d. char e.nume[40]; float e.media; struct {char a[40]; float b;} e;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. strcpy(s,abracadabra); 3. Ce se afi eaz pe ecran n i=0; urma execut rii secven ei de cout<<strlen(s); | printf("%d",strlen(s)); program al turate, n care while (i<strlen(s)) variabila s memoreaz un ir cu if (s[i]=='a') cel mult 12 caractere, iar strcpy(s+i,s+i+1); variabila i este de tip ntreg? else i=i+1; (6p.) cout<<" "<<s; | printf(" %s",s); 4. 5. Cte grafuri neorientate distincte, f r bucle, cu 4 vrfuri, se pot construi? Dou grafuri sunt distincte dac matricele lor de adiacen difer . (4p.) Scrie i un program C/C++ care cite te de la tastatur dou valori naturale nenule m i n (m 10, n 10) i apoi m*n numere naturale nenule cu cel mult 4 cifre fiecare, reprezentnd elementele unei matrice cu m linii i n coloane. Programul determin apoi valorile minime de pe fiecare linie a matricei i le afi eaz pe o linie a ecranului separate prin cte un spa iu.
3
3 6 2 (cea mai mic valoare de pe prima linie a matricei este 3, cea mai mic valoare de pe linia a doua este 6, cea mai mic valoare de pe linia a treia este 2). (10p.)
Varianta 11 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 011 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un algoritm de tip backtracking genereaz , n ordine lexicografic , toate irurile de 5 cifre 0 i 1 cu proprietatea c nu exist mai mult de dou cifre 0 pe pozi ii consecutive. Primele 7 solu ii generate sunt: 00100, 00101, 00110, 00111, 01001, 01010, 01011. Care este a 8-a solu ie generat de acest algoritm? (4p.) b. 01100 c. 01011 d. 01101 a. 01110
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru func ia f, definit al turat, care este valoarea f(1711)? Dar f(23169)? (6p.) int f(int n){ if (n==0) return 0; else if (n%2==0) return n%10+f(n/10); else return f(n/10); }
3.
a) Scrie i defini ia complet a unui subprogram P cu 3 parametri, care prime te prin intermediul primului parametru, a, un tablou unidimensional de cel mult 100 de numere ntregi, prin intermediul celui de al doilea parametru, k, un num r natural (k<101) i furnizeaz prin intermediul celui de al treilea parametru al s u, max, cea mai mare dintre valorile a1, a2,..., ak din tablou. Exemplu: pentru k=5 i tabloul a=(7,3,8,4,6,9), n urma apelului valoarea variabilei max este 8. (4p.) b) S se scrie un program C/C++ care cite te de la tastatur un num r natural n (n<101), apoi n numere ntregi, avnd maximum 4 cifre fiecare i construie te n memorie i afi eaz apoi pe ecran un tablou unidimensional de n numere ntregi, cu proprietatea c valoarea termenului de pe pozi ia i (i=1,2,,n) din acest tablou este egal cu cea mai mare dintre primele i valori din irul dat. Se vor folosi apeluri utile ale subprogramului P. Exemplu: dac se citesc de la tastatur n=12 i valorile 4 6 3 7 8 1 6 2 7 9 10 8 se va afi a pe ecran tabloul 4 6 6 7 8 8 8 8 8 9 10 10. (6p.)
4.
Fi ierul BAC.TXT con ine pe prima linie un num r natural n (0<n 1000) i pe a doua linie, separate prin cte un spa iu, n numere naturale nenule (cu cel mult 9 cifre fiecare). Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz pe ecran cte numere prime con ine irul citit de pe a doua linie a fi ierului. Exemplu: dac fi ierul are con inutul 5 12 3 9 7 1 se va afi a pe ecran valoarea 2 (n irul dat exist dou numere prime i anume 3 i 7).(10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 012 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac variabilele x i y memoreaz dou numere naturale pare consecutive? (4p.) b. (x==2) && (y==4) a. (x-y==2) && (y-x==2) d. ((x-y==2) || (y-x==2)) && (x%2==0) c. x-y==2
Varianta 12 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. a) algoritmul al turat, descris n cite te x (num r natural) y 0 ct timp x 0 execut ct timp x>9 execut x [x/10] y y*10+x cite te x scrie y c) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
S-a notat cu [c] partea ntreag a num rului real c. Scrie i valoarea care va fi afi at dac se citesc, n aceast ordine, numerele 12, 7, 354, 9, 630, 0. (6p.) b) Scrie i un ir de numere ce pot fi citite astfel nct valoarea afi at s fie 321. (4p.)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc fiecare dintre cele dou structuri ct timp...execut , cu cte o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 012 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 0 1 0 1 d. 1 0 1 1 0 1 1 0 0 0
0 1 1 Un graf neorientat cu 6 noduri, numerotate de la 1 la 6, 1 0 1 este reprezentat prin matricea de adiacen al turat . 1 1 0 Care sunt vrfurile care au gradul maxim? (4p.) 0 0 1 1 0 1 1 b. 3 c. 1, 3
Subiectul I
1 1 0 0 0 0 1, 3, 5
a. 2. a. c.
Pentru care dintre urm torii arbori cu r d cin , fiecare avnd 9 noduri, numerotate de la 1 la 9, memora i cu ajutorul vectorilor de ta i, nodul 3 are cei mai mul i descenden i? (4p.) tata=(2,0,2,3,2,3,4,4,3) tata=(4,2,4,0,3,3,3,3,3) b. d. tata=(3,3,4,0,2,3,4,4,4) tata=(0,1,1,3,4,3,4,4,3)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. O variabil e este folosit pentru a memora simultan numele i prenumele unui elev precum i cele trei note ob inute de acesta la un concurs de atletism. tiind c notele sunt numere ntregi cu maximum dou cifre, numele este un ir cu maximum 20 de caractere, prenumele este un ir cu maximum 30 de caractere iar punctajul total al elevului se calculeaz folosind atribuirea: total=e.nota1+e.nota2+e.nota3; scrie i declararea variabilei e. 4. (6p.) Scrie i ce se afi eaz pe ecran n urma char s[13]="informatica"; execut rii secven ei de program al turate, cout<<strlen(s); | printf("%d",strlen(s)); n care variabila s memoreaz un ir cu cel mult 12 caractere, iar variabila i este de for (i=0;i<strlen(s);i++) if (s[i]=='a' || s[i]=='e' || tip ntreg. (6p.) s[i]=='i' || s[i]=='o' || s[i]=='u') s[i]= s[i]+1; cout<<" "<<s; | printf(" %s",s); Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<25) i apoi construie te n memorie o matrice cu n linii i n coloane, numerotate de la 1 la n, ale c rei elemente primesc valori dup cum urmeaz : elementul din linia i i coloana j prime te ca valoare ultima cifr a produsului i*j (1 i n i 1 j n). Programul va afi a matricea astfel construit pe ecran, cte o linie a matricei pe o linie a ecranului, elementele fiec rei linii fiind separate prin cte un spa iu. Exemplu: pentru n=4 se va afi a matricea al turat . (10p.) 1 2 3 4 2 4 6 8 3 6 9 2 4 8 2 6
5.
Varianta 12 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 012 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul P, definit al turat. void P(int &x) tiind c valoarea variabilei ntregi a este nainte { x=x+5; } de apel 4, care este valoarea ei dup apelul P(a)? (4p.) b. 4 c. 9 d. 5 a. 10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru a scrie valoarea 10 ca sum de numere prime se folose te metoda backtracking i se genereaz , n aceast ordine, sumele distincte: 2+2+2+2+2, 2+2+3+3, 2+3+5, 3+7, 5+5. Folosind exact aceea i metod , se scrie valoarea 9 ca sum de numere prime. Care sunt primele trei solu ii, n ordinea gener rii lor? (6p.) Fi ierul BAC.TXT con ine pe prima linie dou valori naturale, m i n (m 100, n 100), pe a doua linie un ir de m numere ntregi, iar pe a treia linie un ir de n numere ntregi. Fiecare dintre aceste iruri sunt ordonate strict cresc tor, iar elementele lor au cel mult 9 cifre fiecare. Numerele de pe acela i rnd sunt separate prin cte un spa iu. Se cere s se afi eze pe ecran cte dintre elementele celui de al doilea ir nu se reg sesc i n primul ir. Exemplu: dac fi ierul are con inutul 67 1 2 3 4 7 20 3 5 7 8 9 20 24 se va afi a valoarea 4 (numerele care respect condi ia sunt 5 8 9 24). a) Descrie i un algoritm de rezolvare a acestei probleme, eficient din punct de vedere al timpului de executare, explicnd n ce const eficien a acestuia. (4p.) b) Scrie i programul C/C++ corespunz tor algoritmului descris. (6p.) 4. Se consider subprogramul nr cu doi parametri, care prime te prin parametrul n un num r natural cu maximum 8 cifre, i prin parametrul c o cifr zecimal . Subprogramul va returna num rul de apari ii ale cifrei c n scrierea num rului n. Exemplu: dac n=15356, iar c=5, subprogramul va returna valoarea 2. a) Scrie i doar antetul subprogramului nr. (3p.) b) Scrie i programul C/C++ care cite te de la tastatur un num r natural n, cu cel mult 8 cifre, i afi eaz pe ecran num rul de cifre distincte ale num rului n. Se vor folosi apeluri utile ale func iei nr. Exemplu: pentru n=15356 se va afi a valoarea 4 deoarece num rul con ine 4 cifre distincte i anume 1, 3, 5 i 6. (7p.)
3.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 013 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre expresiile C/C++ de mai jos este echivalent cu !((a<5)&&(b>7)) expresia al turat ? (4p.) b. !(a<5) || !(b>7) a. (a>=5)&&(b<=7) d. !(a>=5) && !(b<=7) c. !(a<5) && !(b>7)
Varianta 13 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te a,b (numere naturale, a b) k 0 pentru i a,b execut n i; c 0 ct timp n>0 execut dac n%2=1 atunci c c+1 n [n/10] dac c>0 atunci k k+1 scrie k
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) Scrie i num rul ce se va afi a dac pentru a se cite te valoarea 404, iar pentru b se cite te valoarea 413. (6p.) Dac pentru variabila a se cite te valoarea 58 scrie i toate valorile care, citite pentru variabila b, determin afi area num rului 3. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu algoritmul dat n care s se nlocuiasc structura repetitiv pentru...execut cu o structur repetitiv de un alt tip. (6p.)
b)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 013 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care este vectorul "de ta i" pentru arborele cu r d cin din figura al turat ? (6p.)
Subiectul I
a. c. 2.
0 0 5 7 6 5 1 7 4 5 0 4 5 4
b. d.
1 0 0 7 6 5 0 7 4 5 0 4 5 7
Cte grafuri neorientate distincte, cu 5 noduri, numerotate de la 1 la 5, se pot construi, astfel nct nodul 1 s aib gradul 1? Dou grafuri sunt distincte dac matricele lor de (4p.) adiacen sunt diferite. 32 b. 256 c. 15 d. 24
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Pentru a memora denumirea unui medicament i pre ul acestuia se folose te variabila m. Scrie i declararea variabilei m tiind c denumirea medicamentului este un ir cu maximum 30 de caractere, pre ul acestuia este un num r real, iar majorarea cu 10% a pre ului se face folosind urm toarea atribuire: m.pret=m.pret*1.1; 4. (4p.) Scrie i ce se afi eaz pe ecran n urma char s[13]="abcdefghoid"; execut rii secven ei de program al turate, i=0; n care variabila s memoreaz un ir de cel cout<<strlen(s); | printf("%d",strlen(s)); mult 12 caractere, iar variabila i este de tip while (i<strlen(s)) ntreg. if (s[i]=='a' || s[i]=='e' || (6p.) s[i]=='i' || s[i]=='o' || s[i]=='u') strcpy(s+i,s+i+1); else i++; cout<<" "<<s; | printf(" %s",s); Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<40) i apoi construie te n memorie o matrice cu n linii i n coloane, numerotare de la 1 la n, ale c rei elemente primesc valori dup cum urmeaz : - elementele aflate pe diagonala secundar sunt toate nule; - elementele aflate deasupra diagonalei secundare sunt toate 1; - elementele aflate sub diagonala secundar sunt toate 2. Programul afi eaz pe ecran matricea construit , cte o linie a matricei pe 1 1 1 0 cte o linie a ecranului, elementele fiec rei linii fiind separate prin cte un 1 1 0 2 spa iu. 1 0 2 2 Exemplu: pentru n=4 se va afi a matricea al turat . (10p.) 0 2 2 2
5.
Varianta 13 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 013 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Fie subprogramul fct definit al turat. Se tie c a, b i c sunt void fct(....) variabile ntregi. Ini ial a=8, b=31 i c=9, iar dup apelul { x=x+1; y=y-1; fct(a,b,c), valorile celor trei variabile sunt a=9, b=31 i c=39. z=x+y; Care poate fi antetul complet al subprogramului fct? (4p.) } b. void fct(int x,int &y,int &z) a. void fct(int &x,int &y,int &z) d. void fct(int &x,int y,int &z) c. void fct(int x,int y,int z)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Trei b ie i, Alin, Bogdan i Ciprian, i trei fete, Delia, Elena i Felicia, trebuie s formeze o echip de trei copii, care s participe la un concurs. Echipa trebuie s fie mixt (adic s con in cel pu in o fat i cel pu in un b iat). Ordinea copiilor n echip este important deoarece aceasta va fi ordinea de intrare a copiilor n concurs (de exemplu echipa Alin, Bogdan, Delia este diferit de echipa Bogdan, Alin, Delia). Cte echipe se pot forma, astfel nct din ele s fac parte simultan Alin i Bogdan? Da i exemplu de o echip corect format din care s nu fac parte nici Alin i nici Bogdan. (6p.) Scrie i un program C/C++, care cite te de la tastatur un num r natural n (n 1000) i afi eaz pe ecran, separa i prin cte un spa iu, primii n termeni ai irului: 1, 2,1, 3,2,1, 4,3,2,1, ... construit astfel: prima grup este format din num rul 1, a doua grup este format numerele 2 i 1, etc. Grupa a k-a, este format din numerele k, k-1,..., 1. Exemplu: pentru n=8 se vor afi a valorile 1 2 1 3 2 1 4 3. 4. din
3.
(6p.)
Se consider subprogramul P care prime te ca parametri un num r natural n cu maximum 9 cifre i o cifr c i care va returna num rul ob inut din n dup eliminarea tuturor apari iilor cifrei c. a) Scrie i doar antetul subprogramului P. (4p.) b) Pe prima linie a fi ierului text BAC.IN se g sesc, separate prin cte un spa iu, mai multe numere naturale de cel mult 9 cifre fiecare. Scrie i un program C/C++ care cite te numerele din acest fi ier, elimin toate cifrele impare din fiecare dintre aceste numere i apoi scrie n fi ierul text BAC.OUT numerele astfel ob inute, separate prin cte un spa iu. Se vor folosi apeluri utile ale subprogramului P. Dac un num r din fi ierul BAC.IN nu con ine nicio cifr par nenul , acesta nu va mai ap rea deloc n fi ierul de ie ire. (10p.) Exemplu: dac fi ierul BAC.IN con ine numerele 25 7 38 130 45127 0 35 60 15, atunci BAC.OUT va avea con inutul: 2 8 42 60.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 014 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Pentru care dintre perechile de valori (a%100==b%100) && (a>99) || (b>99) de mai jos expresia C/C++ al turat are valoarea 1? (4p.) i b=3 i b=10 b. a=35 i b=35 d. a=1234 i b=12
Varianta 14 - informatica
a. a=1003 c. a=1100
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te x (num r natural) n 0 ct timp x 0 execut y x; c 0 ct timp y>0 execut dac y%10>c atunci c y%10 y [y/10] n n*10+c cite te x scrie n
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) b) Scrie i valoarea ce se va afi a dac se citesc, n aceast ordine, numerele 12, 7, 354, 9, 1630, 0. (6p.) Scrie i un set de date de intrare format din numere pare, care s determine, n urma execut rii algoritmului, afi area valorii 751. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc fiecare structur ct timp...execut , cu cte o structur repetitiv cu test final. (6p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 014 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider un graf neorientat cu 5 noduri, etichetate cu literele a, b, c, d, e, n care orice nod etichetat cu o vocal este adiacent cu toate nodurile etichetate cu consoane i numai cu acestea, iar orice nod etichetat cu o consoan este adiacent numai cu nodurile etichetate cu vocale. Cte muchii are acest graf? (4p.) 4 d. 3
Subiectul I
2.
ntr-o stiv au fost introduse, n aceast ordine, valorile 10, 5, 4, ca n figura al turat . Dac se noteaz cu PUSH(x) opera ia prin care se adaug valoarea x n vrful stivei, i cu POP opera ia prin care se extrage elementul din vrful stivei, care este con inutul stivei dup executarea urm toarelor opera ii? POP; PUSH(7); POP; POP; PUSH(9); (6p.) d. b. c.
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce se afi eaz pe ecran n urma execut rii secven ei de program al turate, n care variabila s memoreaz un ir cu cel mult 10 caractere, iar variabilele i, j i k sunt de tip ntreg? (4p.) char s[11]="abcduecda"; cout<<strlen(s); | printf(%d, strlen(s)); i=0; j=strlen(s)-1; k=0; while (i<j) { if (s[i]==s[j]) k=k+1; i=i+1; j=j-1; } cout<<" "<<k; | printf(" %d",k);
4. 5.
Care sunt etichetele nodurilor de tip frunz ale arborelui cu r d cin , avnd 7 noduri, numerotate de la 1 la 7, i urm torul vector de ta i: (5,1,5,1,0,7,5)? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul cu exact 4 cifre, construie te n memorie i afi eaz apoi pe ecran o matrice avnd 4 linii i 4 coloane, completat astfel: elementele de pe prima coloan a matricei vor fi toate egale cu cifra unit ilor num rului dat, elementele de pe a doua coloan a matricei vor fi toate egale cu cifra zecilor num rului dat, elementele de pe a treia coloan a matricei vor fi toate egale cu cifra sutelor num rului dat, iar elementele de pe a patra coloan a matricei vor fi toate egale cu cifra miilor num rului dat. Matricea va fi afi at pe ecran, cte o linie a matricei pe cte o linie a ecranului, iar elementele fiec rei linii vor fi separate prin cte un spa iu. Exemplu: dac se cite te num rul 1359, matricea construit va fi cea al turat . (10p.)
Varianta 14 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 014 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. Utiliznd metoda backtracking se genereaz permut rile cuvntului info. Dac primele trei 1. solu ii generate sunt: fino, fion, fnio care este cea de-a cincea solu ie? (4p.) a. foin b. fnoi c. foni d. ifon Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Ce valoare are f(4063) pentru func ia f, definit al turat? (6p.) long f(long n) { if (n==0) return 1; else if (n%10==0) return f(n/10); else return (n%10) * f(n/10); }
3.
Fi ierul text BAC.TXT con ine mai multe numere naturale cu cel mult 6 cifre fiecare, cte un num r pe fiecare linie a fi ierului. Scrie i un program C/C++ care afi eaz pe ecran toate numerele din fi ier, n aceea i 11 ordine, cte cinci numere pe fiecare linie, separate prin cte un spa iu, cu excep ia 21 ultimei linii care poate con ine mai pu in de cinci numere. 30 Exemplu: dac fi ierul are con inutul al turat, pe ecran se afi eaz : 40 51 11 21 30 40 51 16 16 17 10 1 (6p.) 17 10 1 Se consider subprogramul prim care prime te ca parametru un num r natural n (n 32000) i care returneaz 1 dac n este num r prim i respectiv 0 n caz contrar. a) Scrie i defini ia complet a subprogramului prim. (4p.) b) Scrie i programul C/C++ care cite te de la tastatur un num r natural nenul n (n<30) i n numere naturale cu cel mult 4 cifre fiecare, apoi le afi eaz pe ecran, numai pe acelea dintre ele care sunt prime. Numerele vor fi afi ate n ordine cresc toare, separate prin cte un spa iu. Programul va utiliza apeluri utile ale subprogramului prim. Exemplu: pentru n=7 i numerele 3 16 41 4 2 7 12, se vor afi a, n aceast ordine, numerele: 2 3 7 41. (10p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 015 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele x i y sunt de tip ntreg, x memornd valoarea 4, iar y valoarea 2. Care dintre expresiile C/C++ de mai jos are valoarea 0? (4p.) b. x+y>x%y+1 c. x-2*y==0 d. !(x==2*y)
Varianta 15 - informatica
a. x-y!=0
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y. a) Scrie i valoarea care se afi eaz dac pentru a se cite te valoarea 25, iar pentru n se cite te valoarea 6. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) cite te a,n (numere naturale) pentru i 1,n execut dac i%2=0 atunci a a-i*i altfel a a+i*i scrie a
b) c) d)
Dac pentru variabila a se cite te valoarea 18, scrie i valoarea care trebuie citit pentru variabila n, astfel nct s se afi eze num rul 8. (6p.) Dac se cite te pentru a valoarea 0, cu ce instruc iune de atribuire trebuie nlocuit atribuirea a a-i*i n algoritmul dat, astfel nct algoritmul ob inut s afi eze valoarea expresiei n2 dac num rul citit pentru n este impar i respectiv 0 dac num rul citit pentru n este par. (4p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 015 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. a. c. i 2 scrie i pe foaia de examen litera care corespunde
C i fra i are nodul 1 din arborele cu r d cin cu 7 noduri, numerotate de la 1 la 7, avnd urm torul vector de ta i: (5,1,5,1,0,7,5)? (6p.) 0 b. 1 c. b. 2 d. 3
Subiectul I (4p.)
BACALAUREAT 2009 - INFORMATIC limbajul C/C++ Stiva este o structur de date ,care poate fi descris astfel: 2. Specializarea Matematic -informatic
ultimul element introdus n stiv ultimul care poate fi extras primul element introdus n stiv ultimul care poate fi extras
este este
este d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce se afi eaz pe ecran n urma i=0; char s[11]="abaemeiut"; execut rii secven ei de program cout<<strlen(s); | printf("%d",strlen(s)); al turate, n care variabila s while (i<strlen(s)) memoreaz un ir cu cel mult 10 if (s[i]=='a' || s[i]=='e' || s[i]=='i' || s[i]=='o' || caractere, iar variabila i este de s[i]=='u) tip ntreg? (4p.) { strcpy(s+i,s+i+1); i=i+1; } else i=i+2; cout<<" "<<s; | printf(" %s",s); Se consider graful neorientat cu 8 noduri, numerotate de la 1 la 8, i muchiile [1,2], [1,6], [1,7], [2,3], [2,6], [3,6], [3,4], [4,5], [4,8], [5,6], [7,8]. Care este gradul minim al unui nod din acest graf? Care sunt nodurile care au acest grad minim? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural cu exact 5 cifre i construie te n memorie o matrice cu 5 linii i 5 coloane, numerotate de la 1 la 5, format astfel: - elementele de pe linia 1, au toate valoarea egal cu cifra unit ilor num rului citit; - elementele de pe linia 2, au toate valoarea egal cu cifra zecilor num rului citit; - elementele de pe linia 3, au toate valoarea egal cu cifra sutelor; - elementele de pe linia 4, au toate valoarea egal cu cifra miilor; - elementele de pe linia 5, au toate valoarea egal cu cifra zecilor de mii. Programul afi eaz pe ecran matricea astfel construit , cte o linie a 1 1 1 1 1 matricei pe cte o linie a ecranului, elementele de pe aceea i linie fiind 3 3 3 3 3 7 7 7 7 7 separate prin cte un spa iu. Exemplu: dac se cite te num rul 28731 matricea construit va fi cea 8 8 8 8 8 al turat . (10p.) 2 2 2 2 2
4.
5.
Varianta 15 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 015 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Cte numere de trei cifre pot fi construite folosind doar cifre pare, astfel nct suma cifrelor pentru fiecare dintre acestea s fie cel pu in 20? (4p.) b. 4 c. 2 d. 6 a. 10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Care este valoarea lui f(34) pentru func ia f definit al turat? Dar valoarea f(f(4))? (6p.) 3. long f(long x) { if (x==4) return x; else { if (x%10==4 || x%10==0) return x+f(x/10); else return x+f(x*2); } }
Scrie i defini ia complet a subprogramului cinci care prime te ca parametru un num r natural nenul n (n<=20) i un tablou unidimensional v cu n elemente numere naturale, fiecare avnd cel mult 9 cifre i returneaz o valoare reprezentnd num rul apari iilor cifrei 5 n scrierea tuturor numerelor din tablou. Exemplu: dac valoarea 4. n=6, iar v=(12, 5, 6535, 1, 86, 573), subprogramul va returna (10p.)
4.
n fi ierul text BAC.IN se g sesc, pe o singur linie, separate prin cte un spa iu, mai multe numere naturale de cel mult 6 cifre fiecare. Se cere s se determine i s se afi eze pe ecran ultimul num r impar din fi ierul BAC.IN. Dac n fi ier nu exist niciun num r impar se va scrie pe ecran mesajul Nu exist numere impare. Exemplu: dac fi ierul BAC.IN con ine valorile: 12 6 25 68 13 8 24 31 42 se va afi a 31. a) Descrie i n limbaj natural un algoritm eficient, din punct de vedere al spa iului de memorie i al timpului de executare, pentru rezolvarea acestei probleme, explicnd n ce const eficien a acestuia. (4p.) b) Scrie i programul C/C++ corespunz tor algoritmului descris. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 016 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele instruc iuni C/C++ determin inserarea cifrei 7 n fa a ultimei cifre a unui num r natural, cu mai mult de 2 cifre, memorat n variabila x? (4p.) b. x=x/10+7+x%10; d. x=(x/10+7)*10+x%10;
Varianta 16 - informatica
a. x=(x/10*10+7)*10+x%10; c. x=(x%10*10+7)*10+x/10;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te n (num r natural nenul) pseudocod. pentru i 1,n-1 execut dac i%2=0 atunci S-a notat cu cu x%y restul mp r irii num rului natural x la scrie # num rul natural, nenul, y. a) Scrie i caracterele care se vor afi a n urma execut rii algoritmului dac se cite te valoarea 4. (6p.) Scrie i o valoare care poate fi citit pentru variabila n, astfel nct caracterul * s fie afi at de exact 66 de ori. (4p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.) pentru j i+1,n execut scrie *
b)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc fiecare structur repetitiv pentru...execut cu cte o structur repetitiv ct timp...execut . (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 016 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Num rul de muchii ale unui graf neorientat cu 12 noduri, n care fiecare nod este adiacent cu exact 11 noduri, este : (4p.) 144 b. 66 c. 78 d. 11
Subiectul I
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Specializarea 2. Care Matematic dintre urm-informatic toarele variante reprezint o declarare corect
pentru o variabil x care memoreaz simultan vrsta n ani mplini i i media la bacalaureat a unui elev? (4p.) struct {float media; int varsta;} x; float x.media; int x.varsta; b. d. struct x {float media; int varsta;}; struct elev {float x.media; int x.varsta};
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. ntr-o stiv au fost introduse n aceast ordine, numerele 5, 7, 3, 8. Preciza i num rul minim de elemente care trebuie extrase din stiv pentru a fi siguri c s-a extras inclusiv elementul cu valoarea 3 i care este elementul aflat n vrful stivei dup extragerea acestui element? (6p.) Ce va afi a secven a strcpy(a,clasa a-XII-a A); al turat , tiind c variabila a cout<<a<<endl; | printf(%s\n,a); memoreaz un ir cu cel mult for(i=0;i<strlen(a);i++) if(a[i]>=a&&a[i]<=z) 100 de caractere, iar cout<<a[i]; | printf(%s,a[i]); variabila i este de tip ntreg? (6p.) 5. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<16), construie te n memorie i afi eaz pe ecran o matrice cu n linii i n coloane, n care elementele de pe cele dou diagonale sunt egale cu 4, iar restul elementelor sunt egale cu 3. Elementele matricei vor fi afi ate pe ecran, cte o linie a matricei pe cte o linie a ecranului cu cte un spa iu ntre elementele fiec rei linii. Exemplu: pentru n=5 se va afi a matricea al turat . (10p.) 4 3 3 3 4 3 4 3 4 3 3 3 4 3 3 3 4 3 4 3 4 3 3 3 4
4.
Varianta 16 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 016 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Func ia F are defini ia al turat . Ce valoare int F(int n) { if(n==0 || n==1) return 1; are F(3)? (4p.) else return 2*F(n-1)+2*F(n-2); } b. 12 c. 6 d. 10 a. 1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Un algoritm genereaz n ordine cresc toare toate numerele de n cifre, folosind doar cifrele 3, 5 i 7. Dac pentru n=5, primele cinci solu ii generate sunt 33333, 33335, 33337, 33353, 33355, preciza i care sunt ultimele trei solu ii generate, n ordinea gener rii. (6p.) Scrie i programul C/C++ care cite te de la tastatur elementele unui tablou unidimensional cu exact 10 numere naturale, mai mici dect 1000, determin i afi eaz pe ecran, separate prin cte un spa iu, num rul de elemente din ir care sunt multipli ai num rului 13 i, n continuare, pozi iile pe care acestea se g sesc n ir. Elementele tabloului sunt numerotate de la 1 la 10. Exemplu: dac irul citit este 2, 6, 26, 14, 130, 11, 8, 23, 39, 52, se vor afi a numerele 4 3 5 9 10. (10p.) Subprogramul cifrak are 2 parametri, n, prin care prime te un num r natural cu maximum 9 cifre, i k, prin care prime te un num r natural (k9). Subprogramul returneaz num rul de cifre ale num rului n care sunt egale cu valoarea k. Exemplu: dac n=233433, iar k=3, subprogramul va returna valoarea 4. a) Scrie i defini ia complet a subprogramului cifrak. (4p.)
3.
4.
b) n fi ierul numere.txt sunt memorate mai multe numere naturale (maximum 1000 de numere cu maximum 9 cifre fiecare). Fiecare linie a fi ierului con ine cte un num r. Scrie i programul C/C++ care, folosind apeluri ale subprogramului cifrak, afi eaz pe ecran, separate prin cte un spa iu, toate numerele din fi ier care con in exact trei cifre de 0. Exemplu: dac fi ierul numere.txt con ine 260070 39008 70009 se vor afi a, nu neap rat n aceast ordine, numerele 260070 70009. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 017 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. y=0; Care este valoarea pe care poate s o aib ini ial variabila ntreag x dac , la sfr itul do { x=x/10; execut rii secven ei al turate, variabila y=y+1; ntreag y are valoarea 2? (4p.) } while(x%100==0); b. 5000 c. 120 d. 0
Varianta 17 - informatica
a. 300
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. a) Scrie i succesiunea de caractere pe care le va afi a algoritmul dac se citesc, n aceasta ordine, valorile 2, respectiv 9. (6p.) cite te x,y (numere naturale) dac x<y atunci x x-y y x+y x y-x Scrie i num rul de perechi de valori apar innd intervalului [1,20], care pot fi citite pentru variabilele x ct timp xy execut i y, astfel nct rezultatul afi at s fie format din exact scrie A 12 caractere ? (4p.) x x-y Scrie i programul C/C++ corespunz tor algoritmului scrie B dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repetitiv ct timp...execut cu o structur repetitiv de alt tip. (6p.)
b)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 017 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Care este gradul maxim posibil i care este gradul minim posibil pentru un nod dintr-un graf cu n noduri, care este arbore? (4p.) n-1 i 1 b. n i 1
Subiectul I
n-1 i 0
2.
Care dintre urm toarele variante reprezint o declarare corect pentru o variabil x care memoreaz simultan codul de identificare al unui candidat la un examen, exprimat ca un num r natural de cel mult 4 cifre i media ob inut de acesta la examen, exprimat ca un num r real? (4p.) struct x { int cod; float media;}; int x.cod ; float x.media; b. d. struct { int cod; float media;} x; struct candidat { int x.cod; float x.media;};
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. ntr-o stiv au fost introduse, n aceast ordine, numerele 5, 7, 3, 8. Scrie i care este num rul minim de elemente care trebuie extrase din stiv pentru a fi siguri c s-a extras inclusiv elementul cu valoarea 7 i care este num rul de elemente r mase n stiv dup extragerea acestui element. (6p.) Ce va afi a secven a program, tiind c memoreaz un ir cu cel caractere, iar variabila i ntreg? al turat de variabila a mult 100 de este de tip (6p.) strcpy(a,bacalaureat); n=strlen(a); cout<<n<<endl;| printf(%d\n,n); cout<<a[0]<<*<<a[n-1];| printf(%c*%c,a[0],a[n-1]);
4.
5.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<20), construie te n memorie i afi eaz pe ecran o matrice cu n linii i n coloane, n care fiecare element de pe diagonala secundar are valoarea n, fiecare element aflat deasupra diagonalei secundare este mai mic cu o unitate dect vecinul aflat pe aceea i linie n dreapta lui i fiecare element aflat sub diagonala secundar este mai mare cu o unitate dect vecinul aflat pe aceea i linie n stnga lui. Elementele matricei vor fi afi ate pe ecran, cte o linie a matricei pe 1 2 3 4 5 cte o linie a ecranului cu cte un spa iu ntre elementele fiec rei linii. 2 3 4 5 6 Exemplu: pentru n=5 se va afi a matricea al turat . (10p.) 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9
Varianta 17 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 017 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Subprogramul f are defini ia void f(long n) al turat . Ce se va afi a n {if (n>9) {cout<<n/100; | printf(%d,n/100); urma apelului f(12345);? f(n/10); (4p.) } } b. 123121 c. 1234123121 d. 123 a. 1231210 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Un algoritm genereaz n ordine descresc toare toate numerele de 5 cifre, fiecare dintre ele avnd cifrele n ordine strict cresc toare. tiind c primele cinci solu ii generate sunt 56789, 46789, 45789, 45689, 45679, preciza i care sunt ultimele trei solu ii generate, n ordinea gener rii. (6p.) Subprogramului interval, cu doi parametri, care prime te prin intermediul parametrilor: - v un tablou unidimensional cu maximum 100 de numere naturale mai mici dect 1000; -n un num r natural nenul mai mic sau egal cu 100 ce reprezint componente ale tabloului primit prin intermediul parametrului v. num rul efectiv de
3.
Subprogramul returneaz num rul componentelor tabloului primit prin intermediul parametrului v care apar in intervalului nchis determinat de primul i respectiv ultimul element al tabloului. Exemplu: dac tabloul are 6 elemente i este de forma (12,27,6,8,9,2), subprogramul va returna valoarea 5. a) Scrie i defini ia complet a subprogramului interval. (10p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2 n 100) i apoi un ir de n numere naturale mai mici dect 1000 i care, folosind apeluri utile ale subprogramului interval, verific dac primul i ultimul element al tabloului au cea mai mic , respectiv cea mai mare valoare din irul citit i afi eaz pe ecran, n caz afirmativ mesajul DA, iar altfel mesajul NU. Exemplu: pentru n=5 i pentru irul 6,16,8,18,20 se va afi a pe ecran mesajul DA. (4p.) 4. Pe prima linie a fi ierului numere.txt sunt memorate cel mult 90 de numere ntregi cu cel mult dou cifre fiecare, separate prin cte un spa iu. Scrie i programul C/C++ care s determine i s afi eze pe ecran, media aritmetic a numerelor strict pozitive din fi ier. Dac fi ierul nu con ine numere strict pozitive se afi eaz pe ecran mesajul NU EXISTA. Exemplu: dac fi ierul numere.txt con ine numerele 6 -26 0 9 valoarea 7.5. -7 se va afi a (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 018 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele instruc iuni C/C++ determin eliminarea cifrei din mijloc a unui num r natural, cu exact 5 cifre, memorat n variabila x? (4p.) b. x=x%1000*100+x/100; d. x=x/1000+x%100;
Varianta 18 - informatica
a. x=x/1000*100+x%100; c. x=x/100*100+x%100;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x,y 2. Se consider algoritmul al turat, descris n pseudocod. (numere naturale) S-a notat cu a%b restul mp r irii num rului natural a la dac x>y atunci num rul natural, nenul, b i cu a b interschimbarea y x valorilor re inute de variabilele a i b. a) Scrie i succesiunea de caractere care se vor afi a n urma execut rii algoritmului dac se citesc, n acest ordine, valorile 2 i 9. (6p.) tiind c pentru variabila y se cite te valoarea 79, scrie i dou valori distincte care pot fi citite pentru variabila x, astfel nct s fie afi at de exact 40 de ori caracterul *. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repetitiv ct timp...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
b)
c) d)
Subiectul II (30 de puncte) - Varianta 018 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Un arbore binar este un arbore cu r d cin n care fiecare nod are cel mult 2 descenden i direc i (fii), iar n l imea arborelui este reprezentat de num rul maxim de muchii ale unui lan elementar ce une te r d cina cu un vrf terminal (frunz ). Pentru un arbore binar cu exact 8 noduri, preciza i care este n l imea minim posibil ? (4p.) 3 d. 2
Subiectul I
2.
Care dintre urm toarele variante reprezint o declarare corect pentru o variabil x care memoreaz simultan coordonatele reale (abscisa i ordonata) ale unui punct n planul xOy? (4p.) struct punct {float ox,oy;} x; struct x {float ox,oy;}; b. d. char x[2]; float x;
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care va fi valoarea elementului aflat n vrful unei stive ini ial vid i care este num rul de elemente r mase n stiv , dup efectuarea, n aceast ordine, a urm toarelor opera ii: se introduce valoarea 3; se introduce valoarea 7; se introduce valoarea 5; se extrage un element; se introduce valoarea 2; se introduce valoarea 4; se extrage un element. (6p.) 4. n secven a al turat , variabila a strcpy(a,informatica); memoreaz un ir cu cel mult 100 de for(i=0;i<strlen(a);i++) if(...) caractere, iar variabila i este de tip cout<<...; | printf(...); ntreg. else Completa i punctele de suspensie din cout<<...; | printf(...); secven astfel nct aceasta s afi eze irul de caractere *nf*rm*t*c*. (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<20), construie te n memorie i afi eaz pe ecran o matrice cu n linii i n coloane, numerotate de la 1 la n. Fiecare element din matrice aflat pe o linie impar va fi egal cu num rul liniei pe care se afl i fiecare element aflat pe o linie par va fi egal cu num rul coloanei pe care se afl . Elementele matricei vor fi afi ate pe ecran, cte o linie a matricei pe 1 1 1 1 1 cte o linie a ecranului cu cte un spa iu ntre elementele fiec rei linii. 1 2 3 4 5 Exemplu: pentru n=5 se va afi a matricea al turat . (10p.) 3 3 3 3 3 1 2 3 4 5 5 5 5 5 5
5.
Varianta 18 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 018 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Func ia f are defini ia al turat . void f(long n, int i) Ce se va afi a n urma apelului {if (i<n%10) {cout<<n%10; | printf(%d,n%10); f(12345,0);? f(n/10,i+1); (4p.) } } b. 543 c. 54 d. 5432 a. 54321
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Un algoritm genereaz , n ordine lexicografic , toate irurile alc tuite din cte n cifre binare (0 i 1). tiind c pentru n=5, primele patru solu ii generate sunt 00000, 00001, 00010, 00011, preciza i care sunt ultimele trei solu ii generate, n ordinea ob inerii lor. (6p.) Subprogramul count are doi parametri, v i n, prin care prime te un tablou unidimensional cu maximum 100 de numere reale i, respectiv, num rul de elemente din tablou. Subprogramul returneaz num rul de elemente din tablou care sunt mai mari sau cel pu in egale cu media aritmetic a valorilor memorate n primul, respectiv ultimul element al tabloului. Exemplu: dac tabloul are 6 elemente i este de forma (12, 7.5, 6.5, 8.5, 7.5, 3), subprogramul va returna valoarea 4 (media valorilor memorate n primul, respectiv ultimul element al tabloului este 7.5 i sunt 4 elemente n tablou mai mari sau cel pu in egale cu 7.5). a) Scrie i defini ia complet a subprogramului count. (10p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2 n 100) i apoi un ir de n numere reale i care, folosind apeluri utile ale subprogramului count, verific dac pe prima i pe ultima pozi ie din ir se afl cele mai mici dou valori (nu neap rat distincte) ale acestuia. Programul va afi a pe ecran mesajul DA n caz afirmativ i NU n caz contrar. (4p.) 4. n fi ierul numere.txt sunt memorate cel pu in 4 i cel mult 90 de numere ntregi cu cel mult patru cifre fiecare, separate prin cte un spa iu. Scrie i un program C/C++ care afi eaz pe ecran patru numere aflate pe pozi ii consecutive n fi ier, care sunt n ordine strict cresc toare. Dac exist mai multe astfel de secven e programul afi eaz una dintre acestea, iar dac n fi ier nu exist astfel de secven e se afi eaz mesajul NU EXISTA. Exemplu: dac fi ierul numere.txt con ine, n aceast ordine, numerele 60 12 15 25 110 45 25 se vor afi a numerele 12 15 25 110. (6p.)
3.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 019 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Cte atribuiri se execut , n total, n p=1; n=279; secven a al turat , dac n i p sunt while (n>=100) variabile de tip ntreg? (4p.) { p=p*10; n=n-100; } b. 6 c. 2 d. 8
Varianta 19 - informatica
a. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te a,b (numere naturale) pseudocod. S-a notat cu cu x%y restul mp r irii num rului natural x la a [a/10]%10*10+a%10 num rul natural nenul y i cu [z] partea ntreag a b [b/10]%10*10+b%10 pentru i a,b execut num rului real z. dac [i/10]=i%10 atunci Scrie i numerele care se vor afi a n urma scrie i%10 a) execut rii algoritmului dac se citesc valorile a=312 i b=1354. (6p.) b) Scrie i cte o valoare care poate fi citit pentru variabila a, respectiv b, astfel nct algoritmul s afi eze exact 2 valori. (4p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura pentru...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 019 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul de muchii care trebuie eliminate dintr-un graf neorientat, complet, cu 7 noduri, astfel nct graful par ial ob inut s fie arbore? (4p.) 15 b. 1 c. 6 d. 21
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ o declarare corect pentru o variabil Subiectul I 2. Care dintre urm toarele variante reprezint x care Specializarea Matematic -informatic memoreaz simultan partea real i partea imaginar a unui num r complex? (4p.)
a. c.
b. d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce va afi a secven a al turat de strcpy(x,bac2008); program, tiind c variabila x for(i=3;i<strlen(x);i++) cout<<x[i]; | printf(%c,x[i]); memoreaz un ir cu cel mult 100 de caractere, iar variabila i este de tip cout<<x<<endl; | printf(%s\n,x); ntreg? (6p.) Care vor fi valorile primului i ultimului element extras dintr-o coad ini ial vid , dac se efectueaz urm toarele opera ii, n aceast ordine: se introduce valoarea 5; se introduce valoarea 4; se extrage un element; se introduce valoarea 2; se introduce valoarea 7; se extrage un element. (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<20), construie te n memorie i afi eaz pe ecran o matrice cu n linii i n coloane, numerotate de la 1 la n, n care fiecare element aflat pe o coloana impar este egal cu suma dintre num rul liniei i num rul coloanei pe care se afl i fiecare element aflat pe o coloan par este egal cu num rul liniei pe care se afl . Elementele matricei vor fi afi ate pe ecran, cte o linie a matricei pe 2 1 4 1 6 cte o linie a ecranului cu cte un spa iu ntre elementele fiec rei linii. 3 2 5 2 7 Exemplu: pentru n=5 se va afi a matricea al turat . (10p.) 4 3 6 3 8 5 4 7 4 9 6 5 8 5 10
4.
5.
Varianta 19 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 019 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Func ia F are defini ia al turat . Ce valoare int F(int x){ are F(18)? (4p.) if (x<=1) return x; else return x+F(x-2); } b. 171 c. 91 d. 18 a. 90
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Un algoritm genereaz n ordine cresc toare toate numerele de n cifre (n<9), cu cifre distincte, care nu au dou cifre pare al turate. Dac pentru n=5, primele cinci solu ii generate sunt 10325, 10327, 10329, 10345, 10347, preciza i care sunt urm toarele trei solu ii generate, n ordinea ob inerii lor. (6p.) Subprogramul aranjare are doi parametri, a i n, prin care prime te un tablou unidimensional cu maximum 100 de numere reale nenule i, respectiv, num rul de elemente din tablou. Subprogramul rearanjeaz elementele tabloului astfel nct toate valorile negative s se afle pe primele pozi ii, iar valorile pozitive n continuarea celor negative. Ordinea n cadrul secven ei de elemente pozitive, respectiv n cadrul secven ei de elemente negative, poate fi oricare. Exemplu: dac este transmis ca parametru un tablou unidimensional cu 6 elemente de forma (12, -7.5, 6.5, -3, -8, 7.5), dup apel, acesta ar putea fi: (-7.5, -3, -8, 12, 6.5, 7.5). a) Scrie i defini ia complet a subprogramului aranjare. (10p.)
3.
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1 n 100) i apoi un ir de n numere reale nenule i care, folosind apeluri utile ale subprogramului aranjare, afi eaz pe ecran, separate prin spa iu, mai nti elementele pozitive din ir i apoi cele negative. Ordinea n cadrul secven ei de elemente pozitive, respectiv n cadrul secven ei de elemente negative, poate fi oricare. Exemplu: pentru n=5 i pentru irul 6,-16.3,8,-18,20.7 se poate afi a pe ecran solu ia 6 8 20.7 -18 -16.3 (4p.) 4. n fi ierul numere.txt sunt memorate mai multe numere reale separate prin cte un spa iu. Scrie i un program C/C++ care verific dac printre numerele din fi ier exist cel pu in 10 numere naturale. Programul afi eaz pe ecran mesajul DA n caz afirmativ i NU n caz contrar. Exemplu: dac fi ierul numere.txt con ine numerele 60 -12.67 15 -1 -22.3 4 se afi eaz mesajul NU. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 020 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este valoarea tip rit de secven a de program C/C++ al turat , tiind c x i y sunt variabile ntregi, iar z este o variabil real ? (4p.) b. 5.833333 x=30; y=5; z=(x+y)/6.0; z=floor(z*100); z=z/100; cout<<z; | printf(%0.2f,z); c. 5.83 d. 583
Varianta 20 - informatica
a. 5
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. cite te n (num r natural) a n%10 S-a notat cu cu x%y restul mp r irii num rului natural x la m a num rul natural nenul y i cu [z] partea ntreag a ct timp n>9 execut num rului real z. n [n/10] Scrie i valoarea pe care o va afi a algoritmul dac se a) b n%10 cite te num rul 16389. (6p.) dac a>b atunci m m*10+b Scrie i cea mai mic valoare de patru cifre distincte b) a b care poate fi citit pentru variabila n, astfel nct s se afi eze valoarea 0. (4p.) c) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
scrie m
Subiectul II (30 de puncte) - Varianta 020 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Suma gradelor interne ale tuturor vrfurilor unui graf orientat este ntotdeauna egal cu: (4p.) num rul valorilor de 1 aflate sub b. produsul gradelor externe ale tuturor vrfurilor grafului
Subiectul I
diagonala principal n matricea sa de BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ adiacen Specializarea Matematic -informatic c. suma tuturor valorilor aflate deasupra d. diagonalei principale n matricea sa de adiacen
externe
ale
tuturor
2. a. c.
Care dintre urm toarele variante reprezint o declarare corect pentru o variabil x care memoreaz simultan num r torul i numitorul unei frac ii ireductibile: (4p.) struct fractie{int n1,n2;} x; struct x{int n1,n2;}; b. d. char x[2]; float x;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care vor fi valorile primului i ultimului element ale unei cozi ini ial vide, dac se efectueaz urm toarele opera ii, n aceast ordine: se introduce valoarea 2; se introduce valoarea 5; se extrage un element; se introduce valoarea 9; se introduce valoarea 7; se extrage un element. (6p.) strcpy(a,Bac 2008 iulie); n secven a al turat , variabila a memoreaz un ir cu cel mult 100 de caractere, iar variabila for(...) cout<<a[i]; i este de tip ntreg. Completa i punctele de | printf(%c,a[i]); suspensie, astfel nct aceasta s afi eze caracterele irului memorat n variabila a, n ordine invers celei n care se g sesc n ir. (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<10), construie te n memorie i afi eaz pe ecran o matrice cu n linii i n coloane, numerotate de la 1 la n, n care fiecare element aflat pe prima linie sau pe prima coloan din matrice este egal cu suma dintre num rul liniei i num rul coloanei pe care se afl , iar fiecare dintre celelalte elemente este egal cu suma dintre elementul vecin aflat pe aceea i linie cu el, dar pe coloana din stnga sa i elementul vecin aflat pe aceea i coloan cu el, dar pe linia de deasupra sa. 5 6 Elementele matricei vor fi afi ate pe ecran, cte o linie a 2 3 4 matricei pe cte o linie a ecranului cu cte un spa iu ntre 3 6 10 15 21 4 10 20 35 56 elementele fiec rei linii. Exemplu: pentru n=5 se va ob ine matricea al turat . 5 15 35 70 126 (10p.) 6 21 56 126 252
4.
5.
Varianta 20 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 020 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Func ia F are defini ia al turat . Ce valoare int F(int x) {if(x!=0) return x+F(x-1); are F(5)? (4p.) else return x;} b. 10 c. 15 d. 6 a. 5
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Un algoritm genereaz n ordine descresc toare, toate numerele de n cifre (n<9), cu cifrele n ordine strict cresc toare, care nu au dou cifre pare al turate. Dac pentru n=5, primele cinci solu ii generate sunt 56789, 45789, 45679, 45678, 36789, preciza i care sunt urm toarele trei solu ii generate, n ordinea ob inerii lor. (6p.) Subprogramul nule are doi parametri: a, prin care prime te un tablou unidimensional cu maximum 100 de numere ntregi, cu cel mult 4 cifre fiecare i n, num rul de elemente din tablou. Subprogramul rearanjeaz elementele tabloului unidimensional astfel nct toate valorile nule s se afle la sfr itul tabloului. Ordinea n cadrul secven ei de elemente nenule poate fi oricare. Tabloul modificat este furnizat tot prin parametrul a. Exemplu: dac n=6, a=(12,0,0,-3,-8,0), dup apel, acesta ar putea fi: a=(12,-3,-8,0,0,0). a) Scrie i defini ia complet a subprogramului nule. (10p.)
3.
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2 n 100) i apoi un ir de n numere ntregi cu cel mult 4 cifre fiecare i care, folosind apeluri utile ale subprogramului nule, verific dac irul con ine cel pu in cinci valori nenule, nu neap rat distincte. n caz afirmativ programul afi eaz cinci dintre acestea, iar altfel mesajul NU EXISTA. Exemplu: pentru n=11 i pentru irul 6,0,0,16,10,0, 8,-18,0,0,20 se poate afi a pe ecran solu ia 6 16 10 8 -18. (4p.) 4. n fi ierul numere.txt sunt memorate cel pu in 4 i cel mult 90 de numere ntregi cu cel mult patru cifre fiecare, separate prin cte un spa iu. Scrie i un program C/C++ care afi eaz pe ecran patru numere aflate pe pozi ii consecutive n fi ier, care sunt n ordine strict descresc toare. Dac exist mai multe astfel de secven e programul afi eaz una dintre acestea, iar dac n fi ier nu exist astfel de secven e se afi eaz mesajul NU EXISTA. Exemplu: dac fi ierul numere.txt con ine, n aceast ordine, numerele 60 120 15 5 2 45 25 se vor afi a numerele 120 15 5 2. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 021 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. v1=0; v2=0; 1. Care dintre expresiile C/C++ de mai jos are for(i=1;i<=3;i++) valoarea 1 dup executarea secven ei de { for (j=1;j<=i;j++) instruc iuni C/C++ al turat , n care toate variabilele v1=v1+1; sunt ntregi? (4p.) for (k=i;k<=3;k++) v2=v2+1; } a. v1>v2 b. v1<v2 c. v1==v2 d. v1+v2==9
Varianta 21 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te a,b,n (numere naturale) dac b=0 atunci pseudocod. scrie gre it S-a notat cu [z] partea ntreag a num rului real z altfel i cu x%y restul mp r irii num rului ntreg x la scrie [a/b] num rul ntreg nenul y. dac n>0 i a%b 0 atunci a) Scrie i valorile care se vor afi a dac se scrie , citesc, n ordine, valorile 17, 6, 4. (6p.) a a%b; i 0 repet b) Scrie i n pseudocod un algoritm echivalent scrie [(a*10)/b] cu cel dat n care s se nlocuiasc structura a (a*10)%b repet ...pn cnd cu o structur i i+1 repetitiv de tip ct timp...execut . pn cnd i=n sau a=0 (6p.) c) d) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.)
Scrie i un set de date de intrare astfel nct, la finalul execut rii algoritmului, valorile Educaia: iei, Cercet rii i Inov rii variabilelor n i i, s Ministerul satisfac condi Centrul n nv mntul Preuniversitar n-i=2 . Na ional pentru Curriculum i Evaluare (4p.)
Subiectul II (30 de puncte) - Varianta 021 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
n secven a de mai jos, variabila a memoreaz un tablou bidimensional cu 4 linii i 4 coloane, numerotate de la 1 la 4, cu elementele reale. Variabila p este real , iar i este de tip ntreg. Care dintre instruc iunile de mai jos poate nlocui p=1; punctele de suspensie astfel nct secven a s for(i=1;i<=4;i++) BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I determine memorarea n variabila p a valorii produsului .... Specializarea Matematic -informatic celor 8 elemente aflate pe diagonalele matricei. (4p.) a. c. 2. a. p=p*a[5-i][i]*a[i][5-i]; p=p*a[i][i]*a[5-i][5-i]; b. d. p=p*a[i][i]*a[i][4-i]; p=p*a[5-i][5-i]*a[i][5-i];
ntr-un graf orientat cu 7 noduri suma gradelor interioare ale tuturor nodurilor este egal cu 10. Care este valoarea sumei gradelor exterioare ale tuturor nodurilor? (4p.) 5 b. 20 c. 10 d. 17
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider declar rile de mai jos, n care variabila ev memoreaz date despre un anumit elev. Scrie i instruc iunea C/C++ prin care se ini ializeaz anul na terii acestui elev cu valoarea 1990. (6p.) struct data{ int zi; int luna; int an; }; 4. struct elev { char nume[30]; struct data data_nasterii; float media; }ev;
Stiva S i coada C memoreaz numere ntregi.n ambele se introduc, n ordine, numerele 1, 2, 3, 4. Se noteaz cu S C opera ia de extragere a unui element din stiva S i ad ugarea acestuia n coada C, iar cu C S opera ia de eliminare a unui element din coada C i introducerea acestuia n stiva S. Dup executarea urm toarei secven e de opera ii: C S; C S; S C; C S; C S; a) care este ultima valoare introdus n stiva stiva S? (3p.) b) care este ultima valoare care a fost ad ugat n coada C? (3p.) Se consider un text alc tuit din cel mult 250 de caractere, n care cuvintele sunt formate doar din litere mici ale alfabetului englez i sunt separate prin unul sau mai multe caractere *. Scrie i un program C/C++ care cite te de la tastatur textul i afi eaz pe ecran, pe cte o linie, toate secven ele formate din cte dou litere identice, ca n exemplu. Exemplu: dac textul citit este: perechile al turate. se afi eaz (10p.) ii ii oo
5.
Varianta 21 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 021 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Urm toarele probleme se refer la mul imea de numere reale M={x1, x2, , xn} (n>1000). Care dintre acestea, comparativ cu celelalte, admite un algoritm care se ncheie dup un num r minim de pa i? (4p.) b. generarea elementelor cartezian M x M minim al produsului
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul, f, definit al turat. a) Ce valoare are f(20)? b) Scrie i o valoare pe care o poate avea x astfel nct f(x)=1. (6p.) 3. int f(int n) { if (n==0) return 0; return n%2+f(n/2); }
Scrie i defini ia complet a unui subprogram i_prim care prime te prin singurul s u parametru, n, un num r natural din intervalul [2,30000] i returneaz diferen a minim p2-p1 n care p1 i p2 sunt numere prime i p1np2. Exemplu: dac n=20 atunci i_prim(20)=4, valoare ob inut pentru p1=19 i p2=23. (10p.) Fi ierul text BAC.TXT con ine pe prima linie dou numere naturale, n i k, separate de un spa iu (3n10000, 2kn/2), iar pe a doua linie un ir de n numere naturale, x1, x2, ..., xn, separate prin cte un spa iu, fiecare num r din acest ir avnd cel mult patru cifre. a) Scrie i un program C/C++ care cite te numerele din fi ier i determin , utiliznd o metod eficient din punct de vedere al timpului de executare, cel mai mic indice i (1in-k+1) pentru care suma termenilor xi, xi+1, ..., xi+k-1 este maxim . Programul afi eaz valoarea lui i pe ecran. Exemplu: pentru fi irul al turat se afi eaz 2, deoarece suma 8 3 maxim se ob ine pentru 9+4+7. (6p.) 2 9 4 7 5 2 9 9 b) Explica i succint, n limbaj natural, metoda utilizat acesteia. la punctul a, justificnd eficien a (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 022 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. (a/b%c<=b)||!(b==a) 1. Care este valoarea expresiei C/C++ al turate dac variabilele ntregi a, b, c au valorile a=20, b=3, c=5? (4p.) b. 1 c. 2 d. true a. 0 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te n (num r ntreg) dac n < 0 atunci pseudocod. n -n S-a notat cu [a] partea ntreag a num rului real a i cu y|x faptul c num rul ntreg x este divizibil cu num rul d 1 ntreg nenul y. pentru i 2,[n/2] execut a) Scrie i valoarea care se va afi a pentru n=45. (6p.) dac i|n atunci d i b) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura pentru...execut cu o structur repetitiv de scrie d tip ct timp...execut . (6p.) c) d) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.)
Varianta 22 - informatica
Scrie i o valoare pentru n astfel nct n urma execut rii algoritmului ob inut prin nlocuirea structurii pentru i 2,[n/2] execut ... cu pentru i [n/2],2,-1 execut ...
s se afi eze aceea i valoare, ca n algoritmul ini ial. Subiectul II (30 de puncte) - Varianta 022 Pentru fiecare dintre itemii 1 r spunsului corect. 1.
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
(4p.)
ntr-o stiv ce memoreaz numere ntregi se introduc, n ordine, urm toarele numere: 1,2,3,4,5,6,7. Cte numere trebuie s elimin m din stiv astfel ca n vrful stivei s se g seasc num rul 5? (4p.) 5 2 3 d. 4
Subiectul I
b. a. BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ c. Specializarea Matematic -informatic 2. Pentru declararea al turat preciza i care
struct elev {char nume[20]; dintre instruc iunile de atribuire este gre it :(4p.) int nota;} e1,e2; e1=e2+1; e1=e2; b. d. e1.nume[2]=x; e1.nota=e2.nota+1;
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce valoare are expresia de mai jos dac alfabet, format numai din litere? strlen(strcpy(s,s+2)) 4. variabila s memoreaz irul de caractere (6p.)
ntr-un graf neorientat cu 6 noduri, numerotate de la 1 la 6, exist cte o muchie ntre oricare dou noduri numerotate cu numere consecutive i cte o muchie ntre nodul numerotat cu 6 i fiecare dintre celelalte noduri. Cte subgrafuri cu exact 3 noduri, toate adiacente dou cte dou , are graful dat? Scrie i pentru fiecare dintre aceste subgrafuri nodurile din care este format. (6p.) Scrie i un program C/C++ care cite te de la tastatur numerele naturale m i n din intervalul [1,20], apoi construie te n memorie i afi eaz pe ecran un tablou bidimensional cu m linii i n coloane astfel nct prin parcurgerea acestuia linie cu linie de sus n jos i fiecare linie de la stnga la dreapta, se ob in n ordine descresc toare toate numerele naturale de la 1 la m*n, ca n exemplu. Fiecare linie a tabloului este afi at pe cte o linie a ecranului, elementele 12 11 10 9 8 7 aceleia i linii fiind separate prin cte un spa iu. Exemplu: pentru m=4 i n=3 se va construi i afi a tabloul al turat. (10p.) 6 5 4 3 2 1
5.
Varianta 22 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 022 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. n timpul procesului de generare a permut rilor mul imii {1,2,,n} prin metoda backtracking, n tabloul unidimensional x este plasat un element xk (2kn). Acesta este considerat valid dac este ndeplinit condi ia: (6p.) b. xkxk-1 d. xkxk-1 i xkxk+1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. void f(char c) 2. Consider m subprogramul recursiv definit { if (c>A) f(c-1); al turat. Ce se va afi a n urma apelului de cout<<c; | printf(%c,c); mai jos? if (c>A) f(c-1); f(B); (4p.) } 3. a) Scrie i defini ia unui subprogram, nz, cu un parametru ntreg, n (0<n12), care returneaz num rul zerourilor de la sfr itul num rului n!. (6p.) b) Scrie i programul C/C++ care cite te de la tastatur un num r natural k (0<k2) i determin , folosind apeluri ale subprogramului nz, cel mai mic num r natural n pentru care n! are cel pu in k zerouri la sfr it. Num rul determinat se afi eaz pe ecran. (4p.) 4. Scrie i programul C/C++ care cite te din fi ierul text BAC.TXT num rul ntreg n (1n10000) i un ir de n perechi de numere ntregi a b (1ab32000), fiecare pereche fiind scris pe o linie nou a fi ierului, cu un spa iu ntre cele dou numere. Programul afi eaz pe ecran pentru fiecare pereche a,b cel mai mare num r natural din intervalul nchis [a,b] care este o putere a lui 2 sau num rul 0 dac nu exist nicio putere a lui 2 n intervalul respectiv. Numerele afi ate pe ecran se scriu n linie, separate prin cte un spa iu. Un num r p este putere a lui 2 dac exist un num r natural k astfel nct p=2k. Exemplu: dac fi ierul BAC.TXT con ine numerele 3 2 69 10 20 19 25 se va afi a: 64 16 0. (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 023 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre expresiile C/C++ de mai jos este echivalent cu cea al turat ? (4p.) !((a<=b && a>=c) || a<=d)
Varianta 23 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) b) Scrie i valoarea care se va afi a dac ordine, valorile 24 i 36. se citesc, n (6p.) cite te a,b (numere naturale nenule) c 0 repet i a%2 j b%2 dac i+j=0 atunci c c+1 a*i+(1-i)*[a/2] b*j+(1-j)*[b/2] cnd i*j=1 c
Scrie i dou valori care trebuie citite (una pentru variabila a i una pentru variabila b) astfel nct, n urma execut rii algoritmului, s se afi eze valoarea 0. (4p.)
c) d)
a b pn Scrie i programul C/C++ corespunz tor algoritmului scrie dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura repet ...pn cnd cu o structur repetitiv cu test ini ial. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 023 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. 2. a. i 2 scrie i pe foaia de examen litera care corespunde irul de caractere s, de (4p.)
Care din urm toarele expresii are valoarea 1 dac i numai dac lungime 10, este ob inut prin concatenarea a dou iruri identice? strcmp(s,s+5)==0 b.
s==strstr(s,s+5)
Subiectul I strcmp(s,strcat(s,s+5))==0
Func ia predefinit care returneaz modulul unui num r ntreg este: sgn b. fabs c. mod d. abs
(4p.)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care este lungimea maxim a unui lan elementar pentru un arbore cu r d cin , cu 7 noduri, numerotate de la 1 la 7, dat de vectorul de ta i: (3,3,0,1,2,2,4)? Scrie i muchiile din care este alc tuit un lan elementar de lungime maxim din acest arbore. (6p.) Pentru declara iile al turate care este struct punct2D { int x; int y;}; num rul maxim de numere ntregi ce pot fi memorate n variabila a? (6p.) struct punct2D a[10][10]; Un tablou bidimensional A cu m linii i n coloane (1m100, 1n100) con ine pe prima linie numerele 1,2,...,n, iar pe prima coloan numerele 1,2,...,m. Celelalte elemente ale tabloului sunt date de rela ia: Ai,j=Ai-1,j+Ai,j-1. Scrie i un program C/C++ care cite te de la tastatur numerele m i n i afi eaz pe ecran ultima cifr a elementului de pe ultima linie i ultima coloan a tabloului. (10p.) Exemplu: pentru m=3 i n=4 se va afi a 5 1 2 3 4 deoarece elementele tabloului A sunt: 2 4 7 11 3 7 14 25
4.
5.
Varianta 23 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 023 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Algoritmul de generare a tuturor numerelor de 3 cifre, toate nenule, este echivalent cu algoritmul de generare a: (6p.) b. combin rilor de 10 cifre luate cte 3 d. produsului cartezian a 3 mul imi de cifre nenule
a. submul imilor unei mul imi cu 3 elemente c. aranjamentelor de 9 elemente luate cte 3
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int suma (int a,int b) 2. Pentru subprogramul suma { if ((a==0) && (b==0)) return 0; definit al turat scrie i valoarea if (a==0) return 1+suma(a,b-1); expresiei suma(3,2). return 1+suma(a-1,b); (4p.) } 3. a) Scrie i defini ia complet a subprogramului shift care prime te prin intermediul parametrului n o valoare natural nenul (n100), iar prin intermediul parametrului x, un tablou unidimensional cu maximum 100 de componente. Fiecare component a acestui tablou este un num r ntreg care are cel mult 4 cifre. Subprogramul permut circular cu o pozi ie spre stnga, primele n elemente ale tabloului x i furnizeaz tabloul modificat tot prin parametrul x. Exemplu: dac nainte de apel n=4 i x=(1,2,3,4), dup apel x=(2,3,4,1). (4p.) b) Scrie i un program C/C++ care cite te de la tastatur o valoare natural nenul n (n100), apoi cele n elemente ale unui tablou unidimensional x. Programul va inversa ordinea elementelor tabloului x folosind apeluri utile ale subprogramului shift i va afi a pe ecran, separate prin cte un spa iu, elementele tabloului rezultat n urma acestei prelucr ri. Exemplu: dac se citesc pentru n valoarea 5, iar tabloul x este (1,2,3,4,5) programul va determina ca x s devin (5,4,3,2,1). (6p.) 4. Fi ierul text BAC.TXT con ine pe prima linie un num r natural nenul n (1n1000), iar pe fiecare dintre urm toarele n linii cte dou numere ntregi a i b (1ab32000), fiecare pereche reprezentnd un interval nchis de forma [a,b]. Scrie i un program C/C++ care cite te numerele din fi ier i determin un interval dintre cele citite care con ine cel mai mare num r de numere ntregi i afi eaz pe o linie a ecranului, separate printr-un spa iu, numerele care reprezint capetele intervalului determinat. n cazul n care sunt mai multe intervale care ndeplinesc aceast proprietate, se vor afi a informa iile referitoare la acel interval la care num rul care reprezint cap tul din dreapta este minim. 4 Exemplu: dac fi ierul BAC.TXT are con inutul al turat, pe ecran se va 17 24 afi a: 8 15 (pentru c num rul maxim de numere ntregi aflate ntr-un -2 3 interval este 8. Sunt dou intervale care con in 8 numere: [17;24] i 9 15 [8;15]. Dintre acestea, [8;15] are cap tul din dreapta cel mai mic). 8 15 (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 024 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care din urm toarele afirma ii despre operatorii din C/C++ este fals ? b. % este operator aritmetic d. <= este operator logic (4p.) a. > este operator rela ional c. && este operator logic
Varianta 24 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. a) b) algoritmul al turat, descris n cite te a,b (numere naturale) p a; q b dac p=0 sau q=0 atunci p p*q; q p*q ct timp pq execut dac p<q atunci p p+a altfel q q+b
Scrie i valoarea care se va afi a pentru a=15 i b=25. (6p.) Scrie i toate valorile care, citite pentru b, determin afi area valorii 60, dac pentru a s-a citit valoarea 10. (6p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.)
c) d)
Scrie i un algoritm echivalent n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv cu test final. (4p.) scrie p
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 024 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 Subiectul 0 0 0 0I d. (3 , 2) 0 0 0 0 1
Care dintre urm toarele arce trebuie ad ugat unui graf orientat cu 5 noduri, numerotate de la 1 la 5, reprezentat prin matricea de adiacen al turat , astfel nct n acest graf s existe cel pu in un drum ntre oricare dou vrfuri? (4p.)
c.
(5 , 3)
2. a. b. c. d.
Care din urm toarele propriet i este adev rat pentru un graf orientat cu n vrfuri i n arce (n>3) care are un circuit de lungime n: (4p.) exist un vrf cu gradul intern n-1 pentru orice vrf gradul intern i gradul extern sunt egale graful nu are drumuri de lungime strict mai mare dect 2 gradul intern al oric rui vrf este egal cu 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Stiva S i coada C memoreaz numere ntregi. n ambele se introduc, n ordine, numerele 1, 2, 3, 4. Se noteaz cu S C opera ia de extragere a unui element din stiva S i ad ugarea acestuia n coada C, iar cu C S opera ia de eliminare a unui element din coada C i introducerea acestuia n stiva S. Care este ultima valoare introdus n stiva S i care este ultima valoare care a fost ad ugat n coada C la executarea urm toarei secven e de opera ii : S C; C S; C S; S C; C S; (6p.) Scrie i o secven de instruc iuni C/C++ care s ini ializeze elementele unui tablou bidimensional A, cu n linii i n coloane, 1<n5, cu numerele naturale 1,2,...,n, astfel nct pe fiecare linie sau coloan s existe toate numerele din mul imea {1,2,...,n}. (6p.) Scrie i un program C/C++ care cite te de la tastatur dou iruri de caractere formate din maximum 100 litere mici ale alfabetului englez i afi eaz pe ecran cel mai lung sufix comun al celor dou iruri de caractere. Dac cele dou iruri nu au niciun sufix comun, atunci programul va afi a pe ecran mesajul NU EXIST . Exemplu: pentru irurile marina i elena se va afi a na (10p.)
4.
5.
Varianta 24 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 024 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Genernd irurile de maximum 3 caractere distincte din mul imea {A,B,C,D,E}, ordonate lexicografic, ob inem succesiv: A, AB, ABC, ABD,.Ce ir va fi generat imediat dup BAE? (4p.) b. CAB d. BEA
a. BCA c. BC
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int f(int n) 2. Func ia f are defini ia al turat . { if (n<=9) return 0; if (n%4==0) return 0; a) Ce valoare are f(17)? (3p.) return 1+f(n-3); b) Ce valoare are f(22)? (3p.) } 3. a) Scrie i defini ia complet a subprogramului p care prime te prin intermediul parametrului n un num r natural nenul (n 100), iar prin intermediul parametrului x un tablou unidimensional cu n componente ntregi, de maximum patru cifre fiecare. Subprogramul furnizeaz prin intermediul parametrului mini valoarea minim din tabloul x, prin intermediul parametrului maxi valoarea maxim din x, iar prin intermediul parametrului sum suma elementelor din tabloul x. (6p.) b) Scrie i un program C/C++ care cite te de la tastatur o valoare natural nenul n, (3 n100), apoi cele n elemente, distincte, ale unui tablou unidimensional x. Fiecare dintre aceste elemente este un num r natural avnd cel mult patru cifre. Folosind apeluri utile ale subprogramului p, programul calculeaz i afi eaz pe ecran media aritmetic a elementelor care ar r mne n tabloul x dac s-ar elimina valoarea minim i valoarea maxim din tablou. Valoarea afi at va avea cel mult 3 cifre dup virgul . Exemplu: dac se citesc pentru n valoarea 5, iar pentru tabloul x valorile (1,9,4,8,5), programul va afi a una dintre valorile 5.667 sau 5.666. (4p.) 4. Fi ierul text bac.txt con ine pe prima linie num rul natural n, 1n10000, pe a doua linie, dou numere ntregi a i b (ab) separate de un spa iu, iar pe urm toarele n linii un ir de n numere ntregi. Fiecare dintre cele n numere, precum i valorile a i b, au cel mult patru cifre. 4 Scrie i un program C/C++ care afi eaz pe ecran cel mai mic num r natural 8 35 din intervalul nchis [a,b] care se g se te n irul dat. Dac nu exist un -2 astfel de num r, programul afi eaz textul NU. 72 Exemplu: dac fi ierul bac.txt are con inutul al turat, programul afi eaz 14 valoarea 14. (10p.) 25
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 025 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. a ... 1. n secven a pseudocod al turat , toate variabilele b ... memoreaz numere naturale. Cu ce valori pot fi pentru i 3,7 execut nlocuite punctele de suspensie din secven astfel c a+b; x a; a b; b c nct, la finalul execut rii secven ei s se afi eze, n acest ordine, valorile 16 i 41? a. 1 i 1 b. 3 i 4 (4p.) scrie x,c d. 2 i 7
Varianta 25 - informatica
c. 5 i 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. cite te a,b,c S-a notat cu y|x faptul c x este divizibil cu y. (numere naturale nenule) dac a>b atunci a) Scrie i care sunt valorile ce se vor afi a pentru a=10, t a; a b; b t b=20 i c=6. (6p.) b) Scrie i un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp...execut cu o structur pentru...execut . (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i o formul care s afi eaz dac ab. calculeze cte numere se (4p.) ct timp ab execut dac c|a atunci scrie a a a+1
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 025 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. 2. a. i 2 scrie i pe foaia de examen litera care corespunde
Structura de date la care se aplic principiul primul venit, primul ie it: (first in, first out) este: (4p.) lista nl n uit b. stiva graf orientat
Subiectul I
Un graf neorientat cu 5 noduri are gradele nodurilor egale cu 1,2,2,1,x. Pentru ce valoare a lui x graful este arbore? (4p.) x=2 b. x<2 c. x>2 d. nicio valoare
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Scrie i n C/C++ o instruc iune de atribuire n urma c reia o variabil real y va memora valoarea expresiei de mai jos pentru variabila ntreag nenul x.
(6p.) 4. Scrie i secven a de instruc iuni care permite afi area pe ecran a mesajului Corect dac un ir de maximum 100 caractere, re inut de variabila s, con ine caractere de tip cifr , sau mesajul Incorect n caz contrar. (6p.) Se consider un tablou bidimensional cu m linii i n coloane (1m100,1n100), ale c rui elemente apar in mul imii {0,1,2}. Scrie i un program C/C++ cite te de la tastatur valorile m, n i elementele tabloului i care afi eaz pe ecran numerele de ordine ale coloanelor pentru care produsul elementelor situate pe ele, este maxim. Liniile i coloanele tabloului se numeroteaz de la 1 la m respectiv de la 1 la n. Numerele se vor afi a separate prin cte un spa iu. Exemplu: pentru m=4 i n=4 i tabloul al turat se va afi a, nu neap rat n 2 1 1 0 1 1 1 1 aceast ordine: 2 2 2 1 1 2 (10p.) 1 2 1 1
5.
Varianta 25 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 025 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un program cite te o valoare natural nenul impar pentru n i apoi genereaz i afi eaz n ordine cresc toare lexicografic toate combina iile formate din n cifre (valori ntre 0 i 9) care ndeplinesc urm toarele propriet i: - ncep i se termin cu 0; - modulul diferen ei ntre oricare dou cifre al turate dintr-o combina ie este 1. Astfel, pentru n=5, combina iile afi ate sunt, n ordine, urm toarele: 01010, 01210. Dac se ruleaz acest program i se cite te pentru n valoarea 7, imediat dup combina ia 0101210 va fi afi at combina ia: (4p.) b. 0123210 c. 0111210 d. 0121010
a. 0121210
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int f(int n) 2. Func ia f are defini ia al turat : { if (n<=0) return -1; if (n % 2==0) return 0; a) Ce valoare are f(16)? (3p.) if (n % 3==0) return 0; b) Scrie i o valoare de dou cifre pe care o return 1+f(n-10); poate avea n astfel nct f(n) s fie egal } cu 2. (3p.) 3. Scrie i defini ia complet a subprogramului f care prime te prin intermediul parametrului n un num r natural nenul (2 n 9), iar prin intermediul parametrului a, un tablou unidimensional care con ine n valori naturale distincte, fiecare dintre acestea avnd cel mult patru cifre. Subprogramul interschimb cel mai mic element par i cel mai mare element impar din tabloul a i furnizeaz tabloul modificat tot prin parametrul a. Dac tabloul nu con ine niciun element par sau niciun element impar, el va r mne neschimbat. Exemplu: dac subprogramul se apeleaz pentru n=6 i pentru a avnd valorile (2,3,17,6,1,24), tabloul va avea n urma apelului urm toarea form : (10p.) (17,3,2,6,1,24). Fi ierul text NUMAR.TXT con ine pe prima linie un num r real pozitiv x care are cel mult dou cifre la partea ntreag i cel mult apte cifre dup punctul zecimal. a) Scrie i un program C/C++ care, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al memoriei utilizate, afi eaz pe ecran, separate printr-un spa iu, dou numere naturale al c ror raport este egal cu x i a c ror diferen absolut este minim . Exemplu: dac fi ierul con ine valoarea al turat , se vor afi a pe ecran 0.375 numerele 3 8. (6p.) b) Descrie i n limbaj natural metoda utilizat i explica i n ce const eficien a ei. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 026 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este cea mai mic valoare pe care o poate avea expresia C/C++ x/7-x%7 al turat dac variabila x, de tip int, memoreaz un num r natural cu o singur cifr ? (4p.) b. 1.14 c. -6 d. 1
Varianta 26 - informatica
a. 0
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y. a) b) c) Scrie i valorile care se afi eaz pentru n=11. (6p.) citeste n (num r natural) c 0 pentru i 1,n execut c (c+1)%10 scrie c
Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura pentru...execut cu o structur repetitiv de un alt tip. (6p.) Scrie i num rul de valori distincte, numere naturale nenule, cu cel mult dou cifre fiecare, care pot fi citite pentru n, astfel nct cifra 1 s fie afi at de exact 3 ori. (4p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 026 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Pentru graful neorientat din figura al turat , care este num rul de muchii ale celui mai lung lan elementar, ce are ca extremit i nodurile 1 i 3 ? (4p.)
Subiectul I
a.
b.
c.
d.
2.
Care este nodul ce poate fi ales ca r d cin a arborelui din figura al turat , astfel nct r d cina s aib 3 descenden i direc i (fii) ? (4p.) 3 b. 4 c. 6 d. 1
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care va fi irul de caractere afi at dup executarea char s[]=raton; secven ei al turate , n care variabila s memoreaz un s[1]=s[3]; ir cu cel mult 5 caractere? (6p.) cout<<s; | printf(%s,s); 4. ntr-o stiv care memoreaz numere, o valoare x poate fi ad ugat numai dac n vrful stivei se afl un element cu o valoare strict mai mare dect x; n caz contrar sunt eliminate toate elementele care nu ndeplinesc aceast condi ie i apoi se adaug valoarea x. Exemplu: pentru stiva din fig.1, ad ugarea elementului 11 este precedat de eliminarea elementelor ce con in valorile 2 i 10. Dup ad ugare, stiva va avea con inutul din fig.2. Dac stiva este ini ial vid , care este num rul elementelor aflate n aceast stiv dup ad ugarea, respectnd condi iile de mai sus, n ordine, a numerelor 20, 5, 16, 9, 3, 7, 5, 4, 8 ? (6p.) 5. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2 n 9) i elementele unui tablou bidimensional A cu n linii i n coloane, care memoreaz numere naturale mai mici dect 10, i afi eaz pe ecran pentru fiecare coloan , produsul elementelor de pe acea coloan . Valorile afi ate vor fi separate prin cte un spa iu. Exemplu: pentru matricea din figura al turat se afi eaz , nu neap rat n aceast ordine, valorile 0 24 20 12 (10p.) 1 9 8 0 1 2 6 2 2 5 1 2 3 4 1 1
Varianta 26 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 026 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Pentru generarea n ordine cresc toare a numerelor cu n cifre formate cu elementele mul imii {0,2,9} se utilizeaz un algoritm backtracking care, pentru n=2, genereaz , n ordine, numerele 20,22,29,90,92,99. Dac n=4 i se utilizeaz acela i algoritm, care este num rul generat imediat dup num rul 2009 ? (4p.) b. 2020 c. 2090 d. 2010 a. 2002
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. void afis (int n) 2. Subprogramul afis este definit al turat. { cout<<n; | printf(%d,n); Ce se afi eaz ca urmare a apelului afis(4); ? if(n>0){afis(n-1); (4p.) cout<<n; | printf(%d,n);} } 3. Scrie i programul C/C++ care cite te de la tastatur dou numere naturale nenule n i k (n 100, k 100) i afi eaz pe ecran, n ordine descresc toare, cei mai mici k multipli naturali nenuli ai num rului n. . Numerele afi ate sunt separate prin cte un spa iu. Exemplu: pentru n=6 i k=5 se afi eaz 30 24 18 12 6. (6p.) 4. a) Scrie i defini ia complet a unui subprogram sterge, cu trei parametri, care: - prime te prin parametrii: - v un tablou unidimensional cu maximum 100 de elemente ntregi din intervalul [-1000;1000] - n o valoare natural reprezentnd num rul de elemente din tabloul v - i o valoare natural cu 1 i n - elimin din tabloul v elementul v[i] i actualizeaz valoarea lui n. Tabloul modificat este furnizat tot prin parametrul v. (10p.) b) Fi ierul text NUMERE.IN con ine pe prima linie un num r natural nenul n (1 n 100) i pe urm toarea linie n numere ntregi din intervalul [-1000;1000], separate prin cte un spa iu. Scrie i un program C/C++ care cite te din fi ierul NUMERE.IN num rul natural n, construie te n memorie un tablou unidimensional v cu cele n numere ntregi aflate pe linia a doua n fi ier i utilizeaz apeluri utile ale subprogramului sterge pentru a elimina din tablou un num r minim de elemente astfel nct s nu existe dou elemente al turate cu aceea i valoare. Elementele tabloului ob inut se afi eaz pe ecran, separate prin cte un spa iu. Exemplu: Dac fi ierul NUMERE.IN are con inutul: 12 10 10 2 2 19 9 9 9 9 15 15 15 atunci se afi eaz 10 2 19 9 15. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 027 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. x%2+(x+1)%2 n expresia C/C++ al turat variabila x este de tip ntreg. Aceast expresie: (4p.) a. are valoarea 1 pentru orice num r natural x. b. are valoarea 1 dac i numai dac x este un num r par. c. are valoarea 1 dac i numai dac x este un num r impar. d. are o valoare strict mai mare dect 1 pentru orice num r natural x. Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [x] partea ntreag a num rului real x. a) b) c) Scrie i valoarea care se afi eaz numerele a=493 i b=1836. dac se citesc (6p.) citeste a,b (numere naturale) c 0 d 0 p 1 ct timp a+b+c>0 execut c a%10+b%10+c d d+(c%10)*p p p*10 a [a/10] b [b/10] c [c/10]
Varianta 27 - informatica
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de scrie d un alt tip. (6p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, care s NU foloseasc structuri repetitive sau recursive. (4p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 027 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 0 0 1 0 1 0 1 1 0 0 0 1 1 0 0 0
Care este num rul arcelor ce au ca extremitate ini ial vrful 4, n graful orientat cu 4 vrfuri, numerotate de la 1 la 4, reprezentat prin matricea de adiacen al turat ? (4p.) 1 d.
Subiectul I
2. a.
Care este num rul nodurilor de tip frunz din arborele cu r d cin , cu 8 noduri, numerotate de la 1 la 8, reprezentat prin vectorul de ta i (2,0,6,2,4,4,5,5)? (6p.) 3 b. 4 c. 5 d. 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. n declararea al turat , cmpurile x struct fractie { int x,y; num r torul, respectiv numitorul unei frac ii de forma . Scrie i instruc iunile prin executarea c rora se memoreaz n variabila } F,G,H; H frac ia ob inut prin adunarea frac iilor re inute n F i G. (6p.) i y ale nregistr rii reprezint Se consider o coad n care ini ial au fost introduse, n aceast ordine, elementele
4.
1,2,3,4,5,6: . Dac se noteaz cu AD(x) opera ia prin care se adaug un element cu informa ia x n coad i cu EL() opera ia prin care se elimin un element din coad , care este elementul aflat n mijlocul cozii i care este suma elementelor aflate n coad dup executarea secven ei de opera ii: EL(); AD(7); AD(8); EL(); EL(); 5. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<=10) i construie te n memorie o matrice A cu n linii i n coloane n care toate elementele de pe prima linie, prima i ultima coloan au valoarea 1 i oricare alt element Aij din matrice este egal cu suma a 3 elemente situate pe linia i-1: primul aflat pe coloana j-1, al doilea pe coloana j, iar al treilea pe coloana j+1, ca n exemplu. Matricea va fi afi at pe ecran, linie cu linie, numerele de pe aceea i linie fiind separate prin cte un spa iu. Exemplu: pentru n=5 , se afi eaz matricea al turat . (10p.) (4p.)
Varianta 27 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 027 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Pentru generarea n ordine cresc toare a mul imii {0,2,8} se utilizeaz un algoritm ordine, numerele 20,22,28,80,82,88. Dac n=4 i se utilizeaz acela i algoritm, cu 100? b. 90 a. 8 numerelor cu n cifre formate cu elementele backtracking care, pentru n=2, genereaz , n preciza i cte numere generate sunt divizibile (4p.) c. 6 d. 10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Subprogramul scrie este definit void scrie (int x,int y) { if(x<y) al turat. { scrie(x+1,y-1); Ce se afi eaz ca urmare a apelului cout<<(x+y)/2; | printf(%d,(x+y)/2); scrie(1,7); ? (6p.) } } 3. Scrie i defini a complet a subprogramului nreal cu doi parametri x i y, numere naturale din intervalul [1;1000] ce returneaz un num r real cu proprietatea c partea sa ntreag este egal cu x, iar num rul format din zecimalele sale, n aceea i ordine, este egal cu y. Exemplu: pentru x=12 i y=543, subprogramul returneaz valoarea 12.543. (10p.) 4. Fi ierul text NUMERE.IN con ine pe prima linie un num r natural nenul n (2 n 100) i pe urm toarea linie n numere reale pozitive, aflate n ordine strict cresc toare, separate prin cte un spa iu. a) Scrie i un program C/C++ care, utiliznd un algoritm eficient din punct de vedere al memoriei utilizate, determin i afi eaz pe ecran, separate printr-un spa iu, dou numere naturale x i y cu proprietatea c toate cele n numere aflate pe linia a doua n fi ierul NUMERE.IN se g sesc n intervalul [x;y] i diferen a y-x este minim . Exemplu: dac fi ierul NUMERE.IN are con inutul: 6 3.5 5.1 9.2 16 20.33 100 atunci se afi eaz 3 100 b) Descrie i n limbaj natural metoda utilizat i explica i n ce const eficien a ei. (6p.) (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 028 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Cte valori distincte, numere naturale, poate primi variabila x pentru ca valoarea expresiei x/2/2 scris n C/C++ s fie egal cu 1? (4p.) b. 4 c. 2 d. 0 a. 1
Varianta 28 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. S-a notat cu [x]partea ntreag a num rului real x. a) b) c) Scrie i valoarea afi at 120.12. dac se cite te num rul (6p.) citeste x (num r real pozitiv) y [x] x x-y ct timp x [x] execut x x*10 dac x=y atunci scrie 1 altfel scrie 2
Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un alt tip. (6p.) Scrie i un num r real, cu exact dou cifre la partea ntreag , care poate fi citit pentru x, astfel nct algoritmul s afi eze valoarea 1. (4p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 028 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul minim de muchii ce pot fi eliminate din graful al turat astfel nct n graful par ial rezultat s existe exact un vrf de grad 0? (6p.)
Subiectul I
a. 2. a.
b.
c.
d.
ntr-un arbore cu r d cin fiecare nod neterminal are exact 2 descenden i direc i (fii). Care este num rul de noduri din arbore dac acesta are 8 frunze? (4p.) 8 b. 7 c. 15 d. 10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. ntr-un tablou bidimensional A cu n linii i n coloane, numerotate de la 1 la n, not m cu Aij elementul aflat pe linia i i coloana j (1 i n, 1 j n). Care este valoarea expresiei j-i dac elementul Aij este situat pe diagonala principal a tabloului A? (4p.) 4. Se consider o stiv n care ini ial au fost introduse, n aceast ordine, elementele 1,2,3,4,5,6 (ca n imaginea al turat ). Dac se noteaz cu PUSH x opera ia prin care se adaug un element cu informa ia x n stiv i cu POP opera ia prin care se elimin un element din stiv , care este elementul aflat n mijlocul stivei i care este suma elementelor aflate n stiv dup executarea secven ei de opera ii: POP; PUSH 7; PUSH 8; POP; POP; ? (6p.) 5. irul de caractere s2 este clona irului de caractere s1 dac se poate ob ine din s1 prin eliminarea tuturor apari iilor unei singure vocale. Se consider vocal orice liter din mul imea {a,e,i,o,u}. Scrie i programul C/C++ care cite te de la tastatur un cuvnt format din cel mult 20 litere mici ale alfabetului englez i afi eaz pe ecran, toate clonele acestui cuvnt, fiecare pe cte o linie a ecranului. Exemplu: pentru cuvntul informatica se afi eaz , nu neap rat n aceast nformatca ordine, clonele scrise al turat. (10p.) infrmatica informtic
Varianta 28 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 028 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Generarea tuturor cuvintelor de trei litere mici, nu neap rat distincte, ale alfabetului englez, se poate realiza cu ajutorul unui algoritm echivalent cu cel de generare a: (4p.) b. combin rilor a. produsului cartezian c. aranjamentelor d. permut rilor
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Subprogramul f este definit al turat. Ce valoare are f(4,8)? (4p.) int f (int x,int y) { if(x<=y)return 1+f(x+1,y); return 0; }
3. Se consider un ir de n numere reale. Un num r x din acest ir se nume te median dac este egal cu media aritmetic a celorlalte n-1 numere din ir. Exemplu: elementul x=5 este median pentru irul 2 5 6 7 deoarece 5=(2+6+7)/3. Scrie i un program C/C++ care cite te de la tastatur un num r natural n din intervalul [2,50] i apoi un ir de n numere reale i afi eaz pe ecran cte dintre elementele irului sunt mediane. (6p.) 4. a) Scrie i defini ia complet a unui subprogram primul, care - prime te prin singurul s u parametru, a, o valoare natural din intervalul [2,10000] - returneaz o valoare natural reprezentnd cel mai mic divizor al num rului a mai mare strict dect 1. (6p.) b) Fi ierul text NUMERE.IN con ine pe prima linie un num r natural nenul n (1 n 100) i pe urm toarea linie n numere naturale din intervalul [2,10000] separate prin cte un spa iu. Un num r natural n se nume te aproape prim dac este egal cu produsul a dou numere prime distincte. De exemplu, num rul 14 este aproape prim pentru c este egal cu produsul numerelor prime 2 i 7. Scrie i un program C/C++ care determin i afi eaz pe ecran (dac exist ), separate prin cte un spa iu, folosind apeluri utile ale subprogramului primul, numerele aproape prime de pe linia a doua a fi ierului NUMERE.IN. Exemplu: dac fi ierul NUMERE.IN are con inutul: 6 100 14 21 8 77 35 atunci se afi eaz pe ecran 14 21 77 35 (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 029 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac num rul natural nenul memorat n variabila x, de tip int, este divizibil cu 100? (4p.) b. x/100==0 d. x%10+x%10/10==0
Varianta 29 - informatica
a. x%10+x/10%10==0 c. x%10+x/10==0
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. a) b) c) Scrie i valoarea care se afi eaz dac se citesc numerele n=6 i m=12. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i dou perechi distincte de numere ce pot fi introduse pentru n i m astfel nct s se afi eze valoarea 10, n urma execut rii algoritmului, pentru fiecare dintre perechi. (6 citeste n,m (numere naturale) ct timp n m execut n n+1 m m-1 ct timp m<n execut m m+1 n n-1
d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, care s scrie n NU foloseasc structuri repetitive sau recursive. (4p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 029 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. 2. 4 b. 5 i 2 scrie i pe foaia de examen litera care corespunde (4p.)
Care este num rul maxim de noduri de grad 3 ntr-un graf neorientat cu 5 noduri? c. 3 d. 2 Care dintre noduri trebuie ales ca r d cin n arborele din figura al turat (6p.)
BACALAUREAT 2009 INFORMATIC , limbajul C/C++ i direc i (fii)? astfel nct s - existe un nod cu 3 descenden Specializarea Matematic -informatic
Subiectul I
a.
b.
c.
d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care va fi irul de caractere afi at pe ecran dup executarea secven ei al turate, n care variabila s memoreaz un ir cu cel mult 4 caractere, iar variabila t un caracter? (4p.) Se consider o coad char s[]=arac; t=s[1]; s[1]=s[3]; s[3]=t; cout<<s; | printf(%s,s); ordine, elementele
4.
1,2,3,4,5,6,7,8,9,10: . Dac se noteaz cu AD(x) opera ia prin care se adaug un element cu informa ia x n coad i cu EL() opera ia prin care se elimin un element din coad , care este valoarea memorat n primul element al cozii dup executarea secven ei de opera ii: EL();EL();AD(1); AD(2); EL();EL(); ? (6p.) 5. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1 n 6) i elementele unui tablou bidimensional A cu n linii i n coloane, care memoreaz numere naturale nenule mai mici dect 100, i afi eaz pe ecran produsul numerelor pivot pentru matricea A. Un num r natural x este pivot pentru matricea A dac nmul ind fiecare element de pe prima coloan cu num rul x, se ob in, n aceea i ordine, elementele unei alte coloane din matrice. Exemplu: pentru matricea din figura al turat se afi eaz 8. (10p.)
Varianta 29 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 029 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. n cte dintre permut rile elementelor mul imii {I,N,F,O} vocalele apar pe pozi ii consecutive? (4p.) b. 6 c. 24 d. 12 a. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Ce se afi eaz ca urmare a void p (int x) { if(x!=0){p(x/10); apelului p(123); dac subprogramul p are defini ia cout<<x%10; | printf(%d,x%10); al turat ? (6p.) } } 3. Scrie i programul C/C++ care cite te trei numere naturale a,b,c (a b) din intervalul [1,10000] i afi eaz pe ecran num rul multiplilor lui c din intervalul [a;b]. Exemplu: pentru a=10, b=27,c=5 se afi eaz valoarea 4. 4. (4p.) Se consider dou tablouri unidimensionale A i B cu elemente numere naturale din intervalul [1;10000]. Spunem c tabloul A se poate reduce la tabloul B dac exist o mp r ire a tabloului A n secven e disjuncte i adiacente de cte trei elemente aflate pe pozi ii consecutive astfel nct, prin nlocuirea secven elor cu suma elementelor din secven , s se ob in , n ordine, elementele tabloului B. De exemplu tabloul
se poate reduce la tabloul a) Scrie i defini ia complet a subprogramului suma, cu trei parametri, care: - prime te prin parametrii: - A un tablou unidimensional cu maximum 100 elemente numere intervalul [1;10000] - i i j dou valori naturale (1 i j 100); - returneaz suma Ai+Ai+1++Aj.
naturale din
(6p.)
b) Fi ierul text NUMERE.IN con ine pe prima linie dou numere naturale nenule n i m (1 m n 100), pe linia a doua n numere naturale din intervalul [1;10000] i pe linia a treia alte m numere naturale din intervalul [1;10000]. Pe fiecare linie numerele sunt separate prin cte un spa iu. Scrie i un program C/C++ care cite te cele dou numere naturale n i m din fi ierul NUMERE.IN, construie te n memorie dou tablouri unidimensionale A i B cu elementele aflate n fi ier pe a doua, respectiv a treia linie i verific , utiliznd apeluri utile ale subprogramului suma, dac tabloul A se poate reduce la tabloul B. Programul afi eaz pe ecran mesajul DA n caz afirmativ i mesajul NU n caz negativ. (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 030 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac memorat de variabila x de tip int are exact dou cifre? i numai dac num rul natural (4p.)
Varianta 30 - informatica
a. x/100==0 c. x/10!=0
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) b) c) Scrie i valoarea care se afi eaz num rul n=5172. dac se cite te (6p.) citeste n (num r natural) m 0 p 1 ct timp n>0 execut c n%10 dac c>0 atunci c c-1 m m+c*p p p*10 n [n/10]
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un scrie m alt tip. (6p.) Scrie i toate valorile distincte, fiecare avnd exact patru cifre, care pot fi citite pentru variabila n astfel nct s se afi eze valoarea 2008, pentru fiecare dintre acestea. (4p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 030 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul nodurilor de grad 1 n graful din figura al turat ?(6p.)
Subiectul I
a. 2. a.
b.
c.
d.
Care este valoarea expresiei strlen(s) pentru variabila s de tip ir de caractere, declarat i ini ializat astfel: char s[15]=Proba_E; (4p.) 7 b. 15 c. 6 d. 5
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care sunt nodurile de tip frunz din arborele al turat dac se alege ca r d cin nodul 6? (6p.)
4.
Se consider o stiv n care ini ial au fost introduse, n aceast ordine, elementele 1,2,3,4,5,6,7,8,9,10 (ca n imaginea al turat ). Dac se noteaz cu AD(x) opera ia prin care se adaug un element cu informa ia x n stiv i cu EL() opera ia prin care se elimin un element din stiv , care este elementul aflat n vrful stivei dup executarea secven ei de opera ii: EL();EL();AD(11); AD(12); EL();EL(); ? (4p.)
5.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<=15) i construie te n memorie o matrice A cu n linii i n coloane n care orice element aflat pe prima linie sau pe prima coloan are valoarea 1 i oricare alt element Aij din matrice este egal cu suma a dou elemente din matrice, primul aflat pe linia i i pe coloana j-1 iar cel de-al doilea pe coloana j i pe linia i-1. Matricea va fi afi at pe ecran, linie cu linie, numerele de pe aceea i linie fiind separate prin cte un spa iu. Exemplu: pentru n=4 , se ob ine matricea al turat . (10p.)
Varianta 30 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 030 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Pentru generarea numerelor cu n cifre formate cu elementele mul imii {0,4,8} se utilizeaz un algoritm backtracking care, pentru n=2, genereaz , n ordine, numerele 40,44,48,80,84,88. Dac n=4 i se utilizeaz acela i algoritm, care este num rul generat imediat dup num rul 4008 ? (4p.) b. 4004 c. 4080 d. 8004 a. 4040
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. void f (int x,int y) 2. Subprogramul f este definit al turat. if(x<=y) Ce se afi eaz ca urmare a apelului { { f(x+1,y); f(1,3);? (6p.) cout<<x; | printf(%d,x); } } 3. Scrie i defini ia complet a subprogramului suma, care prime te prin cei 4 parametri v,n,i,j: - v, un tablou unidimensional cu maximum 100 de elemente ntregi din intervalul [-1000;1000], numerotate de la 1 la n; - n, un num r natural reprezentnd num rul de elemente din tabloul v; - i i j, dou valori naturale cu 1 i j n. Subprogramul returneaz suma elementelor v1,,vi-1, vj+1,,vn din tabloul v. (10p.) 4. Fi ierul text NUMERE.IN con ine pe prima linie un num r natural nenul n (1 n 100) i pe urm toarea linie n numere reale pozitive ordonate cresc tor, separate prin cte un spa iu. a) Scrie i un program C/C++ care cite te din fi ierul NUMERE.IN num rul natural n, i determin , utiliznd un algoritm eficient din punct de vedere al timpului de executare i al memoriei utilizate, num rul de valori reale distincte de pe linia a doua din fi ier. Exemplu: dac fi ierul NUMERE.IN are con inutul: 6 2.3 2.3 2.8 5.7 5.7 6.3 atunci se afi eaz valoarea 4 (sunt 4 valori distincte: 2.3, 2.8, 5.7, 6.3). i explica i n ce const eficien a ei. (6p.) (4p.) b) Descrie i n limbaj natural metoda utilizat
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 031 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider variabila a care memoreaz un num r cu exact 6 cifre. Care dintre expresiile C/C++ de mai jos are ca valoare num rul format din cele dou cifre din mijloc ale valorii memorate n a? (4p.) b. a/100%100 d. a/100%10+a/1000%10
Varianta 31 - informatica
a. (a%100)/100 c. a/1000+a%1000
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te a 2. Se consider algoritmul al turat, descris n pseudocod: (num r natural, a>0) S-a notat cu [x], partea ntreag a num rului real x. k 0 b [(a+1)*(a+2)/2] a) Scrie i valorile care se vor afi a pentru a=9. ct timp ba execut (4p.) b b-a b) Scrie i num rul valorilor din intervalul [1,5] care, citite k k+1 pentru variabila a, determin , dup executarea algoritmului al turat, memorarea valorii 1 n variabila b. scrie b,k (6p.) c) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s nu se utilizeze structuri repetitive sau subprograme recursive. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 031 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful neorientat cu 7 noduri, numerotate de la 1 la 7, i muchiile[1,3], [2,3], [3,4], [3,5], [5,4], [1,2], [2,5], [2,4], [6,7], [3,6]. Gradul nodului 5 este : (4p.) 0 1 3 4
b. d. a. BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ c. Subiectul I Specializarea Matematic -informatic 2. Un arbore cu 11 noduri, numerotate de la 1 la 11, este memorat cu ajutorul vectorului de ta i t=(2,5,5,3,0,2,4,6,6,2,3). Mul imea tuturor ascenden ilor nodului 8 este: (4p.) a. c. {1, 2, 5, 6, 10} {6} b. d. {6, 2, 5} {5, 2}
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Scrie i defini ia corect a unui tip de date necesar pentru a memora simultan, ntr-o singur variabil de acest tip, urm toarele caracteristici ale unui autoturism: marca (cuvnt de maximum 20 caractere) i anul fabrica iei (num r natural), astfel nct expresia C/C++ de mai jos s aib ca valoare vechimea ma inii ale c rei caracteristici sunt memorate n variabila x. 2008-x.anul_fabricatiei (6p.) ntr-o structur static de date de tip stiv au fost introduse, n aceas ordine, numerele ntregi, 11, 6, 2, 28, 67, ca n desenul al turat. Reprezenta i con inutul stivei prin cte un desen similar cu cel al turat, dup fiecare dintre urm toarele opera ii, realizate n exact aceast ordine: - extragerea a 3 elemente din stiv - ad ugarea valorii 100, apoi a valorii 200. (6p.) 5. Scrie i un program C/C++ care construie te n memorie o matrice cu 10 linii i 7 coloane ale c rei elemente sunt numere ntregi (cu maximum 3 cifre fiecare), citite de la tastatur , i afi eaz pe ecran, suma tuturor elementelor situate pe conturul matricei determinat de prima i ultima linie respectiv prima i ultima coloan a acestei matrice. (10p.)
4.
Varianta 31 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 031 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Generarea tuturor irurilor de caractere de 5 litere, fiecare liter putnd fi orice element din mul imea {p,r,o,b,a}, se realizeaz cu ajutorul unui algoritm echivalent cu algoritmul de generare a: (4p.) a. aranjamentelor b. permut rilor c. submul imilor d. produsului cartezian
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul recursiv definit void f1(int x) al turat. Ce se va afi a n urma apelului {if (x<=9) f1(4);? (6p.) { cout<<x+1; | printf("%d",x+1) ; f1(x+2); } } 3. Scrie i n limbajul C/C++ defini ia complet a subprogramului ordonare care prime te ca parametru un tablou unidimensional x cu cel mult 100 de elemente, numere naturale cu cel mult 4 cifre fiecare, i un num r natural n (n 100), ce reprezint num rul efectiv de elemente ale tabloului x. Subprogramul va afi a tabloul ob inut n urma schimbarii pozi iei doar a elementelor impare din tablou astfel nct acestea s apar n ordinea cresc toare a valorilor lor. Numerele se afi eaz separate prin cte un spa iu. (10p.) Exemplu: pentru n=6 i x=(7,11,2,-8,-3,10) subprogramul va afi a -3 7 2 -8 11 10 4. n fi ierul numere.txt, se afl memorate, pe prima linie un num r natural n (1n100), iar pe fiecare dintre urm toarele n linii, cte dou numere ntregi x,y (-100xy100), reprezentnd capetele cte unui segment [x,y] desenat pe axa Ox de coordonate. a) Scrie i n limbajul C/C++ un program eficient din punct de vedere al timpului de executare i al spa iului de memorare, care cite te din fi ier datele existente, determin segmentul rezultat n urma intersec iei tuturor celor n segmente date i afi eaz pe ecran dou numere desp r ie printr-un spa iu ce reprezint capetele segmentului cerut. Dac segmentele nu au niciun punct comun se va afi a pe ecran valoarea 0. (6p.) b) Descrie i n limbaj natural algoritmul utilizat, justificnd eficien a acestuia. Exemplu: dac fi ierul numere.txt are con inutul al turat, se va afi a pe ecran 3 5 5 -7 10 3 20 -5 5 0 12 -8 30 (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 032 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect 1. Stabili i care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac num rul ntreg memorat n variabila x nu apar ine intervalului (-35,-20)[17,100]. (4p.)
Varianta 32 - informatica
a. (x<=-35) || ((x<=16)|| (x>=-20)) || (x>100) b. (x<=-35) || ((x<=17) && (x>=-20)) || (x>=100) c. (x<-35) || ((x<16) && (x>-20)) || (x>100) d. (x<=-35) || ((x<=16) && (x>=-20)) || (x>100) Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te a,b 2. Se consider algoritmul al turat, descris n pseudocod. (numere naturale) dac a>b atunci a) Scrie i numerele care sunt afi ate dac pentru a i b c b se citesc valorile a=150 i b=9. (4p.) b a a c b) Dac pentru b se cite te valoarea 150, scrie i cea mai mare valoare care se poate citi pentru a, astfel nct ct timp a<=b execut algoritmul s afi eze exact 4 valori. (6p.) scrie a a a*2 c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) scrie a d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp execut cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 032 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
4:(1,2); 5:(2); 6:(2, 4, 5); Subiectul I
Un graf orientat este memorat cu ajutorul listelor al turate de 1:(5,6); adiacen . Suma elementelor de pe ultima linie a matricei de 2:(1,5); 3:(1,5); adiacen asociat grafului este egal cu: (4p.) 1 d. 5
2.
Graful neorientat cu 8 noduri, numerotate de la 1 la 8, este reprezentat cu ajutorul matricei de adiacen al turate. Num rul minim de muchii ce trebuie ad ugate pentru ca graful s devin conex este egal cu: (4p.)
a.
b.
c.
d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. ntr-o structur de date de tip coad au fost ad ugate n ordine urm toarele valori: 3, 10, 2, 8 i 6. Care este ultima valoare care s-a extras din coad dac s-au efectuat, n ordine, urm toarele opera ii: extragerea unui element, ad ugarea valorii 100, extragerea a trei elemente. (6p.) n secven a al turat , variabilele i, j sunt de tip ntreg, iar for (j=1;j<=5;j++) variabila a memoreaz o matrice n care prima linie i prima for (i=1;i<=3;i++) coloan sunt numerotate cu 1. Toate elementele matricei a[i][j]=10-j; primesc valori n urma execut rii secven ei. Scrie i n ordine, ncepnd cu prima coloan , elementele situate pe fiecare linie a matricei care se va construi n urma execut rii secven ei al turate de program (6p.) Scrie i un program C/C++ care cite te de la tastatur dou caractere c1 i c2 i un text avnd cel mult 250 caractere (spa ii i litere ale alfabetului englez), pe care l modific nlocuind toate apari iile caracterului memorat n c1 cu cel memorat n c2 i toate apari iile caracterului memorat n c2 cu cel memorat n c1. Programul afi eaz pe linii separate ale ecranului att textul ini ial ct i textul ob inut dup efectuarea nlocuirilor. (10p.) Exemplu: dac pentru c1 se cite te a, pentru c2 se cite te o iar textul citit este: hocus pocus preparatus se va afi a : hocus pocus preparatus hacus pacus preporotus
4.
5.
Varianta 32 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 032 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect 1. n vederea particip rii la un concurs, elevii de la liceul sportiv au dat o prob de selec ie, n urma c reia 6 dintre ei au ob inut punctaje egale. n cte moduri poate fi format echipa selec ionat tiind c poate avea doar 4 membri ale i dintre cei 6, i c ordinea acestora n cadrul echipei nu conteaz ? (4p.) b. 30 c. 15 d. 4 a. 24
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Subprogramul afis este definit void afis(int x) al turat. Ce se va afi a n urma { if (x>3) { apelului afis(17);? (6p.) cout<<x-1<<" "; | printf("%d ",x-1); afis(x/3); } } 3. Scrie i defini ia complet a subprogramului prime care are ca parametri dou numere naturale x i y (avnd cel mult 4 cifre fiecare) i afi eaz pe ecran toate numerele prime din intervalul nchis, avnd unul din capete n x i cel lat n y. Numerele afi ate vor fi separate prin cte un spa iu. Exemplu: pentru x=32 i y=18 valorile afi ate vor fi 19 23 29 31. (10p.) Fi ierul numere.txt con ine mai multe numere ntregi (cel mult 100), fiecare num r avnd cel mult 9 cifre. Se cere s se afi eze pe ecran, desp r ite printr-un spa iu, cele mai mari dou valori pare memorate n fi ier. Dac n fi ier nu se afl memorate dou astfel de valori, pe ecran se va afi a valoarea 0. a) Descrie i n limbaj natural o metod de rezolvare eficient gestion rii memoriei i al timpului de executare. din punct de vedere al (4p.)
4.
b) Scrie i programul C/C++ corespunz tor metodei descrise la punctul a. (6p.) Exemplu: dac fi ierul numere.txt are con inutul al turat, se 5 10 vor afi a pe ecran, nu neap rat n aceast ordine: 3 -77 20 30 50 50 5 0 12 18 30
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 033 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila a memoreaz un num r natural care are exact 3 cifre. Care dintre expresiile C/C++ de mai jos are ca valoare num rul format din prima i ultima cifr a num rului memorat de a? (4p.) a/10+a%100 a/100*10+a%10 b. d. a/100+a%10 a-a/10%10
Varianta 33 - informatica
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris in pseudocod.
cite te a,n (numere naturale) i%2=0 atunci a a-j altfel a a+j j 7-j scrie a dac
S-a notat cu x%y restul mp r irii num rului natural x la j 3 num rul natural nenul y. pentru i=1,n execut a) b) Scrie i care este valoarea afi at dac pentru a i n se citesc numerele a=12 i n=10. (6p.) Dac pentru a se cite te valoarea 32, scrie i un num r natural care poate fi citit pentru variabila n, astfel nct, n urma execut rii algoritmului, s se afi eze 34. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod, un algoritm echivalent cu cel dat, n care s nu se utilizeze structuri repetitive sau subprograme recursive. (4p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 033 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 4: 1,2,3 5: 1,6
Se consider graful neorientat cu 6 noduri, definit cu ajutorul 1: 4,5,6 listelor de adiacen al turate. n acest graf, suma gradelor 2: 3,4 tuturor nodurilor este: (4p.) 3: 2,4 28 d.
6: 1,5 10 Subiectul I
2.
Un arbore cu r d cin are nodurile numerotate de la 1 la 18 i este reprezentat prin vectorul de ta i t:(8,8,0,3,4,3,4,7,1,2,3,3,7,8,3,5,6,8). Num rul tuturor (4p.) descenden ilor nodului 3 este egal cu: 3 b. 6 c. 17 d. 18
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Scrie i defini ia corect a unui tip de date necesar pentru a memora simultan ntr-o singur variabil de acest tip, urm toarele caracteristici ale unui cerc: abscisa i ordonata centrului cercului (numere ntregi) i raza acestuia (num r real), astfel nct expresia C/C++ de mai jos s calculeze diametrul cercului ale c rui caracteristici sunt memorate n variabila x. 2*x.raza (6p.) n secven a al turat , variabilele i, j i x sunt de tip ntreg, iar x=2; variabila a memoreaz o matrice n care prima linie i prima for(j=1;j<=5;j++) coloan sunt numerotate cu 1. Toate elementele matricei for(i=1;i<=3;i++) {a[j][i]=x; primesc valori n urma execut rii secven ei. x=x+1; Scrie i n ordine, ncepnd cu prima coloan , elementele situate pe fiecare linie a matricei care se va construi n urma } execut rii secven ei al turate. (6p.) Scrie i un program C/C++ care cite te de la tastatur o fraz de maximum 255 de caractere (litere mari ale alfabetului englez i spa ii), ale c rei cuvinte sunt desp r ite prin cte un spa iu i afi eaz pe primul rnd al ecranului num rul total al cuvintelor din fraz , iar pe rndul urm tor de ecran, n ordine alfabetic , scrise o singur dat , consoanele care au ap rut n fraz (consoane sunt toate literele alfabetului englez, mai pu in A, E, I, O, U). Literele afi ate sunt separate prin cte un spa iu. Exemplu: dac se cite te fraza LA BACALAUREAT SUBIECTELE AU FOST USOARE se va afi a: 6 B C F L R S T (10p.)
4.
5.
Varianta 33 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 033 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Folosind un algoritm de generare putem ob ine numere naturale de k cifre care au suma cifrelor egal cu un num r natural s. Astfel, pentru valorile k=2 i s=6 se genereaz , n ordine, numerele: 15, 24, 33, 42, 51, 60. Care va fi al treilea num r generat pentru k=4 i s=5? (4p.) b. 1022 c. 2201 d. 1031 a. 1301
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. void f(int &a,int b) 2. Ce se va afi a n urma execut rii secven ei de { mai jos, n care variabilele a i b sunt tip a=a-1;b=a+1; ntreg, iar subprogramul f este declarat cout<<a<<b; | printf("%d%d",a,b); al turat? } a=3; b=9; f(a,b); cout<<a<<b; | printf("%d%d",a,b); (6p.) 3. Scrie i defini ia complet a subprogramului impar, care prime te prin parametrul x un tablou unidimensional cu cel mult 100 de elemente numere naturale, fiecare avnd cel mult 9 cifre, iar prin parametrul n o valoare natural reprezentnd num rul efectiv de elemente ale tabloului (1 n 100) i afi eaz mesajul DA n cazul n care printre elementele tabloului x se afl cel pu in un num r impar, sau afi eaz mesajul NU n caz contrar. (10p.) Pe prima linie a fi ierului numere.txt se afl dou numere naturale n i m (avnd cel mult 4 cifre fiecare, m n), desp r ite printr-un spa iu, iar pe urm toarea linie, n ordine strict cresc toare, n numere naturale cu cel mult dou cifre, desp r ite prin cte un spa iu. a) Scrie i n limbajul C/C++ un algoritm eficient din punct de vedere al gestion rii memoriei i al timpului de executare, care cite te din fi ier datele existente i afi eaz cea mai mare sum a m numere aflate pe a doua linie a fi ierului. (6p.) b) Explica i n limbaj natural metoda utilizat , justificnd eficien a acesteia. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 034 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. n secven a al turat de program, instruc iunea de for (i=1;i<=3;i++) for (j=10;j>=i+1;j--) afi are se va executa de un num r de ori egal cu: cout<<j; | printf(%d,j); (4p.) b. 21 c. 3 d. 30 a. 24
Varianta 34 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x,y 2. Se consider algoritmul al turat, descris n pseudocod. (numere naturale) S-a notat cu x%y, restul mp r irii num rului natural x la x x%10 num rul natural nenul y. y y%10 dac y<x atunci a) Scrie i care sunt numerele afi ate dac se citesc aux y valorile x=148 i y=203. (6p.) y x b) Scrie i un set de valori care pot fi citite pentru x aux variabilele x i y astfel nct, dup executarea algoritmului al turat, s se afi eze exact 5 valori. (4p.) ct timp x y execut scrie x*10+y c) Scrie i programul C/C++ corespunz tor algoritmului x x+1 dat. (10p.) y y-1 d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur pentru...execut . (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 034 Pentru fiecare dintre itemii 1 i 2 scrie i pe foaia de examen litera care corespunde r spunsului corect. Graful neorientat cu 60 de noduri, numerotate de la 1 la 60, are numai muchiile [1,60], 1. [60,20], [2,30] i [4,30]. Num rul componentelor conexe ale grafului este egal cu: (4p.)
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I 2. Care Matematic dintre vectorii urm tori poate fi vectorul de ta i ai unui arbore cu r d cin avnd 10 Specializarea -informatic
a.
b.
56
c.
54
d.
0 (4p.)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. ntr-o list alocat static, de tip coad , sunt memorate n ordine, urm toarele valori: 2, 3, 4: Reprezenta i coada ca n modelul de mai sus, dup fiecare dintre urm toarele opera ii, care se realizeaz n aceast ordine: - extragerea a dou elemente - ad ugarea valorii 100 - ad ugarea valorii 200. (6p.) 4. Ce se va afi a n urma execut rii secven ei char c[21]="tastatura"; al turate, n care variabila c memoreaz un ir for(i=0;i<strlen(c)/2;i=i+1) cu cel mult 20 de caractere, iar i este o cout<<c[i+1]; | printf(%c,c[i+1]); variabil de tip ntreg? (6p.) Scrie i programul C/C++ care cite te de la tastatur un num r natural n (n20), construie te n memorie i afi eaz pe ecran, matricea cu n linii i n coloane, n care se vor memora n ordinea strict cresc toare a valorii, pe linii i coloane, primele n2 numere naturale nenule, pare, care nu sunt divizibile cu 3. Fiecare linie a matricei se va afi a pe cte o linie a ecranului, cu 2 4 8 10 14 16 20 22 elementele de pe aceea i linie separate prin cte un spa iu. Exemplu: pentru n=4 se va construi i afi a matricea al turat . 26 28 32 34 (10p.) 38 40 44 46
5.
Varianta 34 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 034 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Completarea unui bilet de LOTO presupune colorarea a 6 numere dintre cele 49, nscrise pe bilet. O situa ie statistic pe o anumit perioad de timp arat c cele mai frecvente numere care au fost extrase la LOTO sunt: 2, 20, 18, 38, 36, 42, 46, 48. Cte bilete de 6 numere se pot completa folosind doar aceste valori, tiind c num rul 42 va fi colorat pe fiecare bilet? (4p.) b. 6! c. 42 d. 56 a. 21 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int f(int i) 2. Subprogramul f este definit al turat. { a) Ce valoare va avea f(7)? if (i>12) return 1; else return 1+f(i+2); b) Determina i dou valori naturale, x1 i x2 (x1 x2, x1<12 i x2<12 ) pentru care f(x1)=f(x2). (6p.) } 3. Subprogramul cifre_impare prime te prin parametrul n un num r natural avnd cel mult 9 cifre i returneaz valoarea 1 dac num rul n are toate cifrele impare i 0 n caz contrar. a) Scrie i numai antetul subprogramului cifre_impare. (4p.)
b) Pe prima linie a fi ierului numere.txt se afl un num r natural n, iar pe urm toarele linii, n numere naturale. Pe fiecare linie din fi ier, numerele sunt desp r ite prin cte un spa iu. Toate numerele din fi ier au cel mult 9 cifre. Scrie i programul C/C++ care, folosind apeluri utile ale subprogramului cifre_impare, afi eaz pe ecran acele numere din fi ier care sunt mai mari dect 100 i au toate cifrele impare. Numerele afi ate sunt separate prin cte un spa iu. Exemplu: dac fi ierul numere.txt are con inutul al turat, se vor afi a pe ecran: 333 713 11573 4. (10p.) 10 1 333 709 23 258 34 713 2678 11573 778
Scrie i programul C/C++ care cite te de la tastatur un num r natural n (n<100), apoi un ir de n numere naturale de cel mult 3 cifre fiecare i afi eaz pe ecran cel mai mare num r de valori pare aflate pe pozi ii consecutive n irul citit. Exemplu: pentru n=8 i numerele 12,7,4,16,10,3,6,6 se va afi a 3 . (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 035 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Stabili i care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac num rul ntreg memorat n variabila x nu apar ine intervalului (-35,-20]. (4p.) b. (x<=-35) || (x>=-20) d. (x<=-35) && (x>20)
Varianta 35 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x 2. Se consider algoritmul al turat, descris n (num r natural) pseudocod. s 0 S-a notat cu [z] partea ntreag a num rului real z, iar cu f 2 x%y restul mp r irii num rului natural x la num rul natural ct timp x>1 execut nenul y. p 0 ct timp x%f=0 execut a) Scrie i valoarea care va fi afi at dac se cite te x [x/f] num rul x=140. (6p.) p p+1 b) Scrie i o valoare de 3 cifre care poate fi citit pentru s s+p x, astfel nct valoarea afi at s fie 6. (4p.) f f+1 c) Scrie i programul C/C++ corespunz tor algoritmului scrie s dat. (10p.) d) Scrie i valorile naturale din intervalul [7,28] care pot fi introduse pentru variabila x, astfel nct, dup executarea programului, valoarea afi at s fie 1. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 035 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful neorientat G=(X,U) X={1,2,3,4,5,6,7,8} U={[1,2], [2,3], [2,4], [2,6], [4,7], [1,5], [5,6], [6,8], [7,8]}. Pentru a trasforma graful ntr-un arbore, putem elimina: (4p.) muchia [5,6] muchiile [2,6] i [4,7]
Subiectul I
a. muchiile 2009 [1,5] i [1,2] , limbajul C/C++b. BACALAUREAT - INFORMATIC Specializarea -informatic d. c. nodul Matematic 3 2.
Se consider defini ia al turat . Care dintre urm toarele struct elev{ char nume[30]; construc ii este o declarare corect pentru un tablou cu 10 float nota; elemente de tip elev? (4p.) }; struct elev[10]; x elev[10]; b. d. struct x elev[10]; struct elev x[10];
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Ce se va afi a n urma execut rii secven ei char c[]="tamara"; al turate, n care variabila c memoreaz un cout<<strlen(c)<<endl; ir cu cel mult 20 de caractere, iar variabila i | printf("%d\n",strlen(c)); este de tip ntreg? (6p.) for(i=3;i>=0;i--) cout<<c[i]; | printf("%c",c[i]) Un graf neorientat cu 10 noduri, numerotate de la 1 la 10, este 1:3,5 reprezentat cu ajutorul listelor de adiacen al turate. Cte 2:4 componente conexe are graful i care este num rul minim de 3:1,5 4:2,8 muchii ce trebuie ad ugate pentru ca graful s fie conex? 5:1,3 (6p.) 6:7:10 8:4 9:10:7
4.
5.
Scrie i programul C/C++ care cite te de la tastatur un num r natural n (n50) i construie te n memorie o matrice cu n linii i n coloane, ale c rei elemente sunt numere ntregi citite de la tastatur . Pentru fiecare coloan a matricei, n ordine, programul afi eaz pe ecran cel mai mic num r de pe respectiva coloan . Numerele afi ate vor fi separate prin cte un spa iu. Exemplu: pentru n=4 i matricea al turat , se vor afi a pe ecran 122 103 5 10 valorile: -7 18 -10 2. (10p.) -7 18 -10 2 107 999 59 4 1 200 100 7
Varianta 35 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 035 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Pentru generarea tuturor mul imilor de 3 elemente avnd la dispozi ie valorile 1,2,3,4,5,6 se poate utiliza un algoritm echivalent cu algoritmul de generare a: (4p.) a. permut rilor de 3 elemente b. submul imilor mul imii {1,2,3,4,5,6} c. combin rilor de 6 elemente luate cte 3 d. aranjamentelor de 6 elemente luate cte 3
2.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Subprogramul f este definit al turat. void f(int &a,int b) Ce se va afi a n urma execut rii { secven ei de mai jos, n care a=a-5;b=a-2; variabilele a i b sunt de tip ntreg? cout<<a<<b; | printf("%d%d",a,b); a=3; b=9; f(b,a);f(b,b); } (6p.) a) Scrie i defini ia complet a unui subprogram sum care prime te prin parametrul x un num r natural de cel mult 4 cifre i returneaz suma divizorilor num rului x, diferi i de 1 i de el nsu i. Exemplu: dac x=10 se va returna valoarea 7 (7=2+5). (4p.) b) Scrie i programul C/C++ care cite te de la tastatur un num r natural n (0<n<100), apoi n numere naturale (cu cel mult 4 cifre fiecare). Programul determin , folosind apeluri utile ale subprogramului sum, pentru fiecare num r natural, suma divizorilor s i proprii i afi eaz pe ecran sumele determinate, n ordinea cresc toare a valorilor lor, separate prin cte un spa iu. (6p.) Exemplu: dac n=5 i numerele citite sunt 10 2 33 6 11 valorile afi ate pe ecran vor fi: 0 0 5 7 14 deoarece suma divizorilor lui 10 este 7, suma divizorilor lui 2 este 0, suma divizorilor lui 33 este 14, suma divizorilor lui 6 este 5, suma divizorilor lui 11 este 0. 4. Fi ierul text numere.in con ine pe prima linie un num r natural n (0<n<1000), iar pe a doua linie n numere naturale cu cel mult 9 cifre fiecare. Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz pe ecran, separate prin cte un spa iu, numerele formate doar din cifre distincte i care au exact trei cifre. Exemplu: dac fi ierul numere.in are urm torul con inut 7 249 511 4329 2 4313 243 3562 atunci pe ecran se vor afi a numerele 249 243 (nu neap rat n aceast ordine). (10p.)
3.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 036 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. n secven a de instruc iuni al turat , variabilele x i y sunt de tip int. Care este valoarea pe care trebuie s o aib ini ial variabila x dac la finalul execut rii secven ei s-a afi at un singur caracter asterisc (*)? (4p.) b. 2 a. 0 y=x; while(x<=3) { cout<<"*"; | printf("*"); y=y+1; x=x+y; } c. 1 d. 4
Varianta 36 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n s 0 pseudocod. cite te v (valoare natural ) ct timp v 0 execut S-a notat cu x%y restul mp r irii num rului natural x la a v%10 num rul natural nenul y i cu [z] partea ntreag a b [v/10]%10 num rului real z. s s + a*10 + b Scrie i ce valoare se va afi a dac se citesc, n a) cite te v ordine, urm toarele valori : 114, 123, 517, 3312, 14, 412, 22, 0. (6p.) scrie s b) Scrie i ce valoare se va afi a dac se citesc, n ordine, primele 99 de numere naturale nenule, urmate de 0 (adic 1,2,3,4,,98,99,0). (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un alt tip. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 036 Pentru fiecare dintre itemii 1 i 2 scrie i pe foaia de examen litera care corespunde r spunsului corect. 1.
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ EXAMEN , care -informatic este irul de caractere Specializarea Matematic
tiind c n urma execut rii secven ei x=strlen(s); al turate s-a afi at succesiunea de caractere for (i=0;i<x/2;i++) Subiectul I cout<<s[i]<<s[x-i-1]; memorat de variabila s? (4p.) |printf(%c%c,s[i],s[x-i-1]); EAENMX b. ENXEAM c. NEEXMA d. NEMAXE
a. 2.
Se consider o coad , n care au fost introduse ini ial, n aceast ordine, dou numere 2 i 1. Con inutul cozii este reprezentat n figura al turat . Not m cu AD X opera ia prin care se adaug informa ia X n coad i cu EL opera ia prin care se elimin un element din coad . Asupra cozii se efectueaz , exact n aceast ordine, opera iile AD 5; EL; AD 4; EL; AD 7. Care este con inutul cozii dup executarea opera iilor de mai sus? (4p.) 1 5 4 b. 5 4 7 c. 7 4 5 d. 2 1 5
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un graf neorientat cu 7 noduri numerotate de la 1 la 7 i muchiile [1,2],[1,3],[2,3],[2,4],[2,5],[2,6],[4,6],[5,7],[6,7]. Care este num rul minim de muchii care trebuie eliminate astfel nct graful par ial rezultat s con in 3 componente conexe? Care sunt aceste muchii? (6p.) Cte muchii trebuie eliminate dintr-un graf neorientat complet cu 20 de noduri, pentru ca graful par ial ob inut s fie arbore? (6p.) Se consider o matrice cu n linii i m coloane (1n30, 1m30), ce memoreaz numere ntregi de cel mult 4 cifre fiecare. Scrie i un program C/C++ care cite te de la tastatur valorile n, m i elementele matricei i care afi eaz pe ecran, separate prin cte un spa iu, valorile minime de pe fiecare coloan , n ordine de la ultima la prima coloan . Exemplu: pentru n=4, m=4 i matricea al turat se vor afi a pe ecran valorile 3 7 2 3. (10p.) 3 25 18 3 4 90 10 2 7 9 3 10 4 7 20 3
4. 5.
Subiectul II
Varianta 36 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 036 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Subprogramul scif returneaz suma cifrelor unui num r natural transmis ca parametru. Care este valoarea expresiei scif(scif(518)+scif(518))? (4p.) b. 14 c. 28 d. 1 a. 10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Utiliz m metoda backtracking pentru generarea tuturor modalit ilor de a scrie num rul 9 ca sum a cel pu in dou numere naturale nenule distincte. Termenii fiecarei sume sunt n ordine strict cresc toare. Solu iile se genereaz n ordinea: 1+2+6, 1+3+5, 1+8, 2+3+4, 2+7, 3+6 i 4+5. Se aplic exact aceea i metod pentru scrierea lui 12. Scrie i, n ordinea gener rii, toate solu iile de forma 2+.... (6p.) Scrie i programul C/C++ care, pentru o valoare n (num r natural 0<n<100) citit de la tastatur , afi eaz pe ecran, n ordine cresc toare, separate prin cte un spa iu primele n numere strict pozitive divizibile cu 5. Exemplu: pentru n=4 se vor afi a pe ecran valorile 5 10 15 20. (4p.) Subprogramul cifra prime te prin intermediul parametrului a un num r natural cu cel mult 4 cifre i returneaz ultima cifr par a sa. Dac num rul nu con ine cifre pare, subprogramul returneaz valoarea -1. De exemplu, dac a=8345, subprogramul va returna 4. a) S se scrie defini ia complet a subprogramului cifra. (10p.)
3.
4.
b) Pe prima linie a fi ierului bac.in se afl un num r natural nenul n (n 1000), iar pe a doua linie a fi ierului se afl un ir de n numere naturale, desp r ite prin cte un spa iu, fiecare num r fiind format din cel mult 4 cifre. Scrie i un program C/C++ care cite te numerele din fi ier i afi eaz pe ecran, folosind apeluri utile la subprogramului cifra, cel mai mare num r care se poate forma prelund ultima cifr par a fiec rui element, dac o astfel de cifr exist . n cazul n care toate valorile din fi ier con in doar cifre impare, atunci se va afi a valoarea -1. (6p.) Exemplu: dac fi ierul bac.in are con inutul 7 369 113 2 0 33 1354 al turat, pe ecran se va afi a: 64220 42
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 037 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este valoarea pe care trebuie s o while (x!=3){ x=x-1; aib ini ial variabila ntreag x pentru ca, n cout<<"HH"; urma execut rii secven ei al turate, s se } afi eze irul de mai jos? (4p.) b. 4 c. 6 d. 5
Varianta 37 - informatica
printf(HH);
HHHHHH a. 0
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n cite te n,k pseudocod. (numere naturale, k9) nr 0; p 1 S-a notat cu x%y restul mp r irii num rului natural x la ct timp n 0 execut num rul natural nenul y i cu [z] partea ntreag a c n%10 num rului real z. nr nr+c*p a) Scrie i num rul afi at dac se citesc valorile n=1232 i p p*10 k=2. (6p.) dac c=k atunci nr nr+c*p b) Scrie i toate perechile de valori care pot fi citite pentru p p*10 n i k, cu n<100, astfel nct n urma execut rii algoritmului valoarea afi at s aib 4 cifre. c) (4p.) n [n/10] Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un alt tip. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
n nr scrie n
d)
Subiectul II (30 de puncte) - Varianta 037 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Fie declar rile al turate. Dac variabila x struct elev{ char nume[30]; re ine informa ii despre un elev, preciza i float nota;}; care este varianta corect ce afi eaz prima elev x; liter din numele acestuia? (4p.)
Subiectul I
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ a. cout<<x; | -informatic printf(%c,x); Specializarea Matematic
b. c. d. 2.
printf(%c,x.nume[0]);
printf(%c,x.nume);
printf(%c,nume);
Se consider o coad , n care au fost introduse ini ial, n aceast ordine, dou numere 2 i 1. Con inutul cozii este reprezentat n figura al turat . Not m cu AD X opera ia prin care se adaug informa ia X n coad i cu EL opera ia prin care se elimin un element din coad . Asupra cozii se efectueaz , exact n aceast ordine, opera iile AD 5; EL; AD 4; EL; AD 7; EL; EL. Care este con inutul cozii dup executarea opera iilor de mai sus? (4p.) 7 b. 4 7 c. 4 d. 5
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un graf orientat cu 5 vrfuri reprezentat n figura al turat . a) Care este matricea de adiacen grafului? corespunz toare (6p.) (6p.)
4.
Un ir cu maximum 255 de caractere con ine cuvinte separate prin unul sau mai multe spa ii. Cuvintele sunt formate numai din litere mici ale alfabetului englez. Scrie i un program Pascal care cite te un astfel de ir i l afi eaz modificat, prima i ultima liter a fiec rui cuvnt fiind afi at ca liter mare. Exemplu: pentru irul: maine este proba la informatica se va afi a: MainE EstE ProbA LA InformaticA (10p.)
Varianta 37 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 037 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se utilizeaz un algoritm pentru a genera n ordine lexicografic invers toate permut rile mul imii {1,2,3,4,5}. Primele patru permut ri generate sunt: 54321, 54312, 54231, 54213. A cincea permutare este: (4p.) a. 54321 b. 54132 c. 53421 d. 54123
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Consider m subprogramul f definit al turat. Ce valoare are f(7,11)? Dar f(11,7)? (6p.) int f(int x,int y) {if(x<=y) return x-y; return f(y-x,x-1)+3;}
3.
Scrie i un program C/C++ care cite te numerele naturale nenule n i k (k n 100) i un tablou unidimensional cu n elemente numere ntregi, fiecare avnd cel mult 4 cifre. Programul modific tabloul, permutnd circular cu k pozi ii spre stnga, elementele acestuia i afi eaz pe ecran, pe o singur linie, separate prin cte un spa iu, elementele tabloului ob inut. Exemplu: dac n=4, k=3 4 1 2 3. i tabloul v=(1,2,3,4), atunci se vor afi a n ordine elementele: (10p.)
4.
a) Scrie i doar antetul subprogramului nrdiv, care prime te prin intermediul parametrului x un num r natural nenul cu cel mult 4 cifre, i returneaz num rul de divizori primi ai lui x. (4p.) b) Pe prima linie a fi ierului bac.in se afl un num r natural nenul n (n 1000), iar pe a doua linie a fi ierului se afl un ir format din n numere naturale nenule, desp r ite prin cte un spa iu, fiecare num r fiind format din cel mult 4 cifre. Scrie i un program C/C++ care cite te numerele din fi ier i care afi eaz pe ecran, folosind apeluri utile ale subprogramului nrdiv, pentru fiecare valoare din ir num rul de divizori primi. Numerele afi ate vor fi separate prin cte un spa iu. (6p.) Exemplu: dac fi ierul bac.in are con inutul al turat, pe 6 30 105 140 10 20 5 ecran se va afi a: 3 3 3 2 2 1
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 038 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre expresiile urm toare, scrise n limbajul C/C++, are valoarea 1 dac dac valorile variabilelor ntregi x i y sunt numere pare? b. (x+y)%2==0 d. (x%2==0) && (y%2==0) i numai (4p.)
Varianta 38 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris pseudocod. S-a notat cu [z] partea ntreag a num rului real z. a) b) n cite te n (num r natural) pentru i1,n execut p1 pentru ji,2,-1 execut Scrie i valorile afi ate n urma execut rii pp*j algoritmului, dac se cite te num rul n=3. (6p.) scrie [p/(i*2)]
Scrie i cea mai mic valoare care poate fi citit pentru n astfel nct, n urma execut rii algoritmului, n irul valorilor afi ate s existe cel pu in 3 numere care au ultima cifr 0 i care s se afle pe pozi ii consecutive. (4p.)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se utilizeze o singur structur repetitiv . (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 038 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider o coad , n care au fost introduse ini ial, n aceast ordine, dou numere 2 i 1. Con inutul cozii este reprezentat n figura al turat . Not m cu AD X opera ia prin care se adaug informa ia X n coad i cu EL opera ia prin care se elimin un element din coad . Asupra cozii se BACALAUREAT 2009 - INFORMATIC limbajulopera C/C++iile AD 5; EL; AD 4; EL; EL; AD efectueaz , exact n aceast ,ordine, Specializarea -informatic 8; AD Matematic 9; EL. Care este con inutul cozii dup executarea opera iilor de mai sus? (4p.) a. 2. 8 9
Subiectul I
9 b. 8 c. d. 4 8 9 s[0]= E; Consider m c variabila s memoreaz irul de s[strlen(s)-1]= A; caractere examen. Care va fi valoarea lui s dup s[strlen(s)/2-1]= N; executarea instruc iunilor scrise al turat? (4p.) s[strlen(s)/2]= M; ExNMeA b. exAMen c. ExAMeN d. ExameN
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un graf neorientat cu 7 noduri, numerotate de la 1 la 7 i muchiile [1,5], [2,3], [2,4], [2,5], [3,4], [4,5], [4,7], [5,6], [5,7]. a) Cte cicluri elementare distincte exist n graf? Dou cicluri sunt distincte dac difer prin cel pu in o muchie. (3p.) b) Care este lungimea maxim a unui ciclu elementar din acest graf? (3p.) c) Care este num rul minim de muchii care trebuie eliminate astfel nct graful par ial ob inut s aib 3 componente conexe? (6p.) 4. Se consider o matrice p tratic cu n linii i n coloane (1n30), ce memoreaz numere ntregi nenule de cel mult dou cifre fiecare. Scrie i un program C/C++ care cite te de la tastatur valoarea n i elementele matricei i care afi eaz pe ecran ultima cifr a produsului acelor elemente de pe diagonala secundar care au proprietatea c sunt valori minime pe coloanele lor. Dac nu exist astfel de elemente n matrice, se va afi a mesajul NU EXISTA. Exemplu: pentru n=4 i matricea al turat se va afi a pe ecran valoarea 1 (3*7=21). (10p.)
Varianta 38 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 038 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliz m metoda backtracking pentru generarea tuturor modalit ilor de a scrie num rul 9 ca sum a cel pu in dou numere naturale nenule distincte. Termenii fiec rei sume sunt n ordine strict cresc toare. Solu iile se genereaz n ordinea: 1+2+6, 1+3+5, 1+8, 2+3+4, 2+7, 3+6 i 4+5. Se aplic exact aceea i metod pentru scrierea lui 8. Cte solu ii vor fi generate? (4p.) b. 4 c. 5 d. 3 a. 6
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. a int sc(long x) Pentru defini ia al turat {if(x<10) return x; subprogramului sc, ce valoare are sc(1000)? Dar sc(901324)? return sc(x/10)+x%10;} (6p.) 3. Scrie i n limbajul C/C++ defini ia complet a subprogramul Del care are doi parametri: x, un num r ntreg de cel mult 9 cifre, i y, un num r natural nenul de o cifr . Subprogramul determin eliminarea tuturor cifrelor lui x mai mari strict dect y i furnizeaz num rul ob inut tot prin intermediul parametrului x. Dac toate cifrele lui x sunt mai mari strict dect y, atunci x va primi valoarea -1. Exemplu: dac x=37659 i y=6, dup apel x=365, iar y=6. (10p.) Se consider subprogramul inter, cu doi parametri: x i y (numere ntregi formate din cel mult patru cifre fiecare); subprogramul interschimb valorile a dou variabile transmise prin intermediul parametrilor x i y. a) Scrie i n limbajul C/C++ numai antetul subprogramului inter. (4p.)
4.
b) Pe prima linie a fi ierului bac.in se afl un num r natural nenul n 1000, iar pe a doua linie a fi ierului se afl un ir de n numere naturale nenule, desp r ite prin cte un spa iu, fiecare num r fiind format din cel mult 4 cifre. Scrie i un program C/C++ care afi eaz pe ecran, n ordine cresc toare, numerele aflate pe a doua linie a fi ierului. Numerele vor fi afi ate pe o singur linie, iar ntre dou numere se va l sa un spa iu. Se vor folosi apeluri utile ale subprogramului inter. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 039 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este num rul total de atribuiri efectuate la executarea x=4; y=6; secven ei de instruc iuni al turate? (4p.) while (y==6) y=y+1; if (x==y) x=x+1; b. 3 c. 2 d. 5
Varianta 39 - informatica
a. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n cite te n (num r natural) pseudocod. nr 0 S-a notat cu x%y restul mp r irii num rului natural x la p 1 ct timp n 0 execut num rul natural nenul y i cu [z] partea ntreag a c n%10 num rului real z. dac c>0 i c < 9 atunci Scrie i num rul afi at dac se cite te valoarea a) c c+1 n=12939. (6p.) nr nr+c*p b) Scrie i toate valorile care pot fi citite pentru p p*10 variabila n astfel nct, n urma execut rii n [n/10] algoritmului, valoarea afi at s fie 2009. (4p.) scrie nr c) d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un alt tip. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 039 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0Subiectul 0 1 1I 0 1 0 0 0 1 0 0
Stabili i care dintre urm torii vectori este vector de ta i pentru 0 1 0 arborele cu 7 noduri, numerotate de la 1 la 7, cu r d cina 1, 1 0 1 0 1 0 reprezentat prin matricea de adiacen al turat : (4p.) 0 1 0 1 0 0 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ 0 0 0 Specializarea Matematic -informatic 0 0 0 a. c. 2. (3, 1, 0, 2, 1, 5, 6) b. (1, 0, 2, 2, 1, 5, 5)
(0, 1, 2, 2, 1, 5, 5) (2, 1, 0, 2, 1, 5, 2) d. Un graf neorientat cu 7 noduri, numerotate de la 1 la 7 are muchiile [1,5], [2,3], [2,4], [2,5], [3,4], [4,5], [4,7], [5,6], [5,7]. Cte cicluri elementare distincte exist n graf? Dou cicluri sunt distincte dac difer prin cel pu in o muchie. (4p.) 7 b. 4 c. 5 d. 6
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un graf neorientat cu 7 noduri, numerotate de la 1 la 7, i muchiile [1,5], [1,6], [2,6], [3,4], [3,6], [4,6]. Dac se elimin nodul 6 i toate muchiile incidente cu acesta cte componente conexe va avea subgraful rezultat ? (6p.) for(i=1;i<=3;i++) Consider m declara iile: for(j=1;j<=3;j++) a[i][j]=i+j; int i,j,a[10][10]; Ce se va afi a dup executarea for(i=1;i<=3;i++) secven ei de instruc iuni al turate? { for(j=1;j<=3;j++) cout<<a[i][j]; | printf(%d,a[i][j]); (6p.) cout<<endl; | printf(\n); } Un ir cu maximum 255 de caractere con ine cuvinte separate prin cte un spa iu. Cuvintele sunt formate numai din litere mici ale alfabetului englez. Scrie i un program C/C++ care cite te de la tastatur un astfel de ir i l afi eaz pe ecran modificat, inversnd prin oglindire doar cuvintele care ncep cu vocal , ca n exemplu. Se consider vocale literele din mul imea {a, e, i, o, u}. Exemplu: pentru irul: maine este proba la informatica se va afi a: maine etse proba la acitamrofni (10p.)
4.
5.
Varianta 39 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 039 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliz m metoda backtracking pentru generarea tuturor modalit ilor de a scrie num rul 6 ca sum a cel pu in dou numere naturale nenule. Termenii fiec rei sume sunt n ordine cresc toare. Solu iile se genereaz n ordinea: 1+1+1+1+1+1, 1+1+1+1+2, 1+1+1+3, 1+1+4, 1+2+3, 1+5, 2+2+2, 2+4 i 3+3. Se aplic exact aceea i metod pentru scrierea lui 9. Care este penultima solu ie? (4p.) b. 3+3+3 c. 4+5 d. 3+6 a. 2+7
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului int f(int x) {if(x<=4) return x*x-3; f, ce valoare are f(3)? Dar f(8)? (6p.) return f(x-3)+4;} 3. Pe prima linie a fi ierului bac.in se afl un num r natural nenul n (n 1000), iar pe a doua linie a fi ierului se afl un ir format din n numere naturale, desp r ite prin cte un spa iu, fiecare num r fiind format din cel mult 4 cifre. Scrie i un program C/C++ care cite te valorile din fi ier i care afi eaz pe ecran mesajul DA dac toate elementele pare din ir sunt n ordine cresc toare i mesajul NU n caz contrar. Exemplu: dac fi ierul bac.in are con inutul 7 al turat, pe ecran se va afi a: DA (10p.) 10 113 12 33 42 1354 421 Se consider subprogramul pr, care prime te prin intermediul parametrului a un num r natural nenul cu cel mult 9 cifre i returneaz 1 dac num rul este prim i 0 n caz contrar. a) Scrie i numai antetul subprogramului pr. (4p.) b) Consider m un num r natural nenul n>99 cu cel mult 9 cifre. Din n se ob ine un ir de valori prin eliminarea succesiv a ultimei cifre, apoi a ultimelor dou cifre, apoi a ultimelor trei cifre etc., pn se ob ine un num r de dou cifre, ca n exemplu. S se realizeze un program C/C++ care cite te de la tastatur num rul n i care, folosind apeluri utile ale subprogramul pr, afi eaz pe ecran, separate prin cte un spa iu, doar valorile prime din irul ob inut din n conform descrierii de mai sus. Exemplu: pentru n=193124 se ob ine irul de valori 19312,1931, 193, 19 din care se vor afi a pe ecran doar valorile 1931 193 19 (nu neap rat n aceast ordine). (6p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 040 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este valoarea expresiei C/C++ al turate? b. 70 (4p.) 50-(100300/2/(2+3)) d. 60 a. -30 c. -20
Varianta 40 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n cite te x (num r natural nenul) pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la d 2; y 0; z 0 ct timp x 1 execut num rul natural nenul y i cu [z] partea ntreag a p 0 num rului real z. ct timp x%d=0 execut p p+1 a) Scrie i numerele afi ate dac se cite te valoarea x [x/d] x=168. (6p.) b) Scrie i cea mai mare valoare din intervalul nchis [1,50] care poate fi citit pentru variabila x astfel nct, n urma execut rii algoritmului, s se afi eze dou valori egale. (4p.) dac p 0 atunci dac y=0 atunci y d z d
c)
d)
Scrie i n pseudocod un algoritm echivalent cu cel d d+1 dat, n care s se nlocuiasc fiecare structur ct timp...execut cu cte o structur repetitiv cu test final. (6p.) scrie y scrie z Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 040 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Se consider vectorul de ta i" al unui arbore cu r d cin t=(3,4,0,3,3,5) ale c rui noduri sunt numerotate de la 1 la 6. Alege i afirmatia corect : (4p.) nodurile 1, 2, 6 sunt noduri de tip frunz b. nodul 3 are un singur descendent direct (fiu) Subiectul I nodurile 4 i 6 sunt noduri de tip frunz
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Specializarea Matematic c. d. nodul 6 este tat l-informatic nodului 5
2.
Se consider o coad , n care au fost introduse ini ial, n aceast ordine, dou numere: 2 i 1. Con inutul cozii este reprezentat n figura al turat . Not m cu AD X opera ia prin care se adaug informa ia X n coad i cu EL opera ia prin care se elimin un element din coad . Asupra cozii se efectueaz , exact n aceast ordine, opera iile AD 10; AD 15; EL; AD 4; EL; AD 20; EL. Care este con inutul cozii dup executarea opera iilor de mai sus? (4p.) 20 b. 15 4 c. 4 20 d. 15 4 20
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un graf neorientat cu 8 noduri numerotate de la 1 la 8 i muchiile [1,5], [1,6], [2,6], [3,4], [3,6], [3,7], [4,6], [6,8], [7,8]. Dac se elimin nodul 6 i toate muchiile incidente cu acesta cte componente conexe va avea subgraful rezultat?(6p.) for(i=1;i<=3;i++) for(j=1;j<=3;j++) int i,j,a[10][10]; if(i<j)a[i][j]=i; else a[i][j]=j; Ce se va afi a dup executarea for(i=1;i<=3;i++){ secven ei de instruc iuni al turate? for(j=1;j<=3;j++) (6p.) cout<<a[i][j];|printf(%d,a[i][j]); cout<<endl;|printf(\n);} Consider m declar rile: Un ir cu maximum 255 de caractere con ine cuvinte formate numai din litere mici ale alfabetului englez. Fiecare cuvant este urmat de un caracter *. Scrie i un program C/C++ care cite te un astfel de ir i afi eaz pe ecran irul ob inut prin eliminarea tuturor apari iilor primului cuvnt, ca n exemplu. Exemplu: pentru irul: bine*albine*foarte*bine* se va afi a: *albine*foarte** (10p.)
4.
5.
Varianta 40 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 040 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliz m metoda backtracking pentru generarea tuturor modalit ilor de a scrie num rul 6 ca sum a cel pu in dou numere naturale nenule. Termenii fiec rei sume sunt n ordine cresc toare. Solu iile se genereaz n ordinea: 1+1+1+1+1+1, 1+1+1+1+2, 1+1+1+3, 1+1+4, 1+2+3, 1+5, 2+2+2, 2+4 i 3+3. Se aplic exact aceea i metod pentru scrierea lui 9. Cte solu ii de forma 2+... vor fi generate? (4p.) b. 3 c. 2 d. 5 a. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. n secven a al turat variabilele i, j i aux sunt ntregi, iar v for(i=1;i<5;i++) for(j=5;j>i;j--) memoreaz un tablou unidimensional ale c rui elemente au if(v[i]<v[j]) urm toarele valori: v[1]=2, v[2]=13, v[3]=1, v[4]=5, { aux=v[i]; v[5]=-4. Care este num rul de interschimb ri care se v[i]=v[j]; efectueaz n urma execut rii secven ei al turate? Da i un v[j]=aux; exemplu de alte 5 valori pentru elementele tabloului astfel nct, } n urma execut rii secven ei al turate, s nu se efectueze nicio interschimbare. (6p.) 3. Pe prima linie a fi ierului bac.in se afl un num r natural nenul n (n 1000), iar pe a doua linie a fi ierului se afl un ir format din n numere naturale, desp r ite prin cte un spa iu, fiecare num r fiind format din cel mult 4 cifre. Scrie i un program C/C++ care cite te numerele din fi ier i care afi eaz pe ecran mesajul DA dac elementele pare n ir sunt n ordine cresc toare, iar cele impare sunt n ordine descresc toare, i mesajul NU n caz contrar. Exemplu: dac fi ierul bac.in are con inutul 8 al turat, pe ecran se va afi a: DA (10p.) 10 1133 12 331 42 1354 221 13 Consider m definite subprogramele: - pr, care prime te prin intermediul parametrului x un num r natural cu cel mult 4 cifre i returneaz 1 dac num rul este prim i 0 n caz contrar; - sdiv, care prime te prin intermediul parametrului y un num r natural cu cel mult 4 cifre i returneaz suma tuturor divizorilor num rului y. a) Scrie i numai antetul subprogramelor pr i sdiv. (4p.)
4.
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (n<1000) i care afi eaz pe ecran toate numerele mai mici dect n cu proprietatea c suma divizorilor lor este num r prim. Se vor utiliza apeluri utile ale subprogramelor pr i sdiv. Exemplu: dac n=20, atunci programul va afi a: 2 4 9 16. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 041 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. tiind c variabilele x i y sunt de tip ntreg, care este instruc iunea prin care variabilei x i se atribuie ultima cifr a num rului natural memorat n variabila y? (4p.) a. x=y%10; b. y=x%10; c. y=x/10; d. x=x/10;
Varianta 41 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n
S-a notat cu [x] partea ntreag num rului real x, iar cu cite te x (num r natural) x%y restul mp r irii num rului ntreg x la num rul ntreg d 2 nenul y. scrie x ct timp xd execut a) Scrie i num rul care se afi eaz dac se cite te ct timp x%d=0 execut valoarea 100. (6p.) x [x/d] scrie x b) Scrie i cel mai mare num r natural de dou cifre care trebuie citit pentru variabila x, astfel nct algoritmul d d+1 s afi eze exact dou valori. (4p.) c) d) Scrie i n pseudocod un algoritm echivalent cu cel dat, care s con in o singur structur repetitiv . (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 041 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 0 1 1 1 0 0 1 1 1 0 1 1 1 0 I Subiectul
Cte dintre vrfurile grafului neorientat G, reprezentat prin matricea de 0 1 adiacen al turat , au gradul un num r par? (4p.) 1 0 0 1 0 1 1 0 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++
Specializarea Matematic -informatic
a. 2.
b.
c.
d.
ntr-o stiv ini ial vid au fost executate urm toarele opera ii: push 3; push 7; pop; push 5; push 1; unde push a reprezint opera ia prin care valoarea a se adaug reprezint opera ia prin care se extrage un element din stiv . Care este elementul situat n vrful stivei? 1 b. 5 c. 7 d.
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Pentru reprezentarea unui arbore cu radacin cu 10 noduri, etichetate cu numere naturale de la 1 la 10, se utilizeaz vectorul de ta i: TATA=(4, 8, 8, 0, 10, 4, 8, 6, 2, 6). Care sunt frunzele arborelui? (6p.) Ce se afi eaz pe ecran n urma execut rii for (i='a';i<='z';i++) if (i<'d') secven ei de program al turate tiind c cout<<i; | printf("%c",i); variabila i este de tip char? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1 n 23) i apoi construie te n memorie o matrice cu n linii i n coloane, numerotate de la 1 la n, astfel nct fiecare element situat pe o linie i (1 i n) i pe o coloan j (1 j n) va fi egal cu suma dintre i i j. Programul va afi a matricea pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele de pe aceea i linie fiind separate prin cte un spa iu. Exemplu: dac n=4, se va afi a matricea al turat . (10p.) 2 3 4 5 3 4 5 6 4 5 6 7 5 6 7 8
4.
5.
Varianta 41 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 041 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. a. b. c. d. Cea mai mare dintre valorile strict negative memorate ntr-un tablou unidimensional NU exist dac : (4p.) n tablou sunt memorate numai valori strict negative n tablou exist cel pu in o valoare negativ n tablou sunt memorate valori nenule pozitive i negative n tablou sunt memorate numai valori strict pozitive
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. void G(int k) tiind c p este un vector cu 3 2. { int i; componente ntregi (vector declarat global) cu ce trebuie nlocuite i for(i=1;i<=;i++) n defini ia subprogramului G astfel {p[k]=i; nct n urma apelului G(0) s se if( )G(k+1); afi eze toate numerele de 3 cifre, else fiecare cifr fiind nenul . Fiecare num r cout<<p[0]<<p[1]<<p[2]<<endl; | va fi afi at o singur dat . printf("%d%d%d\n",p[0],p[1],p[2]); (6p.) } } 3. Scrie i un subprogram MULT, cu doi parametri, care prime te prin intermediul parametrului a un tablou unidimensional cu cel mult 100 de elemente, numere naturale de cel mult 4 cifre fiecare, i prin intermediul parametrului n un num r natural nenul, n<100, ce reprezint num rul de elemente din tablou. Subprogramul verific dac tabloul con ine toate valorile din mul imea {1,2,,n}. n caz afirmativ subprogramul returneaz valoarea 1, iar altfel subprogramul returneaz valoarea 0. (10p.) Fi ierul text numere.txt con ine pe prima linie un num r natural n (0<n<100000), iar pe a doua linie un ir de n numere naturale de o singur cifr , separate prin cte un spa iu. irul con ine cel pu in o valoare par i una impar . a) Scrie i un program C/C++ care determin n mod eficient, din punct de vedere al timpului de executare, cea mai mare cifr par i cea mai mic cifr impar dintre cele situate pe a doua linie a fi ierului. Cifrele determinate vor fi afi ate pe ecran, pe o singur linie, separate printr-un spa iu. Exemplu: dac fi ierul numere.txt are urm torul con inut: 7 3 5 2 1 6 3 1 atunci pe ecran se vor afi a valorile: 6 1. (6p.) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 042 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. tiind c variabilele x i y sunt de tip ntreg, care este instruc iunea prin care variabilei x i se atribuie cifra zecilor num rului natural cu cel pu in dou cifre memorat de variabila y? (4p.) b. x=y/10%10; c. x=y%10; d. x=x/100;
Varianta 42 - informatica
a. x=y%10/10;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x,y (numere naturale) 2. Se consider algoritmul al turat, descris n pseudocod. ct timp y>0 execut S-a notat cu x%y restul mp r irii num rului natural x la z x%y num rul natural nenul y. x 2*y a) y 2*z Scrie i valoarea care se va afi a la finalul execut rii algoritmului dac se citesc valorile x=15 i y=25. scrie x (6p.) Dac pentru y se cite te valoarea 3, scrie i toate numerele formate dintr-o singur cifr care pot fi citite pentru variabila x astfel nct, pentru fiecare dintre acestea, la finalul execut rii algoritmului s se afi eze o valoare de forma 2p, unde p este un num r natural. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care structura ct timp...execut s fie nlocuit cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
b)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 042 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 I Subiectul
Cte dintre vrfurile grafului neorientat G, reprezentat prin matricea de 0 0 adiacen al turat , au gradul 0? (4p.) 0 0 0 0 1 0 1 0 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++
Specializarea Matematic -informatic
a. 2.
b.
c.
d.
ntr-o coad ini ial vid au fost executate urm toarele opera ii: add 1; add 2; out; add 3; add 4; unde add x reprezint opera ia prin care x se adaug n coad , iar out reprezint opera ia prin care se extrage un element din coad . Ce valoare are elementul care a fost extras din coad ? (4p.) 3 b. 2 c. 1 d. 4
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Pentru reprezentarea unui arbore cu radacin cu 9 noduri, etichetate cu numere naturale de 3. la 1 la 9, se utilizeaz vectorul de ta i: T=(5,0,2,7,3,3,2,4,7). a) Care este lungimea maxim a unui lan elementar care leag dou noduri oarecare din acest arbore? (3p.) b) Care sunt extremit ile acestui lan ? (3p.) 4. Variabila a memoreaz un tablou bidimensional cu 5 for(i=1;i<=5;i++) for(j=1;j<=5;j++) linii si 5 coloane, numerotate de la 1 la 5, ale c rui a[i][j]=j; elemente sunt numere ntregi. Care este cel mai mare element situat pe diagonala principal a tabloului construit n urma execut rii secven ei de program al turate ? (6p.) Scrie i programul C/C++ care cite te de la tastatur un ir de cel mult 40 de caractere, format doar din litere mici ale alfabetului englez, i care afi eaz pe ecran, pe o singur linie, toate vocalele ce apar n irul citit. Vocalele vor fi afi ate n ordinea apari iei lor n ir, separate prin cte un spa iu, ca n exemplu. Se consider ca fiind vocale urm toarele litere: a, e, i, o, u. Dac irul citit nu con ine nicio vocal , se va afi a pe ecran mesajul fara vocale. Exemplu: dac se cite te irul calculator atunci pe ecran se va afi a: a u a o (10p.)
5.
Varianta 42 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 042 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz toate permut rile mul imii {1,2,3,4}. Dac primele trei permut ri generate sunt, n acest ordine: 1234, 1243, 1324 preciza i care este permutarea generat imediat dup 3412. (4p.) b. 3413 c. 4123 d. 3421 a. 3214
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Subprogramul f are defini ia al turat . Ce int f(int x) valoare are f(7)? Dar f(100)? (6p.) {if(x%6==0)return x; else return f(x-1); } 3. Scrie i defini ia complet a unui subprogram P, cu trei parametri, care prime te prin intermediul primului parametru, a, un tablou unidimensional de cel mult 100 de numere ntregi, cu cel mult 4 cifre fiecare, prin intermediul celui de-al doilea parametru, n, num rul efectiv de elemente ale tabloului, iar prin parametrul k, un num r natural (k<101) i returneaz cea mai mare sum de k termeni care se poate ob ine adunnd k elemente ale tabloului. Exemplu: dac n=6 i k=4, iar irul este format din elementele (5, 2, 5, 4, 1, 3), atunci la apel se va returna 17. (10p.) Fi ierul text numere.txt con ine pe prima linie un num r natural n (0<n<100000) iar pe doua linie, separate prin cte un spa iu, n numere naturale formate din cel mult dou cifre. a) Scrie i un program C/C++ care determin n mod eficient, din punct de vedere al timpului de executare, dac numerele situate pe a doua linie a fi ierului sunt n ordine strict cresc toare. n caz afirmativ, programul va afi a pe ecran mesajul DA, altfel va afi a mesajul NU. Exemplu: dac fi ierul numere.txt are urm torul con inut: 7 3 5 2 1 5 23 1 atunci pe ecran se va afi a: NU (6p.) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 043 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este instruc iunea prin care variabilei x i se atribuie valoarea sumei cifrelor num rului natural format din exact trei cifre, memorat de variabila ntreag y? (4p.) b. x=y+y/10+y/100; d. x=y%10+y%100+y%1000;
Varianta 43 - informatica
a. x=y/100+y/10%10+y%10; c. x=y%10+y%10/10+y/100;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x,y (numere naturale) 2. Se consider algoritmul al turat, descris n pseudocod. ct timp x*y 0 execut daca x>y atunci S-a notat cu x%y restul mp r irii num rului natural x la x x%y num rul natural nenul y. altfel y y%x a) Scrie i valoarea pe care o va afi a algoritmul dac se citesc, n aceast ordine, numerele 30 i 25. (6p.) b) Dac se cite te pentru variabila y valoarea 26, scrie i scrie x+y toate numerele naturale de cel mult dou cifre care pot fi citite pentru variabila x, astfel nct la finalul execut rii algoritmului s se afi eze valoarea 13. (4p.) Scrie i n pseudocod un algoritm care s fie echivalent cu cel dat n care structura ct timp...execut s fie nlocuit cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 043 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 1 0 0 1 0 1 0 1 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 1 0 I Subiectul
Un graf neorientat este reprezentat prin matricea de adiacen al turat . Cte grafuri par iale distincte, formate doar din noduri cu gradul egal cu 2, se pot ob ine din graful dat? Dou grafuri sunt distincte dac matricele lor de adiacen difer . (4p.) 3 b. 1 c. 2 d.
a. 2.
ntr-o coad ini ial vid au fost executate urm toarele opera ii: add 1; add 2; out; add 3; add 4; out; unde add x reprezint opera ia prin care valoarea x se adaug reprezint opera ia prin care se extrage un element din coad . Cte elemente con ine coada dup efectuarea opera iilor de mai sus? 1 b. 2 c. 0 d.
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Pentru reprezentarea unui arbore cu radacin cu 10 noduri, etichetate cu numere naturale de la 1 la 10, se utilizeaz vectorul de ta i: TATA=(4, 8, 8, 0, 10, 4, 8, 6, 2, 6). Care este rad cina arborelui i cte frunze are acesta? (6p.) Ce se afi eaz n urma execut rii secven ei de strcpy(a,"informatica"); program al turate, tiind c variabilele a i b strcpy(b,a); pot memora cte un ir de cel mult 12 cout<<strlen(b); | printf("%d",strlen(b)); caractere? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (0<n 23) i apoi construie te n memorie o matrice cu n linii i n coloane astfel nct elementele situate pe diagonala principal sa fie egale cu 2, cele situate deasupra diagonalei principale s fie egale cu 1, iar cele situate sub diagonala principal s fie egale cu 3. Programul va afi a matricea pe ecran, cte o linie a matricei pe o linie a 2 1 1 1 3 2 1 1 ecranului, cu cte un spa iu ntre elementele fiec rei linii. Exemplu: dac n este 4 atunci programul va construi i va afi a 3 3 2 1 matricea al turat : (10p.) 3 3 3 2
4.
5.
Varianta 43 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 043 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz numerele formate din cte 3 cifre distincte din mul imea {1,3,5,7}. Dac primele trei numere generate sunt, n acest ordine: 135, 137, 153 care este cel de-al patrulea num r generat? (4p.) b. 173 c. 157 d. 357 a. 315
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Subprogramul f are defini ia al turat . Ce int f(int x) 2. valoare are f(3)? Dar f(10)? (6p.) {if(x==0)return 0; else return f(x-1)+2; } 3. Scrie i defini ia complet a unui subprogram P cu doi parametri, care prime te prin intermediul primului parametru, n, un num r natural nenul (1 n 100) i prin intermediul celui de-al doilea parametru, a, un tablou unidimensional cu elementele numerotate de la 1 la n, numere ntregi, de cel mult 4 cifre fiecare, i returneaz suma tuturor numerelor impare aflate pe pozi ii pare n tablou. Exemplu: dac n=6, iar irul este format din elementele (3, 2, 7, 1, 4, 3), atunci la apel se va returna 4. (10p.) Fi ierul text numere.txt con ine pe prima linie un num r natural n (0<n<100000), iar pe a doua linie n cifre, separate prin cte un spa iu. a) Scrie i un program C/C++ care determin n mod eficient, din punct de vedere al timpului de executare, cea mai mare cifr dintre cele situate pe a doua linie a fi ierului numere.txt i num rul de apari ii ale acesteia. Valorile determinate se vor afi a pe ecran, separate printr-un spa iu. Exemplu: dac fi ierul numere.txt are urm torul con inut: 11 2 5 3 1 5 8 9 2 7 3 4 atunci pe ecran se va afi a: 9 1. (6p.) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 044 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este instructiunea prin care variabilei ntregi x i se atribuie valoarea cifrei sutelor num rului natural cu cel pu in 4 cifre memorat n variabila ntreag y? (4p.) b. x=y/10/10; c. x=y%100; d. x=y/100%10;
Varianta 44 - informatica
a. x=y%10/10;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x (num r natural) 2. Se consider algoritmul al turat, descris n pseudocod. y 0 S-a notat cu x%y restul mpar irii num rului natural x la ct timp x>y execut num rul natural nenul y. y y*10+9-x%10; a) b) c) d) Scrie i num rul care se afi eaz valoarea 274. dac se cite te scrie y (6p.)
Scrie i un num r natural de 3 cifre care poate fi citit pentru variabila x, astfel nct, la finalul execut rii algoritmului s se afi eze valoarea 1111. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care structura ct timp...execut s fie nlocuit cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 044 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 1 0 (4p.) 0 1 d. 2 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 1 0 0 0 I Subiectul
Graful orientat G este reprezentat prin matricea de adiacen al turat . Cte vrfuri din graful dat au gradul interior egal cu gradul exterior?
a. 2.
b.
c.
ntr-o stiv ini ial vid au fost executate urm toarele opera ii: push 1; pop; push 2; pop; push 3; push 4; pop; push 5; unde push x reprezint opera ia prin care x se introduce n stiv , iar pop reprezint opera ia prin care se extrage un element din stiv . Cte elemente con ine stiva dupa efectuarea opera iilor de mai sus? (4p.) 3 b. 8 c. 3 d. 2
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Pentru reprezentarea unui arbore cu radacin cu 9 noduri, etichetate cu numere naturale de la 1 la 9, se utilizeaz vectorul de ta i: T=(7,0,2,7,6,2,3,6,5). Care sunt nodurile arborelui ce au exact 2 descenden i direc i (fii)? (6p.) Ce valoare se va afi a pe ecran n urma strcpy(a,"info"); execut rii secven ei de program al turate, for(i=2;i<strlen(a);i++) cout<<a[i]; | printf("%c",a[i]); tiind c a este o variabil care memoreaz un ir de caractere, iar i este o variabil de tip ntreg? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (0<n 23) i apoi construie te n memorie o matrice cu n linii si n coloane, format din numere naturale nenule mai mici sau egale cu n, astfel nct s nu existe dou linii cu aceea i sum a elementelor i nici dou coloane cu aceea i sum a elementelor. Programul va afi a matricea pe ecran, cte o linie a matricei pe o linie a ecranului, cu un spa iu ntre elementele fiec rei linii. Exemplu: dac n=3 atunci o solu ie posibil este urm toarea matrice: 1 1 1 1 1 2 1 2 3 (10p.)
4.
5.
Varianta 44 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 044 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele variante reprezint antetul corect al unui subprogram care prime te prin parametrii x i y dou numere ntregi i returneaz , prin parametrul m, cea mai mic dintre cele dou valori x i y? (4p.) int minim(int x,int y,int m) void minim(int x,int y,int &m) int minim(int x,int y) void minim(int x,int y,int m)
a. b. c. d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int f(int x,int y) 2. Subprogramul f are defini ia al turat . {if(x==y)return x; Ce valoare are f(6,5)? Dar f(5,10)? else if(x<y)return f(x+1,y-1); (6p.) else return f(x-1,y); } 3. Scrie i defini ia complet a unui subprogram P, cu doi parametri, a i b, numere naturale cu cel mult 4 cifre fiecare i afi eaz pe ecran, separate prin cte un spa iu, numerele aflate n intervalul nchis determinat de valorile a i b, care sunt p tratele unor numere prime. Exemplu: pentru a=40 i b=1 se va afi a: 4 9 25 (nu neap rat n aceast ordine).. (10p.) Fi ierul text numere.txt con ine pe prima linie un num r natural n (0<n<100000), iar pe a doua linie, separate prin cte un spa iu, n numere naturale formate din cel mult dou cifre. a) Scrie i un program C/C++ care determin n mod eficient, din punct de vedere al timpului de executare, toate numerele con inute de a doua linie a fi ierului care apar de cel pu in dou ori n acest linie. Programul va afi a pe ecran numerele determinate, o singur dat , n ordine crescatoare, pe aceea i linie, separate prin cte un spa iu. Exemplu: dac fi ierul numere.txt are urm torul con inut: 44 2 54 74 2 44 9 2 atunci pe ecran se va afi a: 2 44 (6p.) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 045 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1.
Varianta 45 - informatica
Care este instruc iunea prin care variabilei x i se atribuie num rul ob inut prin inversarea ordinii cifrelor num rului natural format din exact 2 cifre, memorat n variabila ntreag y?(4p.) b. x=y%10*10+y/10; d. x=y%10+y/10;
a. x=y/10*10+y%10; c. x=y%10+y/10*10;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x,y (numere naturale) 2. Se consider algoritmul al turat, descris n z 1 pseudocod: t 0 S-a notat cu x%y restul mp r irii num rului natural x la ct timp x z execut num rul natural nenul y. dac x%z=y atunci t z a) Scrie i valoarea care va fi afi at de algoritm dac se citesc, n aceast ordine, valorile 12 i 3. b) z z+1 Dac valoarea citit pentru variabila y este 7, scrie i care este cea mai mare valoare care trebuie citit pentru scrie t x, astfel nct algoritmul s afi eze num rul 0. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) (6p.)
c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 045 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde al turat . (4p.) 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 1 0 I Subiectul
Graful neorientat G este dat prin matricea de adiacen Cte vrfuri ale grafului G au gradul 1?
a. 2.
b.
c.
d.
ntr-o stiv ini ial vid au fost executate urm toarele opera ii: push 1; pop; push 2; push 4; pop; push 5; unde push x reprezint opera ia ce introduce valoarea x n stiv , iar pop reprezint opera ia prin care se extrage un element din stiv . Care este suma valorilor con inute de stiv dup efectuarea opera iilor de mai sus? (4p.) 9 b. 7 c. 5 d. 6
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Pentru reprezentarea unui arbore cu r d cin cu 9 noduri, etichetate cu numere naturale de la 1 la 9, se utilizeaz vectorul de ta i: T=(2,0,1,7,3,1,2,4,1). Care sunt descenden ii direc i (fiii) ai r d cinii i cte frunze are arborele dat? (6p.) Variabila a memoreaz elementele numere ntregi ale unui for(i=1;i<=3;i++) tablou bidimensional cu 3 linii i 3 coloane. Care este suma for(j=1;j<=3;j++) a[i][j]=j; elementelor aflate pe diagonala secundar a tabloului construit n urma execut rii secven ei de program al turate ? Scrie i programul C/C++ care cite te de la tastatur un ir de cel mult 40 de caractere, format doar din litere ale alfabetului englez, i care afi eaz pe ecran toate irurile ob inute prin eliminarea succesiv a cte unei singure litere din irul citit, ca n exemplu. irurile se vor afi a cte unul pe cte o linie a ecranului. Exemplu: dac se cite te irul abbc atunci pe ecran se va afi a: bbc abc abc abb (10p.)
4.
5.
Varianta 45 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 045 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz toate cuvintele de cte 3 litere din mul imea {a,b,c}. Dac primele patru cuvinte generate sunt, n acest ordine: aaa, aab, aac, aba, care este cel de-al optulea cuvnt generat? (4p.) b. acc c. aca d. bca a. acb
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Subprogramul f are defini ia al turat . Ce valoare are int f(int x) 2. f(4)? Dar f(11)? (6p.) {if(x<1)return 1; else return f(x-3)+1; } 3. Scrie i defini ia complet a unui subprogram P, cu doi parametri, a i b, numere naturale cu cel mult 4 cifre fiecare i afi eaz pe ecran, separate prin cte un spa iu, numerele aflate n intervalul nchis determinat de valorile a i b, care sunt cuburile unor numere prime. Exemplu: pentru a=40 i b=1 se va afi a: 8 27 (nu neap rat n aceast ordine). (10p.) Fi ierul text numere.txt con ine pe prima linie un num r natural n (0<n<100000), iar pe a doua linie, separate prin cte un spa iu, n numere naturale formate din cel mult 2 cifre. a) Scrie i un program C/C++ care afi eaz pe ecran, n mod eficient din punct de vedere al timpului de executare, toate numerele situate pe a doua linie a fi ierului, n ordinea cresc toare a valorilor lor, separate prin cte un spa iu. Dac un num r apare n fi ier de mai multe ori el va fi afi at o singur dat . Exemplu: dac fi ierul numere.txt are urm torul con inut: 7 12 21 22 11 9 12 3 atunci pe ecran se va afi a: 3 9 11 12 21 22 (6p.)
4.
b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 046 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag n memoreaz un num r natural impar. Care dintre urm toarele expresii C/C++ are valoarea 1? (4p.) b. n%2==0 c. n%2!=0 d. !((n+1)%2==0)
Varianta 46 - informatica
a. !(n%2)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n 2. Se consider algoritmul al turat, descris n pseudocod. (num r natural) S-a notat cu x%y restul mp r irii num rului ntreg x la num rul s 0 ntreg nenul y i cu [a] partea ntreag a num rului real a. nr 0 Scrie i valoarea afi at dac se cite te num rul a) ct timp n 0 execut n=10326. (6p.) dac n%2=0 atunci s s*10+n%10 b) , unde a Scrie i pentru cte numere de forma este cifra sutelor, b este cifra unit ilor i a b, valoarea afi at este 1. (4p.) c) d) n [n/10]
Scrie i programul C/C++ corespunz tor algoritmului dat. dac s 0 atunci (10p.) nr 1 Scrie i n pseudocod un algoritm echivalent cu cel dat n scrie nr care s se nlocuiasc structura ct timp...execut cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 046 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care dintre urm toarele propozi ii este fals pentru graful orientat G dat 0 1 1 0 0 prin matricea de adiacen al turat ? (4p.) 0 0 1 1 0 0 0 0 1 1 1 1 Subiectul 0 0 0 I 0 0 0 1 0 graful G nu are circuite graful G are 9 arce
a. c. 2.
exist cel pu in un nod n graful G care b. are gradul intern egal cu cel extern exist cel pu in un drum ntre oricare d. dou noduri ale grafului G
for ( i=k+1; i<=n; i++) n secven a al turat , variabila v memoreaz for (j=1; j<=n; j++) elementele unei matrice cu liniile i coloanele v[i-1][j] = v[i][j]; numerotate de la 1 la n, iar toate celelalte variabile sunt ntregi. Dac 1 k<n, atunci n=n-1; executarea secven ei determin : (4p.) eliminarea liniei k din matrice eliminarea coloanei k din matrice b. d. ad ugarea liniei k n matrice ad ugarea coloanei k n matrice
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Care sunt nodurile de tip frunz ale arborelui cu r d cin , cu 9 noduri, numerotate de la 1 la 9, al c rui vector de ta i este (6, 6, 8, 8, 7, 7, 0, 7, 7)? (6p.) Not m cu Push(x) opera ia prin care se introduce ntr-o stiv opera ia prin care se extrage un element din stiv . valoarea x, iar cu Pop
5.
a) Cte elemente are stiva, ini ial vid , dup executarea secven ei urm toare de instruc iuni? Push(8); Push(2); Push(4); Pop; Push(3); Pop; Pop; (3p.) b) Care este suma acestor elemente r mase n stiv ? (3p.) Se consider un text format doar din spa ii i litere mici ale alfabetului englez, care ncepe cu o liter i care con ine cel pu in o vocal din multimea {a,e,i,o,u}. Scrie i programul C/C++ care cite te de la tastatur un ir cu cel mult 100 de caractere, ca cel descris mai sus i care determin transformarea acestuia prin nlocuirea fiec rei vocale din text cu litera imediat urm toare din alfabet (a se nlocuie te cu b, e se nlocuie te cu f .a.m.d.). Programul va afi a pe ecran irul ob inut. Exemplu: dac irul citit este examen de bacalaureat, dup modificare se afi eaz : fxbmfn df bbcblbvrfbt (10p.)
Varianta 46 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 046 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un program genereaz , n ordine cresc toare, numerele naturale de exact 5 cifre din mul imea {1, 2, 3, 4, 5}. Fiecare dintre numerele generate are cifrele distincte dou cte dou . Primele 3 numere astfel generate sunt: 12345, 12354, 12435. Care este num rul generat imediat dup 12543? (4p.) b. 12534 c. 13245 d. 13452 a. 15342
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Se consider subprogramul f, definit long f(int n) 2. { al turat: if(!n) return 0; Ce valoare are f(7)? Dar f(100)? else return f(n-1)+2*n; (6p.) } 3. Fi ierul bac.txt con ine pe prima linie un num r natural n (n 100), iar pe a doua linie, separate prin cte un spa iu, n numere naturale nenule, cu cel mult 4 cifre fiecare. Scrie i programul C/C++ care cite te de la tastatur un num r natural k (k 25), construie te n memorie i afi eaz pe ecran un tablou unidimensional ce con ine, n ordinea n care au fost citite, numerele de pe a doua linie a fi ierului bac.txt care au cel pu in k divizori. Exemplu: dac k=5, iar fi ierul are con inutul al turat, atunci 6 100 9 400 56 7 10 tabloul care se afi eaz este: 100 400 56 (10p.) a) Scrie i n limbajul C/C++ doar antetul subprogramului cifre, care prin intermediul parametrului nr prime te un num r natural de cel mult 9 cifre i furnizeaz prin intermediul parametrilor nc i sc num rul de cifre i respectiv suma cifrelor din scrierea lui nr. (4p.) b) Scrie i programul C/C++ care cite te de la tastatur un num r natural n (10 n 109) i verific , folosind apeluri utile ale subprogramului cifre, dac n scrierea n baza 10 a lui n se g se te cel pu in o cifr care s fie media aritmetic a celorlalte cifre din componen a lui n. Programul afi eaz pe ecran mesajul DA n caz afirmativ i NU n caz contrar. Exemplu: pentru n=27989 programul va afi a mesajul DA, deoarece n scrierea lui n apare cifra 7 care este media aritmetic a celorlalte cifre din scrierea lui n: 7=(2+9+8+9)/4. Pentru n=7351 se va afi a mesajul NU. (6p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 047 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. c=2*a-b; Care dintre urm toarele variabile nu i modific valoarea n urma execut rii secven ei de instruc iuni al turate, oricare ar fi valorile lor a=a-b; a=c-a; ini iale? (a,b,c sunt variabile de tip int). (4p.) b=2*a-c; b. doar c c. doar a i c d. doar a i b
Varianta 47 - informatica
a. niciuna
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y i cu [a] partea ntreag a num rului real a. a) b) Scrie i valoarea afi at dac se cite te num rul 27349. (6p.) Scrie i cte numere naturale de trei cifre pot fi citite pentru variabila n, astfel nct valoarea afi at s fie 3. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura repet ...pn cnd cu o structur repetitiv cu test ini ial. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) cite te n (num r natural nenul) max 0 repet n [n/10] dac max<n%10 atunci max n%10 pn cnd n=0 scrie max
c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 047 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde al unui arbore cu (4p.) 4 1 1 0 2
Subiectul I
Care dintre urm torii vectori NU poate reprezenta vectorul de ta i r d cin , cu 5 noduri, numerotate de la 1 la 5? 3 1 0 1 2 b. 2 0 1 1 2 c. 3 4 0 2 3 d.
BACALAUREAT 2009 - INFORMATIC C/C++ 2. Cele 5 vagoane, din figura al, limbajul turat , numerotate de la Specializarea 1 la Matematic 5, trebuie-informatic mutate de pe linia A pe linia B.
Vagoanele sunt manevrate unul cte unul. Orice vagon poate fi mutat doar de pe linia A pe linia C sau de pe linia C pe linia B. Oricare alt manevr nu este posibil . Care dintre irurile de vagoane de mai jos, citite de la stnga la dreapta, nu poate fi ob inut pe linia B? (4p.) a. 5 3 4 2 1 b. 4 2 5 3 1 c. 3 2 4 1 5 d. 1 2 3 4 5
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Variabila s re ine irul de caractere bacalaureat. Ce se afi eaz instruc iunii de mai jos? cout<<strchr(s,a); 4. | printf(%s,strchr(s,a)); la executarea (6p.)
n declararea al turat , cmpurile a i b ale nregistr rii reprezint struct rap num r torul, respectiv numitorul unei frac ii. Care este expresia cu { int a, b; } f; care se pot nlocui punctele de suspensie n secven a de mai jos int k; astfel nct dac frac ia memorat n variabila f se simplific prin num rul natural nenul k se afi eaz mesajul DA? if ( ) cout<< DA; | printf(DA); (6p.)
5.
Scrie i un program C/C++ care cite te de la tastatur dou numere naturale nenule m i n (m 10, n 10) i cele m*n elemente (numere naturale mai mici dect 100) ale unui tablou bidimensional cu m linii, numerotate de la 1 la m, i n coloane, numerotate de la 1 la n; programul construie te n memorie i afi eaz pe ecran tabloul dup eliminarea liniilor de rang impar. 24 25 26 se va afi a: Exemplu: pentru m=4 i n=3 i tabloul: 21 22 23 24 25 26 30 31 32 27 28 29 30 31 32 (10p.)
Varianta 47 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 047 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. ntr-un penar sunt opt creioane: trei sunt ro ii, dou albastre i trei negre. Dac scoatem din penar cinci creioane, cte posibilit i exist ca cel pu in dou dintre ele s fie ro ii? (4p.) b. 12 c. 15 d. 20 a. 6
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Se consider subprogramul f definit long f(int n) 2. { al turat. if(n<0) return 0; Ce valoare are f(5)? Dar f(100)? else return f(n-2)+n; (6p.) } 3. Fi ierul text bac.txt con ine pe prima linie un num r natural n (n<100), iar pe a doua linie, separate prin cte un spa iu, n numere naturale, mai mici dect 30000 fiecare. Scrie i un program C/C++ care cite te de la tastatur un num r natural k (k<50) precum i numerele din fi ierul bac.txt i afi eaz pe ecran, cu cte un spa iu ntre ele, toate numerele de pe a doua linie a fi ierului care sunt puteri ale lui k. Dac nu exist un asemenea num r pe a doua linie a fi ierului, se afi eaz pe ecran mesajul NU. Un num r natural x este putere a lui k dac exist un num r natural y astfel nct x=ky. 8 Exemplu: dac se cite te de la tastatur k=2, iar fi ierul are con inutul al turat, atunci 32 56 317 809 256 2 1 60 pe ecran se afi eaz numerele: 32 256 2 1 (10p.) a) Scrie i n limbajul C/C++ doar antetul unui subprogram cif, care prime te prin intermediul primului parametru, nr, un num r natural cu cel mult 9 cifre i furnizeaz prin intermediul celui de-al doilea parametru, s, suma cifrelor din scrierea lui nr. (4p.) b) Scrie i programul C/C++ care cite te de la tastatur un num r natural n (0<n<25), apoi un ir de n numere naturale nenule cu cel mult 9 cifre fiecare i care afi eaz pe ecran, separate prin cte un spa iu, numerele din ir care au suma cifrelor maxim , folosind apeluri utile ale subprogramului cif. Exemplu: dac pentru n=8 se cite te irul de numere 274 56018 354 8219 293 287 932 634 atunci, pe ecran, se afi eaz numerele 56018 8219. (6p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 048 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1.
Varianta 48 - informatica
Variabilele a, b i c, de tip int, pot fi ini ializate cu oricare numere naturale impare distincte. tiind c c este divizor al lui a, iar b nu este multiplu al lui c, care dintre urm toarele expresii scrise n C/C++ are valoare 1? (4p.) b. (a % c!=0) && !(b % c!=0) a. !((a % c!=0) || !(b % c!=0)) c. (a % c!=0) || !(b % c!=0) d. !(c % a!=0) && (c % b!=0)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n 2. Se consider algoritmul al turat, descris n pseudocod. (num r natural nenul ) S-a notat cu x%y restul mp r irii num rului ntreg x la num rul pentru i 1,n execut ntreg nenul y i cu [z] partea ntreag a num rului real z. cite te x a) Scrie i valorile afi ate dac pentru n se cite te valoarea (num r. natural) 6, iar pentru x se citesc n ordine urm toarele valori: nr 0 2008, 1965, 2727, 1861, 11021, 165. (6p.) ct timp x>0 execut nr nr*100+x%10 b) tiind c valoarea citit pentru n este 4, scrie i un set x [x/100] de valori distincte, numere naturale cu exact 3 cifre, care trebuie citite pentru variabila x, astfel nct setul ct timp nr>0 execut de valori afi ate n urma execut rii algoritmului s fie x x*10+nr%10 identic cu setul de valori citite pentru x . (4p.) nr [nr/10] c) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura pentru...execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
scrie x
d)
Subiectul II (30 de puncte) - Varianta 048 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Pe tija 1 sunt a ezate 5 bile, numerotate de la 1 la 5, ca n figur . Bilele trebuie mutate pe tija 3 putndu-se folosi ca manevr tija 2. Variantele de mai jos Tija 2 reprezint a ezarea bilelor de la Tija 1 BACALAUREAT - INFORMATIC Subiectul I stnga la2009 dreapta, pe tija 3. , limbajul tiind C/C++ 1 3 2 5 4 Specializarea Matematic -informatic c o bil nu poate trece de pe tija 2 pe tija 3 dect prin tija 1, pentru care dintre ele s-au folosit cele mai Tija 3 pu ine mut ri? (o mutare reprezint trecerea de pe o tij pe alta.) (4p.) a. 2. 1 2 4 5 3 b. 4 2 5 3 1 c. 2 1 4 3 5 d. 1 2 3 4 5 In secven a al turat , variabilele s1, if(!(strcmp(s1,s2) || strcmp(s1,s3))) val=1; s2 i s3 re in iruri de caractere. Dup executarea acesteia, variabila else val=2; ntreag val prime te valoarea 1 dac (4p.) s1, s2, s3 caractere re in iruri identice de b. s1, s2, s3 re in iruri de caractere ordonate lexicografic s1 este ob inut prin concatenarea irurilor re inute n s2 i s3
a. c.
iruri de caractere de d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care sunt arcele care alc tuiesc un drum elementar de lungime maxim de la nodul 1 la nodul 5 pentru graful orientat cu ase noduri, numerotate de la 1 la 6, reprezentat prin matricea de adiacen al turat ? (6p.) 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0
4.
n declararea al turat variabila a re ine n cmpurile x i y struct punct coordonatele unui punct n planul xOy. Care este expresia a c rei { float x,y; valoare reprezint distan a punctului respectiv fa de originea axelor }a; de coordonate? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n<10) i care construie te n memorie i afi eaz pe ecran un tablou bidimensional cu n linii i n coloane astfel nct parcurgndu-l linie cu linie de sus n jos i fiecare linie de la stnga la dreapta se ob in primele n2 numere pare nenule n ordine strict cresc toare, ca n exemplu. Exemplu: pentru n=4, se construie te i se afi eaz tabloul 2 4 6 8 al turat. (10p.) 10 12 14 16 18 20 22 24 26 28 30 32
5.
Varianta 48 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 048 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul f definit al turat. Ce valoare are f(250)? int f(int x) { if(x%3==0) return 0; (4p.) else return 1+f(x/3); } c. 3 d. 4
a. 1
b. 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se genereaz prin metoda backtracking mul imile distincte ale c ror elemente sunt numere naturale nenule i care au proprietatea c suma elementelor fiec rei mul imi este egal cu 7. Astfel, sunt generate, n aceast ordine, mul imile: {1,2,4}, {1,6}, {2,5}, {3,4}, {7}. Folosind aceea i metod pentru a genera mul imile distincte ale c ror elemente sunt numere naturale nenule i care au proprietatea c suma elementelor fiec rei mul imi este egal cu 9, stabili i n ce ordine sunt generate urm toarele mul imi: M1={2,3,4}; M2={3,6}; M3={2,7}; M4={4,5}. (6p.) Se consider subprogramul cmdiv care prime te prin parametrii x i y dou valori ntregi pozitive (0<x<100 i 0<y<100) i returneaz cel mai mare divizor comun al lor. a) Scrie i doar antetul subprogramului cmdiv. (4p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n ( 1 n 100), determin , utiliznd apeluri utile ale subprogramului cmdiv, i afi eaz pe ecran num rul frac iilor ireductibile de forma cu x num r natural (1 x n). 2, deoarece, dintre frac iile doar dou (6p.)
3.
Fi ierul text bac.in con ine pe prima linie un num r natural n (0<n<5000), iar pe a doua linie, separate prin cte un spa iu, n numere naturale, formate din cel mult 4 cifre fiecare. Scrie i un program C/C++ care determin i scrie n fi ierul bac.out toate numerele de pe a doua linie a fi ierului care apar o singur dat pe aceast linie. Numerele determinate se vor afi a n ordinea cresc toare a valorilor lor, separate prin cte un spa iu. Exemplu: dac pe prima linie a fi ierului bac.in se afl 10, iar pe linia a doua se g sesc numerele 2 4548 568 4548 57 89 5974 2 89 32 atunci valorile c utate sunt 32 57 568 5974. (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 049 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila a, de tip int, memoreaz un num r memoreaz un num r natural par. Care dintre urm b. a. a%2 && b%2 d. c. (a+b+1)%2
Varianta 49 - informatica
natural impar, iar variabila b, de tip int, toarele expresii C/C++ are valoarea 1? (4p.) !(!(a%2) || b%2) !(a%2) || b%2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te x 2. Se consider algoritmul al turat, descris n pseudocod. (num r natural nenul) S-a notat cu x%y restul mp r irii num rului ntreg x la num rul k 0 ntreg nenul y i cu [a] partea ntreag a num rului real a. ct timp x 0 execut a) Scrie i valoarea afi at dac pentru x se cite te k k*10+x%10 num rul 210345. (6p.) x [x/10] b) Scrie i cea mai mare valoare format din cifre distincte ct timp k 0 execut care poate fi citit astfel nct num rul afi at s fie 987. x x*10+k%10 (4p.) k [k/100] c) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc fiecare structur ct timp...execut cu cte o structur repetitiv cu test scrie x final. (6p.) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 049 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider stiva din desenul al turat. Primul element introdus n stiv este 5. Dac se noteaz cu pop opera ia prin care se extrage un element din stiv i cu push(k) opera ia prin care se introduce valoarea k n stiv , care va fi con inutul ei dup efectuarea urm toarelor opera ii: pop; pop; BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ push(1) ; push(4) ; (4p.)
Specializarea Matematic -informatic
Subiectul I
a. 2. a.
4 1 1 4
b.
1 4 4 1
c.
1 4 1 4
d.
5 2 1 4
Fiind dat un tablou bidimensional cu 20 linii i 20 coloane, cte elemente se g sesc strict deasupra diagonalei secundare a tabloului? (4p.) 180 b. 200 c. 190 d. 210
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Variabila x declarat al turat memoreaz n cmpurile med1 i struct elev { med2 mediile semestriale ale unui elev. Scrie i o expresie a c rei int matricol; float med1,med2; valoare va fi media anual a acestui elev. (6p.) }x; Se consider un graf orientat cu 6 vrfuri numerotate de la 1 la 6, ale c rui arce sunt: (2,1),(3,6),(4,1),(4,3),(4,5),(5,2), (6,4),(1,4). Dou circuite sunt distincte dac ele difer prin cel pu in un arc. a) Care este num rul total de circuite din acest graf? b) Care este num rul total de circuite elementare din acest graf? 5. (3p.) (3p.)
4.
Un cuvnt s, de cel mult 20 caractere, format doar din litere mici ale alfabetului englez, con ine cel pu in o consoan . Scrie i programul C/C++ care cite te de la tastatur cuvntul s, construie te n memorie i afi eaz pe ecran cuvntul ob inut prin eliminarea tuturor consoanelor din cuvntul s. Se consider consoan oricare liter care nu se afl n mul imea {a, e, i, o, u}. Exemplu: dac se cite te cuvntul bacalaureat, pe ecran se afi eaz : aaauea (10p.)
Varianta 49 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 049 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz n ordine strict cresc toare numerele de cte ase cifre care con in: cifra 1 o singur dat , cifra 2 de dou ori i cifra 3 de trei ori. Se ob in, n aceast ordine, numerele: 122333, 123233, 123323, , 333221. Cte numere generate prin aceast metod au prima cifr 1 i ultima cifr 2? (4p.) b. 2 c. 4 d. 8 a. 1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Pentru o valoare natural mai mare dect 1 void divi(long i) 2. memorat n variabila global n, { if(==0) subprogramul recursiv al turat afi eaz cel cout<< ; | printf(%ld, ); mai mare divizor al lui n, mai mic dect n, la else apelul divi(n). divi(i-1); Cu ce trebuie nlocuite i ? } (6p.) 3. Scrie i un program C/C++ care cite te de la tastatur un num r natural n ( 1 n 50) i un ir de n numere naturale cu cel mult 4 cifre fiecare i care verific dac elementele irului pot fi rearanjate astfel nct s respecte regula: al doilea element este cu 1 mai mare dect primul, al treilea cu 2 mai mare dect al doilea, ... , ultimul este cu n-1 mai mare dect penultimul. Programul afi eaz pe ecran mesajul DA n caz afirmativ i mesajul NU n caz contrar. Exemplu: pentru n=4 i irul 8,5,11,6 se afi eaz DA (elementele pot fi rearajate astfel nct s respecte regula dat : 5,6,8,11). (10p.) Se consider subprogramul cmax care prin parametrul a prime te un num r natural nenul mai mic dect 30000, iar prin parametrul b furnizeaz cifra maxim din num rul a. a) Scrie i, folosind limbajul C/C++, doar antetul subprogramului cmax. (4p.)
4.
b) Fi ierul bac.txt con ine cel mult 1000 numere naturale nenule, mai mici dect 30000 fiecare, separate prin cte un spa iu. Scrie i programul C/C++ care cite te din fi ierul bac.txt toate numerele i care determin cea mai mare cifr din scrierea lor folosind apeluri utile ale subprogramului cmax. Cifra determinat se va afi a pe ecran. Exemplu: dac fi ierul bac.txt con ine valorile: 23 12 64 12 72 345 67 23 71 634 atunci pe ecran se afi eaz 7. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 050 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele a i b sunt de tip int, iar variabilele c i d sunt de tip double. Care dintre urm toarele instruc iuni de atribuire nu este corect din punct de vedere sintactic? (4p.) b. c=2-d%2*a; c. c=sqrt(b*b); d. b=(d<=c); a. c=d+2*c;
Varianta 50 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n 2. Se consider algoritmul al turat, descris n pseudocod. (num r natural nenul) S-a notat cu x%y restul mp r irii num rului ntreg x la num rul k 9 ntreg nenul y i cu [a] partea ntreag a num rului real a. pentru i 1,n execut a) Scrie i num rul care va fi afi at dac pentru n se cite te cite te x valoarea 3, iar pentru x se citesc n ordine urm toarele (num r. natural) valori: 90, 965, 727. (6p.) c [x/10]%10 dac c<k atunci b) tiind c valoarea citit pentru n este 4, scrie i un set de k c valori care pot fi citite pentru variabila x astfel nct la finalul execut rii algoritmului s se afi eze num rul 9. (4p.) c) Scrie i n pseudocod un algoritm echivalent cu cel dat, n scrie k care s se nlocuiasc structura pentru...execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 050 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Fie graful orientat din figura al turat . Care este num rul de circuite elementare distincte? Dou circuite elementare sunt distincte dac difer prin cel pu in un arc. (4p.)
Subiectul I
a. 2.
b.
c.
d.
3 3 14 15 8 4 5 6 7
1 2 Elementele tabloului bidimensional din figura al turat , cu 4 linii i 4 coloane, sunt toate numerele naturale cuprinse ntre 1 i 16 12 13 a ezate n spiral , ncepnd cu primul element al primei linii i 11 16 continund n sens invers trigonometric ca n figur . Care este cel 10 9 mai mare num r situat n zona triunghiular de sub diagonala secundar (exclusiv diagonala secundar ), n cazul unui tablou bidimensional cu 5 linii i 5 coloane generat dup aceea i regul ? (4p.) 16 b. 15 c. 25 d. 22
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care dintre nodurile arborelui din figura al turat pot fi considerate ca fiind r d cin astfel nct astfel nct n arborele cu r d cin rezultat fiecare nod s aib cel mult doi descenden i direc i (fii)? (6p.)
4.
struct carte {char titlu[20]; Scrie i instruc iunile prin care n variabila x vor fi int nr_pag; re inute titlul romanului Mara i num rul de 325 }x; de pagini pe care acesta l are. (6p.) Se consider declararea al turat . Scrie i programul C/C++ care cite te de la tastatur un cuvnt s de cel mult 20 litere mici ale alfabetului englez, construie te n memorie i afi eaz pe ecran cuvntul s dup eliminarea primei i a ultimei vocale. Cuvntul s con ine cel pu in dou vocale. Se consider vocale literele: a, e, i, o, u. Exemplu: dac se cite te cuvntul bacalaureat, pe ecran se afi eaz : bcalauret (10p.)
5.
Varianta 50 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 050 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Valorile memorate de componentele int t(int i,int v[]) tabloului v, cu indicii de la 0 la 5, sunt, { if(i==0) return 0; n aceast ordine: 973, 51, 75, 350, else 350, 15. Se consider subprogramul t if(v[i]!=v[i-1]) cu defini ia al turat . Care dintre return t(i-1,v); urm toarele expresii are valoarea 1 ? else (4p.) return 1; } b. t(5,v) c. t(4,v)+t(5,v) d. t(3,v)+t(2,v) a. t(3,v)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se genereaz n ordine strict cresc toare toate numerele de cte ase cifre care con in: cifra 1 o singur dat , cifra 2 de dou ori i cifra 3 de trei ori. Se ob in, n aceast ordine, numerele: 122333, 123233, 123323, 123323 etc. a) Care este ultimul num r generat? b) Ce num r se genereaz imediat dup 332312? 3. (3p.) (3p.)
Se consider subprogramul divxy care prime te prin parametrii x i y dou valori ntregi pozitive (0<x<1000 i 0<y<1000) i returneaz valoarea 1 dac y este divizor al lui x sau x este divizor al lui y i 0 n caz contrar. a) Scrie i defini ia complet a subprogramului divxy. (4p.) b) Scrie i un program C/C++ care cite te de la tastatur trei numere naturale nenule a, b i n, cu cel mult 3 cifre fiecare i care afi eaz pe ecran to i divizorii lui n din intervalul nchis determinat de a i b folosind apeluri utile ale subprogramului divxy. Intervalul nchis determinat de a i b este [a,b] dac a<b sau [b,a] dac b a. Numerele afi ate sunt separate prin cte un spa iu. Dac nu exist niciun astfel de num r se afi eaz mesajul NU EXISTA. Exemplu: pentru a=85, b=10 i n=40 se afi eaz : 10 20 40 (nu neap rat n aceast ordine). (6p.)
4.
Fi ierul bac.in con ine pe prima linie un num r natural n (0<n<5000), iar pe a doua linie, separate prin cte un spa iu, n numere naturale, formate din cel mult 4 cifre fiecare. Scrie i un program C/C++ care determin i scrie n fi ierul bac.out, toate numerele, citite de pe a doua linie a fi ierului bac.in, care apar de cel pu in dou ori. Numerele determinate se vor scrie n ordine cresc toare, pe aceea i linie, separate prin cte un spa iu. Exemplu: dac fi ierul bac.in con ine pe prima linie num rul 11, iar pe linia a doua valorile 23 12 54 12 78 345 67 23 78 934 23 atunci fi ierul bac.out va con ine: 12 23 78 (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 051 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag x memoreaz un num r natural cu exact 4 cifre. Care dintre urm toarele instruc iuni C/C++ determin , n urma execut rii, eliminarea cifrei sutelor num rului memorat de variabila x? (4p.) b. x=x%1000*100+x/100; d. x=x/1000*100+x%100;
Varianta 51 - informatica
a. x=x%10+x/10+x/1000; c. x=x%1000+x%100+x%10;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y i cu [a] partea ntreag a num rului real a. a) Scrie i ce valoare se va afi a dac pentru x se cite te num rul 1234. (6p.) b) Scrie i cea mai mare valoare format din exact 4 cifre distincte, care poate fi citit pentru variabila x, astfel nct algoritmul s afi eze un num r format din toate cifrele lui x, dar n ordine invers . (4p.) c) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repetitiv cu test final cu o structur repetitiv cu test ini ial. (6p.) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
cite te x
(num r natural nenul) z 0 repet c x%10 dac c%2 0 atunci z z*10+c-1 altfel z z*10+c x [x/10] pn cnd x = 0 scrie z
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 051 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde elev{ char nume[10],prenume[20]; float medie; }p;
Subiectul I
struct Consider m declararea al turat folosit pentru a memora numele, prenumele i media unui elev. Care dintre expresiile de mai jos are ca BACALAUREAT 2009 INFORMATIC limbajul C/C++ valoare prima liter a numelui, unui elev Specializarea -informatic ale c Matematic rui informa ii sunt memorate n variabila p? (4p.) a. c. 2. a. c. p.nume[1] p.nume b. d.
p.nume[0] nume[1]
Se consider un graf neorientat cu 5 noduri i 9 muchii. Care dintre urm toarele iruri de numere pot fi gradele nodurilor grafului? (4p.) 4, 2, 6, 4, 2 1, 1, 1, 1, 1 b. d. 2, 2, 1, 2, 2 4, 3, 3, 4, 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. n secven a al turat , variabila a memoreaz elementele x=1; unui tablou bidimensional cu 4 linii (numerotate de la 0 la for (i=0;i<=3;i++) 3) i 4 coloane (numerotate de la 0 la 3), iar toate for (j=0;j<=3;j++) { if (i==j) celelalte variabile sunt de tip ntreg. a[i][j]=2*x; Dup executarea secven ei de instruc iuni scris al turat else a) ce valoare va avea elementul a[1][3]? (3p.) a[i][j]=x; b) care este suma elementelor de pe diagonala principal x=x+1; a acestui tablou? (3p.) } Se consider arborele cu r d cin avnd 10 noduri, numerotate de la 1 la 10 dat prin vectorul Tata=(6, 0, 2, 2, 3, 3, 2, 7, 7, 9). Care este nodul r d cin i care sunt nodurile terminale ale arborelui? (6p.) Scrie i un program C/C++ care cite te de la tastatur un ir avnd maximum 30 de caractere i afi eaz pe ecran mesajul DA n cazul n care irul con ine numai litere i spa ii, iar n caz contrar afi ez mesajul NU. Exemplu: dac se cite te de la tastatur irul: Ana, Bogdan au 18 ani. atunci programul va afi a mesajul Nu. (10p.)
4.
5.
Varianta 51 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 051 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care este antetul corect al subprogramului cifre, care prime te prin intermediul primului parametru, x, un num r natural i returneaz prin intermediul celui de-al doilea parametru, y, suma cifrelor num rului natural x? (4p.) b. int cifre(int x) a. void cifre(int x, int &y) d. int cifre(int &x, int y) c. void cifre(int x, int y)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider un num r natural nenul, x, avnd exact 8 cifre, distincte dou cte dou ; printre cifrele sale se g se te i cifra 0. Permutnd cifrele lui x, se ob in alte numere naturale. a) Cte dintre numerele ob inute, inclusiv x, au exact 8 cifre? b) Cte dintre numerele ob inute sunt divizibile cu 10? 3. (3p.) (3p.)
Se consider subprogramul divizor, care prime te prin intermediul primului parametru, a, un num r natural (1<a<10000) i returneaz cel mai mic divizor prim al num rului a. a) Scrie i n limbajul C/C++ defini ia complet a subprogramului divizor. (4p.)
b) Fi ierul text date.in con ine pe prima linie un num r natural nenul n (n 100), iar pe a doua linie n numere naturale mai mari dect 1, separate prin cte un spa iu, fiecare num r avnd maximum 4 cifre. Scrie i un program C/C++ care cite te toate numerele din fi ierul date.in i afi eaz pe ecran suma ob inut adunnd, pentru fiecare dintre cele n numere citite de pe a doua linie din fi ier, cel mai mic divizor prim. Se vor utiliza apeluri utile ale subprogramului divizor. Exemplu: dac fi ierul date.in are con inutul al turat, se 6 va afi a 20 (20=2+5+2+7+2+2). (6p.) 16 25 6 77 10 4 4. Se consider expresia E(x)=a0Xn + a1Xn-1 + a2Xn-2 +...+ an-1X +an. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (n 9), cele n+1 numere ntregi a0, a1, a2 ,, an-1, an , apoi o valoare ntreag x (-9 x 9). Programul calculeaz i apoi afi eaz pe ecran valoarea expresiei E(x). (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 052 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. C rui interval i apar ine valoarea memorat de variabila real x astfel nct expresia urm toare, scris n limbajul C/C++, s aib valoarea 1? (x<=-2) || (x>-1) && !(x>=1) || (x>50) (4p.) b. (- ,-2) (-1,50) a. (- ,-2] (-1,1) (50, ) d. (- ,-2) (-1,1) (50, ) c. (- ,-2) (-1,1] (50, )
Varianta 52 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y i cu [a] partea ntreag a num rului real a. a) Scrie i care este valoarea afi at dac se citesc, n aceast ordine, numerele 5, 12, 4, 13, 25, 17. (6p.) Scrie i un ir de date de intrare ce pot fi citite astfel nct valoarea afi at s fie 4. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repetitiv pentru... execut cu o structur repetitiv cu test final. (6p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.) cite te n (num r natural nenul) d 0 c 0 pentru i 1,n execut cite te x (num r natural nenul) ct timp x%2=0 execut x [x/2]; d d+1 ct timp x%5=0 execut x [x/5]; c c+1 dac c<d atunci scrie c altfel scrie d
b) c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 052 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
struct elev{ Consider m declararea al turat folosit char nume[10],prenume[20]; pentru a memora numele, prenumele i cele float nota1,nota2; 2 note ale unui elev. } x; Care dintre instruc iunile , limbajul de mai jos BACALAUREAT 2009 - INFORMATIC C/C++ Subiectul I calculeaz n -informatic variabila real m media Specializarea Matematic aritmetic a notelor elevului ale c rui informa ii sunt memorate n variabila x? (4p.) a. c. 2. m=(x.nota1+x.nota2)/2; x.m=(x.nota1+x.nota2)/2; b. d. m=(nota1+nota2)/2; m=(x,nota1+x,nota2)/2;
Se consider graful neorientat din figura al turat . Care este num rul minim de muchii ce se pot elimina astfel nct graful par ial ob inut s aib exact 3 componente conexe? (4p.) 2 b. 4 c. 1 d. 3
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. n secven a al turat , variabila a memoreaz elementele x=1; unui tablou bidimensional cu 4 linii (numerotate de la 0 la for (i=0;i<=3;i++) 3) i 4 coloane (numerotate de la 0 la 3), iar toate for (j=0;j<=3;j++) { if(i==j) a[i][j]=x; celelalte variabile sunt de tip ntreg. else a[i][j]=i+1; Ce valoare va avea elementul a[3][3] i care este x=x+1; suma elementelor de pe prima linie a tabloului dup } executarea secven ei de instruc iuni scris al turat? (6p.) Se consider o stiv n care in ial au fost introduse, n aceast ordine, valorile 1, 2, 3 ca n desenul al turat. Opera ia prin care se adaug elementul a n stiv s-a notat cu Push a iar operatia prin care se extrage un element din stiv s-a notat cu Pop. Reprezenta i, dup modelul din figura al turat , con inutul stivei dup fiecare dintre opera iile care urmeaz : Push 4, Pop, Pop, Push 5. (6p.) Scrie i un program C/C++ care cite te de la tastatur o fraz avnd maximum 100 de caractere, n care cuvintele sunt separate prin cte un spa iu; programul construie te n memorie i afi eaz pe ecran un ir ce con ine doar primul caracter al fiec ruia dintre cuvintele frazei, n ordinea n care acestea apar n fraz , ca n exemplu. Exemplu: dac se cite te fraza Ana sustine bacalaureatul la informatica atunci se va afi a Asbli (10p.)
4.
5.
Varianta 52 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 052 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking, se genereaz n ordine lexicografic toate anagramele cuvntului caiet (a anagrama nseamn a schimba ordinea literelor unui cuvnt pentru a ob ine un alt cuvnt). Cte cuvinte care ncep cu litera a vor fi generate? (4p.) b. 20 a. 4 c. 12 d. 24
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. long f(unsigned int n) 2. Se consider subprogramul f, definit al turat. { if (n==0) return 0; Ce valoare are f(4)? Dar f(20)? (6p.) else return n*n+f(n1); } 3. Subprogramul dist prime te prin intermediul parametrului a un num r natural cu maximum 8 cifre i returneaz 1 dac cifrele num rului a au aceea i paritate (sunt toate pare sau toate impare), altfel returneaz 0. a) Scrie i defini ia complet a subprogramului dist. (4p.)
b) Fi ierul text date.in con ine pe prima linie un num r natural nenul n (n 100), iar pe a doua linie n numere naturale, separate prin cte un spa iu, fiecare num r avnd maximum 8 cifre. Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz pe ecran, desp r ite prin cte un spa iu, numerele de pe a doua linie a fi ierului date.in, ce au toate cifrele cu aceea i paritate, folosind apeluri utile ale subprogramului dist. n cazul n care nu exist niciun astfel de num r se va afi a, pe ecran, valoarea -1. Exemplu: dac fi ierul date.in are con inutul 6 16 1775 333 242477 123 55566 al turat, atunci se vor afi a numerele: 1775 333 (nu neap rat n aceast ordine) (6p.) 4. Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n 100) i apoi n numere naturale, de maximum 4 cifre fiecare, reprezentnd elementele unui tablou unidimensional. Programul afi eaz mesajul Da n cazul n care elementele tabloului pot fi rearanjate astfel nct s formeze un ir strict cresc tor, iar n caz contrar afi eaz mesajul Nu. Exemplu: dac n=6 i tabloul unidimensional are 54 162 2 18 486 6 con inutul al turat, atunci se va afi a Da. (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 053 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag x memoreaz un num r natural. Care dintre urm toarele expresii C/C++ are valoarea 0 dac i numai dac num rul memorat de x NU este divizibil cu 3? (4p.) b. (1-x%3)+(2-x%3) d. 3-x%3
Varianta 53 - informatica
a. x%3 c. (1-x%3)*(2-x%3)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y i cu [a] partea ntreag a num rului real a. a) b) Scrie i care este valoarea ce se va afi a dac pentru x se cite te num rul 1234. (6p.) Scrie i cea mai mic valoare format din exact 4 cifre, care poate fi citit pentru variabila x, astfel nct algoritmul s afi eze valoarea 0. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repetitiv cu test final cu o structur repetitiv cu test ini ial. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) cite te x (num r natural nenul) z 0 p 1 repet c x%10 dac c%2 0 atunci z z+c*p p p*10 x [x/10] pn cnd x = 0 scrie z
c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 053 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
n secven a al turat , variabila x for(i=0;i<=strlen(x)-1;i=i+3) cout<<x[i]; | printf(%c,x[i]); memoreaz un ir cu cel mult 100 de caractere, iar variabila i este de tip ntreg. Care este num rul maxim de caractere pe care l poate avea irul x astfel nct secven a BACALAUREAT - INFORMATIC , limbajul C/C++ Subiectul I al turat 2009 s afi eze exact 3 caractere ale acestuia? (4p.)
Specializarea Matematic -informatic
a. 2. a. c.
b.
c.
d.
Se consider un graf orientat cu 5 vrfuri i 8 arce. Care dintre urm toarele iruri de numere pot fi gradele exterioare ale vrfurilor acestui graf? (4p.) 2, 3, 1, 1, 1 1, 0, 1, 1, 1, 1 b. d. 2, 2, 6, 5, 1 1, 1, 0, 2, 1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. In secven a de mai jos, variabila a memoreaz elementele unui tablou bidimensional cu 5 linii (numerotate de la 1 la 5) i 5 coloane (numerotate de la 1 la 5), iar celelalte variabile sunt de tip ntreg. Ce valoare se va afi a n urma execut rii secven ei dac se prelucreaz urm toarea matrice? x=0; 1 2 3 4 2 for (i=1;i<=5;i++) 6 7 8 9 4 if(a[i][i]%2!=0) 1 2 0 4 3 x=x+a[i][6-i]; 7 2 1 4 5 cout<<x; | printf(%d,x); 1 2 3 4 5 (6p.) Se consider arborele din figura al turat . Care este vectorul cu leg turi de tip tat pentru acest arbore? Care sunt descenden ii nodului 3? (6p.)
4.
5.
Scrie i un program C/C++ care cite te de la tastatur 4 numere naturale nenule m, n, x i y (2<m 10, 2<n 20, 1 x 10, 1 y 10) i elementele unui tablou bidimensional a cu m linii, numerotate de la 1 la m, si n coloane, numerotate de la 1 la n; programul interschimb elementele tabloului bidimensional de pe linia x cu cele de pe linia y. Tabloul bidimensional astfel ob inut se va afi a pe ecran, cte o linie a tabloului pe cte o linie a ecranului, cu un spa iu ntre elementele fiec rei linii. se va afi a matricea Exemplu: pentru m=4, n=3, x=1, y=3 i matricea
(10p.)
Varianta 53 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 053 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Subprogramul f realizeaz interschimbarea valorilor a dou variabile ntregi transmise prin intermediul parametrilor x i y. Care este antetul corect al subprogramului f? (4p.) b. int f(int x,int y) a. void f(int &x, int &y) c. void f(int x, int &y) d. void f(int &x, int y)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, int f(unsigned int n) definit al turat. Ce valoare are { if (n==0) return 0; else if (n%2==0) f(2138)? Dar f(513)? (6p.) return n%10+f(n/10); else return f(n/10); } 3. Se consider subprogramul cmmdc, care prime te prin intermediul a doi parametri, a i b, dou numere naturale nenule, cu maximum 8 cifre fiecare, i returneaz cel mai mare divizor comun al valorilor parametrilor a i b. a) Scrie i numai antetul subprogramului cmmdc. (4p.)
b) Fi ierul text date.in con ine pe prima linie un num r natural nenul n (n 100), iar pe a doua linie un ir format din n numere naturale nenule, separate prin cte un spa iu, fiecare num r avnd maximum 8 cifre. Scrie i un program C/C++ care cite te toate numerele din fi ierul text date.in i afi eaz pe ecran num rul perechilor de elemente aflate pe pozi ii consecutive n irul format cu elementele situate pe a doua linie a fi ierului, care sunt prime ntre ele, folosind apeluri utile ale subprogramului cmmdc. Exemplu: dac fi ierul date.in are con inutul al turat, se va 7 afi a 4 pentru c pechile (16,25), (12,7), (7,4), (4, 5) 16 25 15 12 7 4 5 sunt formate din numere prime intre ele. (6p.) 4. Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n<=100), apoi un ir de n numere naturale cu cel mult 4 cifre fiecare, i afi eaz pe ecran irul i cele n-1 iruri ce se pot ob ine prin permut rile circulare, c tre stnga, ale elementelor irului. Fiecare ir se afi eaz pe cte o linie, elementele irului fiind separate prin cte un spa iu. Exemplu: dac n=4 , iar irul are con inutul al turat, atunci se 10 20 30 49 vor afi a irurile: 10 20 30 49 20 30 49 10 30 49 10 20 49 10 20 30
(10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 054 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. C rui interval i apar ine valoarea memorat de variabila real urm toare, scris n limbajul C/C++, s aib valoarea 1? !((x<=1) || (x>50)) b. (- ,1] (50, d. (1,50] x astfel nct expresia (4p.) )
Varianta 54 - informatica
a. (1,50) c. [1,50)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n (num r natural nenul) 2. Se consider algoritmul al turat, descris n pseudocod. s 0 S-a notat cu x%y restul mp r irii num rului ntreg x la ct timp n>0 execut num rul ntreg nenul y i cu [a] partea ntreag a c n%10 num rului real a. dac c%2=0 atunci p 1 a) Scrie i care este valoarea afi at dac se pentru i 2,c execut cite te num rul 1234. (6p.) p p*i b) Scrie i un num r natural, de exact 4 cifre, care poate fi citit pentru variabila n, astfel nct valoarea afi at s fie 3. (4p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repetitiv pentru...execut cu o structur repetitiv cu test final. (6p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.) s s+p n [n/10] scrie s
c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 054 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider un graf neorientat complet cu 10 vrfuri. Cte lan uri elementare distincte de lungime 3 exist ntre vrful 2 i vrful 4? Dou lan uri sunt distincte dac difer prin cel pu in o muchie. (4p.) 90 28 45 d. 56 Subiectul I
b. a. BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ c. Specializarea Matematic -informatic 2. Se consider graful orientat din figura al turat . Cte dintre vrfurile grafului au gradul intern egal cu gradul extern? (4p.)
a.
b.
c.
d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. n secven a al turat , variabila x strcpy(x,bac2008); memoreaz un ir de caractere, iar toate k1=strlen(x); k2=0; celelalte variabile sunt de tip ntreg. Ce valori au variabilele k1 i k2 dup for (i=0;i<strlen(x);i++) if( x[i]>=0 && x[i]<=9) executarea secven ei de instruc iuni k2=k2+1; al turate? (6p.) Consideram urm toarele declar ri: int a[10][10],i,k; Ce valoare are variabila k dup executarea k=0; secven ei de instruc iuni al turate, dac a for(i=0;i<=9;i++) memoreaz elementele unui tablou if((1-a[i][i]%3)*(2-a[i][i]%3)==0)) k++; bidimensional cu 10 linii (numerotate de la 0 la 9) i 10 coloane (numerotate de la 0 la 9), ce are pe fiecare linie n ordine cresc toare numerele 1, 2, ..., 10 ? (6p.) 5. Scrie i un program C/C++ care cite te de la tastatur un num r natural n (3 n 10) i un num r natural x, cu exact 2 cifre, i care construie te n memorie un tablou bidimensional cu n linii (numerotate cu numere de la 1 la n) i n coloane (numerotate cu numere de la 1 la n), ce are elementele de pe liniile de rang impar egale cu prima cifr a num rului x i elementele de pe liniile de rang par egale cu ultima cifr a num rului x. Tabloul bidimensional se va afi a pe ecran, cte o linie a tabloului pe cte o linie a ecranului, elementele fiec rei linii fiind separate prin cte un spa iu. Exemplu: dac se citesc de la tastatur n=4 i x=13 atunci se 1 1 1 1 afi eaz tabloul bidimensional al turat. (10p.) 3 3 3 3 1 1 1 1 3 3 3 3
4.
Varianta 54 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 054 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic toate anagramele cuvntului caiet (a anagrama nseamn a schimba ordinea literelor unui cuvnt pentru a ob ine un alt cuvnt). Care este a asea solu ie? (4p.) b. actie a. catei c. actei d. catie
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, int f(int n, int x) definit al turat. Ce valoare are { f(97,2)? Dar f(175,2)? (6p.) if (n<=1) return 0; else if (x<=n/2) if (n%x==0) return 0; else return f(n,x+1); else return 1; } 3. Se consider subprogramul pal, care prime te prin intermediul primului parametru, a, un num r natural, cu minimum 2 cifre i maximum 8 cifre, i furnizeaz prin intermediul celui de-al doilea parametru, b, cel mai apropiat num r de valoarea lui a, care este palindrom. n cazul n care exist 2 astfel de numere, subprogramul va returna num rul mai mic. Un num r natural x este palindrom dac este egal cu num rul ob inut prin scrierea cifrelor lui x n ordine invers . Exemplu: dac a=16, atunci valoarea returnat este 11; dac a=128, valoarea returnat este 121, iar dac a=33, atunci se returneaz 33. a) Scrie i definitia complet a subprogramului pal. (4p.)
b) Fi ierul text date.in con ine pe prima linie un num r natural nenul n (n 100), iar pe a doua linie n numere naturale nenule, separate prin cte un spa iu, fiecare num r avnd minimum 2 cifre i maximum 8 cifre. Scrie i un program C/C++ care cite te toate numerele din fi ierul text date.in i afi eaz pe ecran, desp r ite prin cte un spa iu, pentru fiecare dintre cele n numere, cel mai apropiat num r palindrom, folosind apeluri utile ale subprogramului pal. Exemplu: dac fi ierul date.in are con inutul al turat, atunci 4 se vor afi a numerele: 11 1771 333 191 (6p.) 16 1775 333 190 4. Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n<=100) i apoi cele n numere naturale nenule, de maximum 4 cifre, reprezentnd elementele unui tablou unidimensional v (cu indici de la 1 la n) i afi eaz cte dintre elementele vi (2 i n-1) sunt egale cu suma celor dou elemente vecine. n cazul n care nu exist niciun astfel de element n tabloul v, se va afi a valoarea 0. Exemplu: dac n=7 i tabloul unidimensional v are 10 25 15 45 30 2 1 con inutul al turat, atunci se va afi a valoarea 2 (deoarece 25=10+15, 45=15+30). (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 055 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii echivalent cu cea scris al turat? C/C++ este (4p.) !((x>=5)&&(x<10))
Varianta 55 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y. a) Scrie i care este valoarea afi at dac se citesc, n aceast ordine, valorile: 5, 12, 22, 1232, 3, 563. (6p.) Pentru n=7, scrie i un set de valori ce trebuie citite n continuare, astfel nct valoarea afi at s fie 4. (4p.) Scrie i n pseudocod un algoritm echivalent cu algoritmul dat, n care s se nlocuiasc structura repetitiv pentru...execut cu o structur repetitiv cu test final. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) cite te n (num r natural nenul) cite te a (num r natural) k 0 pentru i 2,n execut cite te b (num r natural) dac a%10=b%10 atunci k k+1 altfel k k-1 a b scrie k
b) c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 055 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Consider m declararea al turat . Care dintre urm toarele struct punct{ int x,y; instruc iuni este corect din punct de vedere sintactic? } p; (4p.) p->y=p->y+1; b. p=9; p=p+1;
Subiectul I
a.
2.
Variabila n memoreaz un num r natural nenul. Care este num rul total de grafuri orientate distincte care se pot forma cu aceste noduri? Dou grafuri orientate sunt distincte dac matricele lor de adiacen sunt diferite. (4p.)
a. c.
4n*(n-1)/2 4
n*(n-1)
b. d.
3n*(n-1)/2 2n*(n-1)/2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. for (i=0;i<=8;i++) if( a[i][9-i]<a[i+1][8-i]) {aux=a[i][9-i]; a[i][9-i]=a[i+1][8-i]; Ce valori se afi eaz n urma execut rii a[i+1][8-i]=aux;} secven ei al turate dac liniile i coloanele tabloului bidimensional sunt numerotate de la cout<<a[0][9]<< <<a[9][0]; 0 la 9 i ini ial fiecare linie a tabloului con ine, |printf(%d %d,a[0][9],a[9][0]); de la stnga la dreapta, n ordine descresc toare, toate numerele naturale, de la 10 la 1? (6p.) Consider m urm toarele declar ri: int i,aux,a[10][10]; Se consider o coad n care in ial au fost introduse, n aceast ordine, valorile 1, 2, 3 ca n desenul al turat. Opera ia prin care se adaug valoarea a n 1 coad s-a notat cu ADD a, iar operatia prin care se extrage un element din coad s-a notat cu EL. Reprezenta i coada, ca n modelul al turat, dup fiecare dintre opera iile: ADD 4, EL, ADD 5. (6p.) 2 3
4.
5.
Scrie i un program C/C++ care cite te de la tastatur un ir format din maximum 100 caractere, construie te n memorie i afi eaz un nou ir de caractere ob inut din irul ini ial prin eliminarea tuturor caracterelor care nu sunt caractere cifr . n cazul n care noul ir are lungimea 0 se va afi a mesajul ir vid. Exemplu: dac se cite te de la tastatur irul de caractere. Ana are 17 ani . atunci irul cerut este: 17 (10p.)
Varianta 55 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 055 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking se genereaz toate matricele p tratice de ordinul 4 ale c ror elemente apar in mul imii {0,1}, cu proprietatea c pe fiecare linie i pe fiecare coloan exist o singur valoare 1. Primele 4 solu ii generate sunt, n aceast ordine: 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 (4p.) c. 0 0 1 0 d. 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit int f(unsigned int n) al turat. Ce valoare are f(5)? { if (n>20) return 0; else return 5+f(n+5); Dar f(40)? (6p.) } 3. Se consider subprogramul cifre, cu doi parametri, a i b, care prime te prin intermediul primului parametru, a, un num r natural cu maximum 8 cifre nenule i returneaz , prin intermediul celui de-al doilea parametrul b, cel mai mic num r care se poate forma cu toate cifrele lui a. a) Scrie i defini ia complet a subprogramului cifre. (4p.)
b) Se consider fi ierul text date.in ce con ine pe prima linie un num r natural nenul n (n 100), iar pe a doua linie n numere naturale, separate prin cte un spa iu, fiecare num r avnd maximum 8 cifre nenule. Scrie i un program C/C++ care cite te toate numerele din fi ierul text date.in i afi eaz pe ecran, desp r ite prin cte un spa iu, numerele situate pe a doua linie a fi ierului, formate numai din cifre ordonate cresc tor, folosind apeluri utile ale subprogramului cifre. n cazul n care nu exist niciun astfel de num r se va afi a valoarea 0. Exemplu: dac fi ierul date.in are con inutul al turat, 6 atunci se vor afi a numerele: 16 333 269 (6p.) 16 175 333 242477 321 269 4. Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n 100) i 2*n numere naturale de maximum 3 cifre; primele n reprezint elementele tabloului unidimensional a, iar urm toarele n elementele tabloului unidimensional b; fiecare tablou are elementele numerotate ncepnd de la 1. Programul construie te n memorie i afi eaz pe ecran, separate prin cte un spa iu, cele n elemente ale unui tablou unidimensional c, n care orice element ci (1 i n) se ob ine conform defini iei urm toare: ai concatenat cu bi, dac ai< bi ci = bi concatenat cu ai, altfel Exemplu: dac n=3 i tablourile a i b au con inutul a : (12, 123, 345) al turat, atunci con inutul tabloului c este urm torul: b: (1, 234, 15) 112 123234 15345 (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 056 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele ntregi x i y memoreaz cte un num r natural nenul. Cel mai mic multiplu comun al valorilor lor este egal cu num rul memorat n y dac i numai dac urm toarea expresie C/C++ are o valoare nenul : (4p.) b. y%x==0 c. x%y d. x%y==0
Varianta 56 - informatica
a. y%x
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n (num r natural) r 0 S-a notat cu [x] partea ntreag a num rului real x i cu a%b repet restul mp r irii num rului ntreg a la num rul ntreg nenul b. r (r*10+n%10)*10 n [n/100] a) Scrie i valoarea care se va afi a pentru n=8291. (6p.) pn cnd n<10 b) Scrie i o valoare de 5 cifre distincte care poate fi citit scrie r pentru variabila n astfel nct num rul afi at s fie 7080. (4p.) c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) 2. Se consider algoritmul al turat, descris n pseudocod:
d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repet ...pn cnd cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 056 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Variabila x este utilizat pentru a memora numele, prenumele i salariul unei persoane. Numele i prenumele pot avea cel mult 20 de litere fiecare, iar salariul este un num r natural nenul mai mic dect 30000 . Care dintre urm toarele declar ri este corect ? (4p.) int x[3][21];
Subiectul I
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++b. float x[3][21]; a. Specializarea Matematic -informatic
c.
d.
2. a.
Dac G este un graf neorientat cu 4 noduri, atunci num rul maxim de muchii pe care le poate avea graful este: (4p.) 5 b. 4 c. 3 d. 6
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. 5. Fie T un arbore cu r d cin . Arborele are 8 noduri numerotate de la 1 la 8 i este descris prin urm torul vector de ta i: (4,1,6,0,1,1,4,7). Care sunt frunzele arborelui? (6p.) Scrie i o expresie C/C++ care s fie nenul dac o liter mic a alfabetului englez. i numai dac variabila c de tip char este (6p.)
Scrie i un program C/C++ care cite te de la tastatur dou numere naturale n i k (2<n<25, 0<k<n) i construie te n memorie o matrice cu n linii i n coloane format numai din valori 1 i 2 astfel nct: elementele aflate pe primele k coloane sunt egale cu 1, iar elementele aflate pe ultimele n-k coloane sunt egale cu 2 ca n exemplul de mai jos. Programul afi eaz pe ecran matricea construit , fiecare 1 1 1 2 2 linie a matricei pe o linie a ecranului i elementele de pe 1 1 1 2 2 aceea i linie separate prin cte un singur spa iu. 1 1 1 2 2 Exemplu: pentru n=5, k=3 se construie te n memorie i se 1 1 1 2 2 afi eaz matricea al turat . (10p.) 1 1 1 2 2
Varianta 56 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 056 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz toate numerele naturale cu exact 2 cifre nenule. Cte numere se vor genera n total? (4p.) b. 81 c. 90 d. 9 a. 100
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce valoare are f(1)? Dar f(20)? (6p.) int f(int n) { if(n==0)return 0; return 1+f(n/2); }
3.
Fi ierul text numere.txt con ine, pe o singur linie, cel mult 1000 de numere naturale nenule de cel mult patru cifre fiecare, numerele fiind separate prin cte un spa iu. Scrie i un program C/C++ care cite te toate numerele din fi ierul numere.txt, creeaz fi ierul text pare.txt i scrie pe prima lui linie, separate prin cte un spa iu, toate numerele pare citite, n ordinea n care acestea apar n fi ierul numere.txt. Dac fi ierul numere.txt nu con ine niciun num r par, atunci n fi ierul pare.txt se va scrie mesajul nu exista. Exemplu: numere.txt pare.txt 2 3 1 4 7 2 5 8 6 2 4 2 8 6 (10p.) Se consider subprogramul numar, cu doi parametri, x i nrp, care: prime te prin intermediul parametrului, x, un num r natural nenul de cel mult 4 cifre; furnizeaz prin intermediul parametrului nrp num rul de numere prime mai mici sau egale cu x. a) Scrie i numai antetul subprogramului numar. (4p.)
4.
b) Scrie i programul C/C++ care cite te de la tastatur dou numere naturale nenule de cel mult 4 cifre, a i b, i prin apeluri utile al subprogramului numar se verific dac intervalul determinat de a i b con ine cel pu in un num r prim. Programul va afi a pe ecran n caz afirmativ mesajul DA, iar n caz contrar mesajul NU. Prin intervalul determinat de a i b se n elege intervalul [a,b] dac a<b i [b,a] n caz contrar. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 057 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele ntregi x i y memoreaz numere naturale nenule. Care dintre urm toarele expresii C/C++ este nenul dac i numai dac num rul ob inut prin nsumarea valorilor variabilelor x i y are ultima cifr 0? (4p.) b. y%10==x%10 d. (x%10+y%10)%10==0
Varianta 57 - informatica
a. x%10+y%10==0 c. x+y%10==0
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod: S-a notat cu a%b restul mp r irii num rului ntreg a la num rul ntreg nenul b i cu [x] partea ntreag a num rului real x. a) b) c) d) Scrie i valoarea care se va afi a pentru n=20. (6p.) Scrie i o valoare care poate fi citit pentru variabila n astfel nct num rul afi at s fie 9. (4p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.) cite te n (num r natural) q 1 i 1 ct timp i<[n/i] execut dac n%i=0 atunci q q+i i i+3 scrie q
Scrie i n pseudocod un algoritm, echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 057 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Variabila t este utilizat pentru a memora valoarea i numele autorului unei c r i. Valoarea c r ii este un num r natural de cel mult 3 cifre, iar numele autorului nu poate avea mai mult de 20 de litere. Care dintre urm toarele declar ri este corect ? (4p.)
Subiectul I
struct 2009 carte{ int val;char BACALAUREAT - INFORMATIC , limbajulnume;} C/C++ t; a. Specializarea Matematic -informatic b. c. d. 2. a. c. struct carte{int val,nume;} t; struct carte{ int val;char nume[21];} t; struct carte{ int val[21][21];char nume;} t;
Care dintre urm toarele afirma ii este adev rat pentru orice graf neorientat G cu 3 noduri i 3 muchii? (4p.) este conex nu poate avea cicluri b. d. are dou noduri izolate are un nod izolat
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Fie T un arbore cu r d cin . Arborele are 8 noduri numerotate de la 1 la 8 i este descris 3. prin urm torul vector de ta i:(3,5,0,3,3,5,5,5). a) Care este nodul cu cei mai mul i descenden i direc i (fii)? b) Care sunt nodurile frunz ale acestui arbore? 4. 5. (3p.) (3p.)
Se consider mul imea vocalelor {a,e,i,o,u}. Scrie i o expresie C/C++ care s fie nenul dac i numai dac variabila c de tip char este o vocal . (6p.) Scrie i un program C/C++ care cite te de la tastatur dou numere naturale n i a (2<n<25, 0<a<n) i construie te n memorie o matrice cu n linii i n coloane numerotate de la 1 la n, format numai din valori 0,1 i 2 astfel nct: elementele aflate pe linia a sunt egale cu 0, cele de deasupra liniei a sunt egale cu 1, iar elementele aflate sub linia a sunt egale cu 2 ca n exemplul de mai jos. Programul afi eaz pe ecran matricea construit , fiecare linie a 1 1 1 1 1 matricei pe o linie a ecranului i elementele de pe aceea i linie 1 1 1 1 1 separate prin cte un singur spa iu. 1 1 1 1 1 Exemplu: pentru n=5, a=4 se construie te n memorie i se afi eaz 0 0 0 0 0 matricea al turat . (10p.) 2 2 2 2 2
Varianta 57 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 057 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera cuvintele de cte patru litere distincte din mul imea {d,a,n,s}. tiind c primul cuvnt generat este dans, iar al doilea este dasn, care va fi al treilea cuvnt ob inut? (4p.) b. dsan c. dnsa d. dsna a. dnas
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce se va afi a la apelul f(38);? (6p.) void f(int x) { if(x) { f(x/3); printf("%d",x%3+1);| cout<<x%3+1; } }
3.
Fi ierul text INTRARE.TXT con ine pe prima linie o valoare natural n (1<n<100), iar pe a doua linie, separate prin cte un spa iu, n numere naturale distincte, cu cel mult patru cifre. Scrie i un program C/C++ care creeaz fi ierul text IESIRE.TXT i scrie n el, pe prima linie, separate prin spa iu, toate valorile ob inute ca sum de dou elemente distincte aflate pe linia a doua n fi ierul INTRARE.TXT. Exemplu: dac fi ierul INTRARE.TXT are urm torul con inut: 4 1 4 3 2 atunci fi ierul IESIRE.TXT va con ine numerele: 5 4 3 7 6 5 (nu neap rat n aceast ordine) (10p.) Se consider subprogramul multiplu, cu doi parametri, care: prime te prin intermediul parametrilor a i k dou numere ntregi de cel mult 4 cifre; returneaz cel mai mic multiplu al lui k mai mare sau egal cu a. a) Scrie i numai antetul func iei multiplu. (4p.)
4.
b) Scrie i declar rile de date i programul principal C/C++ care cite te de la tastatur trei numere naturale nenule x, y, z, de cel mult 4 cifre fiecare, (x y), i care, prin apeluri utile ale subprogramului multiplu, verific dac intervalul [x,y] con ine cel pu in un multiplu al lui z. Programul va afi a pe ecran, n caz afirmativ, mesajul DA, iar n caz contrar mesajul NU. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 058 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. tiind c variabila ntreag n memoreaz un num r natural cu cel pu in 3 cifre, care dintre urm toarele expresii C/C++ are ca valoare num rul ob inut dup eliminarea ultimelor 2 cifre ale lui n? (4p.) b. n%10 c. n/100 d. n/10%10
Varianta 58 - informatica
a. n%10/10
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod: S-a notat cu [x] partea ntreag a num rului real x i cu a%b restul mp r irii num rului ntreg a la num rul ntreg nenul b. a) b) c) d) Scrie i valoarea care se va afi a pentru n=53. (6p.) cite te n (num r natural) q 1 ct timp n>0 execut dac n%5=0 atunci q q*10 altfel q q*10+1 n [n/5] scrie q
Scrie i o valoare care poate fi citit pentru variabila n astfel nct num rul afi at s fie 1001. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm, echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 058 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Variabila t este utilizat pentru a memora num rul de exemplare disponibile ntr-o bibliotec i titlul unei c r i. Num rul de exemplare este un num r natural de cel mult 2 cifre, iar titlul nu poate avea mai mult de 20 de litere. Care dintre urm toarele declar ri este corect ? (4p.) BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I
Specializarea Matematic struct carte -informatic { a.
b.
struct carte{ int nr; char titlu[21]; } t; struct carte{ long nr,titlu; } t;
2. a.
Dac G este un graf neorientat cu 4 noduri i 2 muchii, atunci num rul maxim de componente conexe pe care le poate avea graful este: (4p.) 1 b. 2 c. 3 d. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Se consider o stiv ini ial vid n care se introduc, n aceast ordine, numerele 3. 1,2,3,4,5, apoi se fac dou extrageri, se introduc, n aceast ordine, numerele 6,7 i 8 i apoi se mai fac 4 extrageri. a) Ce num r se va afla n vrful stivei dup finalizarea acestor opera ii? (3p.) b) Care este suma elementelor aflate n stiv dup efectuarea acestor opera ii? (3p.) 4. Variabila a memoreaz o matrice cu 10 linii i 10 coloane, numerotate de la 1 la 10, iar i i j sunt variabile ntregi cu valori cuprinse ntre 1 i 10. Scrie i o expresie C/C++ care s fie nenul dac i numai dac elementul a[i][j] nu se afl pe niciuna dintre diagonalele acestei matrice. (6p.) Scrie i un program C/C++ care cite te de la tastatur un ir de cel mult 50 de caractere (litere mici i mari ale alfabetului englez, cifre i spa ii), determin i afi eaz pe ecran cte litere mari, cte litere mici i cte caractere nu sunt litere n irul citit. Exemplu: dac se cite te irul: Voi lua 9 la matematica si 10 la informatica atunci se va afi a: 1 32 11. (10p.)
5.
Varianta 58 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 058 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele de cte trei litere distincte din mul imea {d,a,n,s}. Care este cel de-al treilea cuvnt ob inut? (4p.) a. ads b. abs c. dan d. and
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce valoare are f(88)? Dar f(3713)? (6p.) int f(int n){ if(n==0) return 0; return f(n/10)*10+1; }
3.
Fi ierul text bac.txt con ine, pe o singur linie, cel pu in 2 i cel mult 100 de numere naturale nenule distincte de cel mult 4 cifre fiecare, numerele fiind separate prin cte un spa iu. Scrie i un program C/C++ care cite te numerele din fi ier i scrie pe ecran, n ordine cresc toare, separate prin spa iu, cele mai mici dou numere dintre cele citite. Exemplu: dac fi ierul bac.txt con ine numerele: 1017 48 310 5710 162 atunci se va afi a: 48 162 (10p.) Se consider subprogramul divizor, cu doi parametri, a i d , care: prime te prin intermediul parametrului a un num r natural strict mai mare dect 1, de cel mult 4 cifre; furnizeaz prin intermediul parametrului d cel mai mare divizor al lui a strict mai mic dect a. a) Scrie i numai antetul subprogramului divizor. (4p.)
4.
b) Scrie i declar rile de date i programul principal C/C++ care cite te de la tastatur un num r natural strict mai mare dect 1, x, de cel mult 4 cifre i, prin apeluri utile ale subprogramului divizor, verific dac x este num r prim. Programul va afi a pe ecran n caz afirmativ mesajul DA, iar n caz contrar mesajul NU. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 059 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Fiecare dintre variabilele ntregi x, y i t memoreaz cte un num r natural de cel mult 4 cifre. tiind c x<y, care dintre urm toarele expresii C/C++ este egal cu 1 dac i numai dac num rul memorat de variabila t apar ine intervalului nchis [x,y]? (4p.) b. (t>=x) && (t<=y) d. (t<x) || (t>y)
Varianta 59 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod: cite te n (num r natural) repet S-a notat cu [x] partea ntreag a num rului real x i cu a%b n n+n%10 restul mp r irii num rului ntreg a la num rul ntreg nenul b. n [n/10] a) Scrie i valoarea care se va afi a pentru n=76261. (6p.) pn cnd n<10 scrie n b) Scrie i o valoare care poate fi citit pentru variabila n astfel nct num rul afi at s fie 6. (4p.) c) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura repet ...pn cnd cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 059 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. 2. a. c. i 2 scrie i pe foaia de examen litera care corespunde
Variabila s memoreaz un ir de caractere. Care dintre urm toarele expresii C/C++ este nenul dac i numai dac lungimea efectiv a irului este strict mai mic dect 10? (4p.) strlen(s)<10 b. strlen(s,10)<0 s-0<10
Subiectul I
Care dintre urm toarele afirma ii este adev rat ? Orice graf neorientat cu 4 noduri i 4 muchii : (4p.) are gradele tuturor nodurilor numere pare este conex b. d. nu are cicluri este arbore
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Fie T un arbore cu r d cin . Arborele are 8 noduri numerotate de la 1 la 8 i este descris prin urm torul vector de ta i: (4,5,0,3,4,5,4,5). Care sunt frunzele arborelui? (6p.) Fie a o variabil care memoreaz o matrice cu 10 linii i 10 coloane numerotate de la 1 la 10, iar i i j dou variabile de tip int ale c ror valori sunt cuprinse ntre 1 i 10. Scrie i o expresie n limbajul C/C++ care s fie nenul dac i numai dac a[i][j] se afl pe penultima linie i sub diagonala principal a matricei a. (6p.) Scrie i un program C/C++ care cite te de la tastatur un ir de cel mult 50 de caractere (litere mici i mari ale alfabetului englez, cifre, puncte, virgule i spa ii) i afi eaz pe ecran cifra care apare de cele mai multe ori n irul citit. Dac irul con ine mai multe cifre cu num r maxim de apari ii, atunci se va afi a cea mai mic dintre acestea. Dac irul nu con ine cifre, se va afi a pe ecran mesajul NU. Exemplu: dac se cite te irul: Voi lua 9,5 la matematica 10 la informatica si 10 la romana atunci se va afi a cifra 0 (pentru c cifrele 0 i 1 apar de cele mai multe ori n ir i 0 este cea mai mic dintre ele) (10p.)
5.
Varianta 59 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 059 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele care con in toate literele din mul imea {a,m,i,c}, astfel nct fiecare liter s apar exact o dat ntr-un cuvnt. Cte solu ii sunt generate dup cuvntul amic i nainte de cuvntul cami? (4p.) a. 6 b. 4 c. 1 d. 3
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Se consider subprogramul f, definit int f(int a) 2. al turat. Ce valoare are f(10)? { Dar f(8261)? (6p.) if(a<10) return 7; return f(a/100)*10+8; } 3. Fi ierul text bac.txt con ine, pe o singur linie, cel pu in 2 i cel mult 100 de numere naturale nenule distincte de cel mult 4 cifre fiecare, numerele fiind separate prin cte un spa iu. Scrie i un program C/C++ care cite te toate numerele din fi ier i scrie pe ecran ultima cifr a produsului celor mai mari dou numere dintre cele citite. Exemplu: dac fi ierul bac.txt con ine numerele: 1017 48 312 5742 162 atunci se va afi a: 4 (ultima cifr a produsului numerelor 1017, 5742) (10p.) Se consider subprogramul divizor, cu doi parametri, a i d , care: prime te prin intermediul parametrului a un num r natural nenul de cel mult 4 cifre, strict mai mare ca 1; furnizeaz prin intermediul parametrului d, cel mai mic divizor al lui a strict mai mare dect 1. a) Scrie i numai antetul subprogramului divizor. (4p.)
4.
b) Scrie i declar rile de date i programul principal C/C++ care cite te de la tastatur un num r natural x (x>1), i, prin apeluri utile ale subprogramului divizor, verific dac x este num r prim. Programul va afi a pe ecran, n caz afirmativ, mesajul DA, iar n caz contrar mesajul NU. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 060 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Fiecare dintre variabilele ntregi x, y i t memoreaz cte un num r natural de cel mult 4 cifre. tiind c x<y, care dintre urm toarele expresii C/C++ este egal cu 1 dac i numai dac num rul memorat de variabila t nu apar ine intervalului deschis (x,y)? (4p.) b. (t>x) || (t<y) d. (t>x) && (t<y)
Varianta 60 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod: cite te n (num r natural) S-a notat cu [x] partea ntreag a num rului real x i cu a%b c 10 ct timp n%2=1 execut restul mp r irii num rului ntreg a la num rul ntreg nenul b. c n%10 Scrie i valoarea care se va afi a pentru n=32751. (6p.) a) n [n/10] b) Scrie i cea mai mic valoare de 5 cifre distincte care scrie c poate fi citit pentru variabila n astfel nct num rul afi at s fie 5. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 060 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. 2. a. i 2 scrie i pe foaia de examen litera care corespunde
Variabila s memoreaz un ir de caractere. Care dintre urm toarele expresii C/C++ este nenul dac i numai dac lungimea efectiv a irului este un num r par? (4p.) s-2==0 b. strlen(s,2)=0 strlen(s)%2==0
Subiectul I
Dac G este un graf neorientat cu 4 noduri i 2 componente conexe, atunci graful are cel mult: (4p.) 4 muchii b. 2 muchii c. 3 muchii d. o muchie
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Dac T este un arbore cu r d cin cu 100 de noduri, care este num rul minim de frunze pe care le poate avea T? (6p.) Fie a o matrice cu 5 linii i 5 coloane numerotate de la 1 la 5. Fiecare element a[i][j] (1 i 5, 1 j 5) din matrice memoreaz valoarea expresiei (i-1)*5+j. Care este valoarea sumei elementelor de pe ultima coloan a matricei? (6p.) Scrie i un program C/C++ care cite te de la tastatur un ir de cel mult 50 de caractere (litere mici i mari ale alfabetului englez, cifre i spa ii) i afi eaz pe ecran litera mic cel mai des ntlnit n irul citit. Dac exist mai multe litere mici cu num r maxim de apari ii, programul o va afi a pe prima dintre ele n ordine alfabetic . Dac irul nu con ine litere mici, atunci pe ecran se va afi a mesajul nu. Exemplu: dac se cite te irul: mergem la munte atunci se va afi a: e (pentru c literele e i m apar de cele mai multe ori n ir i e este prima dintre ele n ordine alfabetic ). (10p.)
5.
Varianta 60 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 060 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera toate cuvintele care con in toate literele din mul imea {i,n,f,o}, astfel nct fiecare liter s apar exact o dat ntr-un cuvnt; tiind c primul cuvnt generat este info, iar al doilea este inof, care este ultimul cuvnt ob inut? (4p.) b. oinf c. onif d. ofin a. ofni
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce valoare are f(5)? Dar f(23)? (6p.) int f(int x) { if(x%2==0) return 0; return 1+f(x/2); }
3.
Fi ierul text bac.txt con ine, pe prima sa linie, 100 de numere naturale de cel mult 4 cifre fiecare, numerele fiind ordonate cresc tor i separate prin cte un spa iu, iar pe a doua linie un singur num r natural x. Scrie i un program C/C++ care cite te toate numerele din fi ier i verific dac x se afl n irul celor 100 de numere aflate pe prima linie a fi ierului. n caz afirmativ, se va afi a pe ecran mesajul DA, altfel se va afi a mesajul NU. Exemple: dac fi ierul bac.txt con ine: 17 38 40 45 50 51 52 53 54 55 ... 145 52 atunci se va afi a: DA ; dac fi ierul bac.txt con ine: 2 11 15 16 20 25 30 35 40 ... 495 33 atunci se va afi a: NU. (10p.) Se consider subprogramul radical, cu doi parametri, a i x ,care: prime te prin intermediul parametrului a, un num r natural nenul de cel mult 4 cifre; furnizeaz prin intermediul parametrului x cel mai mare num r natural cu proprietatea c x2 este mai mic sau egal cu a; de exemplu, dac a=20, subprogramul va furniza prin x valoarea 4. a) Scrie i numai antetul subprogramului radical. (4p.)
4.
b) Scrie i programul C/C++ care cite te de la tastatur un num r natural nenul de cel mult 4 cifre, n, i prin apeluri utile ale subprogramului radical, verific dac n este p trat perfect. Programul va afi a pe ecran n caz afirmativ mesajul DA, iar n caz contrar mesajul NU. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 061 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele ntregi x i y memoreaz dou numere naturale cu cel mult 4 cifre fiecare. Care dintre expresiile de mai jos are valoarea 1, dac i numai dac valoarea memorat de x apar ine intervalului [10,100] i valoarea memorat de y apar ine intervalului [5,30]? (4p.) b. (x<=100 && x>=10) && (y<5 && y<=30) d. !((x>100 || x<10) || (y<5 || y>30))
Varianta 61 - informatica
a. (x<=100 && x>10) && (y>=5 || y<30) c. (x<=100 && x>=10)|| (y>=5 && y<=30)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te a,b 2. Se consider algoritmul al turat, descris n pseudocod. (numere naturale care au S-a notat cu x%y restul mp r irii num rului natural x la acela i num r de cifre ) num rul natural nenul y i cu [z], partea ntreag a n 0 num rului real z. ct timp a b execut x a%10 a) Scrie i ce valoare se va afi a dac se citesc numerele y b%10 a=8231 i b=3074. (6p.) dac x<y atunci n n*10+x b) Scrie i cte perechi de numere formate din cte o altfel singur cifr pot fi citite pentru a i b (a>b), astfel n n*10+y nct, de fiecare dat , valoarea afi at s fie nenul ? (4p.) a [a/10] c) Scrie i programul C/C++ corespunz tor algoritmului b [b/10] dat. (10p.) scrie n Scrie i n pseudocod un algoritm echivalent cu cel dat d) n care structura ct timp...execut s fie nlocuit cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 061 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul de componente conexe ale grafului neorientat G, din desenul al turat? (4p.)
Subiectul I
a. 2.
b.
c.
d.
a. c.
Care vor fi valorile afi ate char s1[20]=variabila, s2[20]=varianta; dup executarea secven ei if(strcmp(s1,s2)<0 && strlen(s1)<strlen(s2)) printf(%s %s,s1,s2); | cout<<s1<< <<s2; al turate? (4p.) else printf(%s %s,s2,s1); | cout<<s2<< <<s1; variabila varianta b. variantavariabila varianta variabila d. variabila variabila
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider un arbore cu r d cin , cu 100 noduri, numerotate de la 1 la 100. a) Care este num rul de muchii din arbore? b) Care este num rul maxim de cicluri pe care acesta l poate con ine? (3p.) (3p.)
4.
Se consider o stiv , ini ial vid , n care s-au introdus n ordine valorile x,z,y i o coad , ini ial vid , n care au fost introduse, n ordine, valorile a,b,c,d,e,f. Care va fi elementul din vrful stivei dac se extrag toate elementele din coad i se adaug n ordinea extragerii n stiv ? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (2<n 15) i construie te n memorie o matrice p trat cu n linii i n coloane n care: - ultima linie con ine, n ordine, numerele 1,2,3,..,n - elementele situate deasupra diagonalei principale sunt nule - oricare alt element este ob inut prin nsumarea elementelor vecine cu el, aflate pe linia imediat urm toare, pe aceea i coloan cu el sau pe una din coloanele al turate. Programul va afi a pe ecran matricea ob inut pe n linii, elementele fiec rei linii fiind separate prin cte un spa iu. 0 0 Exemplu: pentru n=4 pe ecran se va afi a: 27 0 9 18 0 0 6 9 0 (10p.) 3 1 2 3 4
5.
Varianta 61 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 061 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz , utiliznd metoda backtracking, toate modalit ile de repartizare a n teme de proiecte, numerotate de la 1 la n, pentru m elevi (n<m), numerota i de la 1 la m, astfel nct fiecare tem s fie rezolvat de cel pu in un elev. Care este num rul total de solu ii generate pentru m=3 i n=2, dac primele 3 solu ii generate sunt, n ordine, 1 1 2, 1 2 1, 1 2 2? O solu ie este scris sub forma t1, t2, ...,tm, unde ti reprezint tema (4p.) repartizat elevului i (1 i m, 1 ti n). b. 6 c. 4 d. 8 a. 12
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce int f(int x) valoare are f(4)? Dar f(456)? (6p.) {if(x>=1) return f(x-1)+1; else return 0;} Subprogramul cifra prime te prin parametrul x un num r real nenul pozitiv i furnizeaz prin parametrul y valoarea cifrei unit ilor p r ii ntregi a lui x. Exemplu: dac x=34.567, atunci valoarea furnizat de subprogram este 4. a) Scrie i defini ia complet a subprogramului cifra. (10p.)
3.
b) Scrie i un program C/C++ care cite te de la tastatur dou numere reale cu cel mult dou zecimale, numere reprezentnd mediile semestriale ob inute de un elev. Programul stabile te, folosind apeluri utile ale subprogramului cifra, dac cele dou medii citite se afl n aceea i categorie de medii sau nu. Preciz m c orice medie, n func ie de intervalul n care se ncadreaz , face parte din una dintre categoriile: [3,3.99], [4,4.99], [5,5.99], [6,6.99], [7,7.99], [8,8.99] sau [9,10]. n cazul n care ambele medii fac parte din aceea i categorie, programul va afi a mesajul Da, altfel va afi a mesajul Nu. (6p.) 4. Scrie i un program C/C++ care creeaz fi ierul text SIR.TXT i scrie n el, n ordine alfabetic , toate irurile formate din dou caractere distincte, litere mici ale alfabetului englez. Fiecare ir va fi scris pe cte o linie a fi ierului. (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 062 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Toate variabilele din secven a de instruc iuni if (a>b) { aux=a;a=b; b=aux;} C/C++ al turat sunt ntregi. Care dintre urm toarele afirma ii este adevarat ? (4p.) for(i=a;i<=b;i++) printf(%d,i); | cout<<i; b. Secven a con ine o instruc iune alternativ urmat de o instruc iune repetitiv . d. Secven a con ine o instruc iune alternativ inclus ntr-o instruc iune repetitiv .
Varianta 62 - informatica
a. Secven a con ine o instruc iune repetitiv inclus ntr-o instruc iune alternativ . c. Secven a con ine o instruc iune alternativ , urmat de o instruc iune repetitiv , urmat de o instruc iune de afi are.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te x (num r natural) aux x t 1 ct timp aux>9 execut aux aux/10 t t*10
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar cu [z] partea ntreag a num rului real z. a) Scrie i valorile care se afi eaz num rul x=1628. dac
se cite te (6p.) aux x repet b) Scrie i o valoare cu minimum 3 cifre ce poate fi citit c x%10 pentru x, astfel nct toate numerele afi ate s fie x [x/10] egale ntre ele. (4p.) x c*t+x scrie x c) Scrie i programul C/C++ corespunz tor algoritmului pn cnd x=aux dat. (10p.) Ministerul Educa iei, Cercet rii i Inov rii Centrul ional pentru i Evaluare nv mntul Preuniversitar Scrie i n Na pseudocod un Curriculum algoritm echivalent cun cel d) dat n care structura ct timp...execut s fie nlocuit cu o structur repetitiv cu test final. (6p.) Subiectul II (30 de puncte) - Varianta 062 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care dintre urm toarele afirma ii referitoare la graful neorientat G, reprezentat n figura al turat , este adev rat ? (4p.)
Subiectul I
a. c. 2.
Graful par ial al lui G ob inut prin b. eliminarea muchiei [5,2] este un arbore Cel mai lung lan , care con ine numai d. noduri distincte, are lungimea 2
Graful nu con ine cicluri Num rul nodurilor de grad par este egal cu num rul nodurilor de grad impar
Considernd declar rile al turate, care dintre struct cerc {float raza; urm toarele referiri este corect din punct de vedere int x,y;}; sintactic ? (4p.) cerc c; cerc.x b. c.x c. c.cerc.x d. raza.x
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider graful orientat G cu 6 vrfuri numerotate cu numerele de la 1 la 6, definit cu ajutorul listelor de adiacen al turate. Care este num rul de circuite distincte din graful G? Dou circuite sunt distincte dac difer prin cel pu in un arc. (6p.) 4. 1: 2: 3: 4: 5: 6: 2 6 3 3 4 6 3
Se consider o stiv S1, ini ial vid , n care s-au introdus n ordine valorile a,b,c,d i o alt stiv S2, ini ial vid , n care au fost introduse, n ordine, valorile e,f,g,h. Care va fi valoarea elementului din vrful stivei S1 i care va fi valoarea elementului din vrful stivei S2 dac se extrag jum tate dintre elementele din stiva S2 i se adaug , n ordinea extragerii, n stiva S1? (6p.) Scrie i un program C/C++ care cite te de la tastatur un text de cel mult 255 de caractere, dintre care cel pu in unul este o liter mic a alfabetului englez, i afi eaz pe ecran pe o singur linie, desp r ite prin cte un spa iu, toate literele mici ale alfabetului englez care apar n text. Fiecare liter va fi afi at o singur dat , n ordinea primei ei apari ii n text. (10p.) Exemplu: pentru textul: Pe ecran se va afi a: Calculati valoarea expresiei a l c u t i v o r e x p s
5.
Varianta 62 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 062 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Utiliznd metoda backtracking pentru afi area tuturor modalit ilor de descompunere a unui num r natural nenul ca o sum de numere naturale nenule, pentru n=3, se ob in n ordine solu iile: 1+1+1; 1+2; 3. Folosind aceea i metod pentru n=4, care este solu ia generat imediat dup 1+1+2? (4p.) b. 1+2+1 c. 1+1+1+1 d. 2+2 a. 1+3
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Consider m subprogramul f, definit al turat. void f(int n) Ce se afi eaz pe ecran la apelul {int c; if(n!=0) f(4962);? (6p.) {c=n%10; printf(%d,c);| cout<<c; f(n/10); printf(%d,c);| cout<<c; } } 3. Scrie i defini ia complet a unui subprogram fibo cu doi parametri, n i v, care prime te prin intermediul parametrului n un num r natural (1<n<30) i returneaz prin intermediul parametrului v un tablou unidimensional care con ine primii n termeni impari ai irului lui Fibonacci (amintim c irul lui Fibonacci este: 1,1,2,3,5,8,13,21,).. (10p.) a) Fi ierul date.in con ine un ir de cel mult 10000 numere naturale (printre care cel pu in un num r par i cel pu in un num r impar), cu cel mult dou cifre fiecare, separate prin cte un spa iu. Scrie i un program C/C++ care cite te numerele din fi ierul date.in i scrie n fi ierul text date.out valorile distincte citite, separate prin cte un spa iu, respectndu-se regula: pe prima linie vor fi scrise numerele impare n ordine cresc toare, iar pe linia a doua numerele pare, n ordine descresc toare. Alege i o metod eficient din punctul de vedere al timpului de executare. Exemplu: dac pe prima linie a fi ierului date.in se afl numerele: 75 12 3 3 18 75 1 3 atunci fi ierul date.out va con ine: 1 3 75 18 12 (6p.)
4.
b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 063 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Consider m variabilele ntregi i i j. Care dintre urm toarele secven e de instruc iuni C/C++ determin afi area pe ecran , n urma execut rii, a succesiunii de cifre 55? (4p.) b. i=5; j=6; a. i=5; j=6; while(j>4){ while(j>4) printf(%d,i); | cout<<i; printf(%d,j); | cout<<j; j--; j--; } c. j=5; d. j=5; for(i=5;i<=5;i++) for(i=1;i<2;i++) printf(%d,i); | cout<<i; printf(%d,j); | cout<<j; Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te n, d (numere naturale nenule) b 0 v 0 pentru i 1,n execut cite te x (num r natural nenul) a 0 aux x ct timp x % d = 0 execut a a+1 x [x/d] dac a>b atunci b a v aux
Varianta 63 - informatica
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) Scrie i ce se afi eaz dac n=3, d=2, iar valorile citite pentru x sunt, n ordine, 40, 19, 56. (6p.) Pentru n=3 i d=2, scrie i 3 valori distincte care pot fi citite n ordine pentru x, astfel nct valorile afi ate s fie 0 0. (4p.)
b)
Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Ministerul Educa iei, Cercet rii i Inov rii ,b scrie v, Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar Scrie i un algoritm pseudocod echivalent cu d) cel dat n care structura ct timp...execut fie nlocuit cu o Subiectul II (30 de puncte) -s Varianta 063 structur repetitiv cu test final. (6p.) Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
c)
Se consider un arbore G, cu r d cin , memorat cu ajutorul vectorului de ta i urm tor: T=(2,0,4,2,4,7,2). Care dintre urm toarele afirma ii este adev rat ? (4p.) Nodurile 1,4 i 6 sunt fra i. b. G este conex i prin eliminarea unei muchii oarecare din G, grafulSubiectul ob inut I nu este conex. Arborele G are 5 frunze.
c. 2.
Se consider un tablou bidimensional a, format din numere x=a[n][1]; naturale, cu n linii i n coloane, numerotate de la 1 la n. Ce for(i=n;i>=1;i--) if (x<a[i][n-i+1]) reprezinta valoarea variabilei x, dup executarea secven ei x=a[i][n-i+1]; de program al turate? (4p.) cel mai mare num r de pe diagonalele b. tabloului a cel mai mare num r de pe diagonala d. principal a tabloului a cel mai mare num r de pe diagonala secundar a tabloului a cel mai mare num r din tabloul a
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Care dintre vrfurile grafului orientat din figura al turat , au gradul interior un num r par? (6p.)
4.
Se consider variabilele s1 i s2 care memoreaz fiecare cte un ir de maximum 50 de caractere. Scrie i secven a de instruc iuni care, n urma execut rii, afi eaz cele dou iruri de caractere n ordinea cresc toare a lungimilor lor. (6p.) Scrie i un program n limbajul C/C++ care cite te de la tastatur dou valori naturale n i m(1n24, 1m24) i construie te n memorie un tablou bidimensional cu n linii i m coloane format din toate numerele naturale de la 1 la n*m, ca n exemplu. Programul va afi a pe ecran, pe n linii, tabloul ob inut, elementele fiec rei linii fiind separate prin cte un spa iu. Exemplu: pentru n=5 i m=4 se va afi a:
1 6 2 7 3 8 4 9 5 10 11 12 13 14 15 16 17 18 19 20
5.
(10p.)
Varianta 63 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 063 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz , prin metoda backtracking, toate parti iile mul imii A={1,2} ob inndu-se urm toarele solu ii: {1}{2};{1,2}. Se observ c dintre acestea, prima solu ie e alc tuit din exact dou submul imi. Dac se folose te aceea i metod pentru a genera parti iile mul imii {1,2,3} stabili i cte dintre solu iile generate vor fi alc tuite din exact dou submul imi. (4p.) b. 1 c. 3 d. 4 a. 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int f(int i) Se consider subprogramul f, definit al turat. 2. Ce valoare are f(2)? Dar f(10)? (6p.) { if(i>=1) return f(i-1)+i; else return 0; } 3. Subprogramul verif prime te prin singurul s u parametru, x, un num r natural nenul cu cel mult 9 cifre i returneaz valoarea 1 dac num rul con ine cel pu in o secven de 3 cifre impare al turate i 0 n caz contrar. Exemplu: dac x=7325972 se va returna valoarea 1. a) Scrie i defini ia complet a subprogramului verif. (6p.)
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n cu exact 6 cifre i, folosind apeluri utile ale subprogramului verif, verific dac n are primele trei cifre impare. Programul afi eaz pe ecran mesajul Da n caz afirmativ i mesajul Nu n caz contrar. Exemple: dac se cite te n=132567 se va afi a mesajul Nu, iar dac n=979243, se va afi a mesajul Da. (4p.) 4. Pentru un ir de numere naturale, numim nod al irului un termen din ir care are doi vecini, termenul precedent i termenul urm tor din ir, i valoarea termenului respectiv este strict mai mic dect suma valorilor celor doi vecini ai s i. Fi ierul text date.in con ine un ir de cel pu in dou i cel mult 1000 de numere naturale avnd maximum 6 cifre fiecare, numere separate prin cte un spa iu. Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz num rul de noduri ale irului citit. Exemplu: dac fi ierul date.in are urm torul con inut: 51 20 100 43 43 618 5000 31 2020 114 116 4 atunci pe ecran se afi eaz 6 (cele ase numere subliniate reprezint noduri ale irului). (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 064 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag a memoreaz un num r natural format din exact trei cifre, toate cifrele fiind nenule i distincte. Care dintre urm toarele instruc iuni C/C++ atribuie variabilei e suma cifrelor lui a? (4p.) a. c. e=a%10/10+a/100%10+a%10; e=a*10/1000+a/10%10+a%10; b. d. e=a/10+a/100+a/1000; e=a*10/1000+a%100%10+a%10;
Varianta 64 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n 2. Se consider algoritmul al turat, descris n (num r natural nenul) pseudocod. k 0 pentru i 1,n execut a) Scrie i ce se afi eaz pentru n=4. (6p.) pentru j 1,i execut scrie i+j b) Scrie i o valoare care poate fi citit pentru k k+1 variabila n astfel nct, n urma execut rii algoritmului, valoarea 20 s fie afi at de exact 6 ori. (4p.) scrie k c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) d) Scrie i un algoritm pseudocod echivalent cu cel dat n care fiecare structur de tip pentru...execut s fie nlocuit cu cte o structur repetitiv de tip ct timp...execut . (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 064 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Considernd declar rile al turate, care dintre struct punct{float x,y;}; urm toarele referiri este corect din punct de vedere struct fig sintactic ? (4p.) { char tip; punct a,b,c;} fig e; BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I
Specializarea Matematic -informatic
a. 2.
e.fig.tip
b.
a.e
c.
e.punct.x
d.
e.a.x
Se consider un tablou bidimensional a cu n linii i n x=0; coloane, numerotate de la 1 la n, cu elemente for(i=1;i<=n;i++) x=x+a[i][i]; numere ntregi. Ce reprezinta valoarea variabilei ntregi x, dup executarea secven ei de program al turate? (4p.) Suma elementelor de principal a tabloului a pe diagonala b. d. Suma elementelor de secundar a tabloului a pe diagonala
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider un graf neorientat reprezentat prin listele de adiacen al turate. Construi i matricea de adiacen corespunz toare grafului dat. (6p.) 1: 2: 3: 4: 5: 2 1 1 2 3 3 3 4 2 4 5 3 5 4
4.
ntr-un graf orientat G cu 6 vrfuri numerotate cu numere distincte de la 1 la 6, exist arc de la vrful i la vrful j dac i numai dac i<j i j-i>1. Care sunt vrfurile din graf ce au gradul interior mai mare dect gradul exterior? (6p.)
5.
Scrie i un program C/C++ care cite te de la tastatur un text format din cel mult 200 de litere ale alfabetului englez, n care cuvintele sunt separate printr-un singur spa iu i afi eaz pe ecran num rul de cuvinte din textul citit, care au prima, respectiv ultima liter , vocal . n cazul n care n text nu exist un astfel de cuvnt, se va afi a pe ecran mesajul NU EXISTA. Se consider vocal orice liter din mul imea {a,A,e,E,i,I,o,O,u,U}. Exemplu: dac textul introdus este: Eratostene a sugerat ca anii bisecti se repeta la fiecare patru ani pe ecran se va afi a : 4 (10p.)
Varianta 64 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 064 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz , utiliznd metoda backtracking, toate modalit ile de a ezare a n ture pe o tabl de ah cu n linii i n coloane, astfel nct s nu existe pe tabl ture care se atac ntre ele (dou ture se atac reciproc dac se afl pe aceea i linie sau pe aceea i coloan ). O solu ie generat are forma (c1,c2,,cn), unde ci reprezint coloana pe care se afl tura de pe linia i. Dac primele 2 solu ii generate pentru n=5 sunt (1,2,3,4,5) i (1,2,3,5,4), care este prima solu ie generat n care primul num r este 4? (4p.) b. (4, 2, 5, 1, 3) c. (4, 3, 5, 3, 1) d. (4, 1, 2, 3, 5) a. (4, 1, 3, 2, 5)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit void f(int i,int j) al turat. Ce se afi eaz pe ecran la { if(j>0) f(i,j-1); apelul f(9,9);? printf(%d*%d=%d\n,i,j,i*j); (6p.) 3. | cout<<i<<*<<j<<=<<i*j<<endl; }
Subprogramul diviz, cu doi parametri, prime te prin intermediul parametrului n un num r natural nenul (2 n 200), iar prin intermediul parametrului a, un tablou unidimensional care con ine n valori naturale nenule, fiecare dintre acestea avnd cel mult patru cifre. Elementele tabloului sunt numerotate de la 1 la n. Subprogramul returneaz o valoare egal cu num rul de perechi (ai,aj), 1 i<j n, n care ai este divizor al lui aj , sau aj este divizor al lui ai. Scrie i defini ia complet a subprogramului diviz, n limbajul C/C++. Exemplu: pentru n=5 i a=(4,8,3,9,4) subprogramul returneaz valoarea 4. (10p.) Fi ierul text date.in con ine pe prima linie, separate prin cte un spa iu, cel mult 1000 de numere naturale, fiecare dintre ele avnd maximum 9 cifre. a) Scrie i un program C/C++ care cite te numerele din fi ierul date.txt, determin i afi eaz pe ecran num rul de elemente ale celei mai lungi secven e ordonate strict descresc tor, formate din valori citite consecutiv din fi ier. Alege i o metod de rezolvare eficient din punctul de vedere al timpului de executare. Exemplu: dac fi ierul date.in con ine pe ecran se afi eaz : 5 2 19 4 3 6 3 2 1 0 8 5 (6p.) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). ( 4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 065 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele a,b i z sunt reale, iar a b. Care dintre expresiile C/C++ urm toare are valoarea 1 dac i numai dac valoarea variabilei z nu apar ine intervalului nchis determinat de valorile variabilelor a i b ? (4p.) b. (z<a)||(z>b) c. z<a && z>b d. z>=a && z<=b a. (z>a||(z>b)
Varianta 65 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la (num r natural nenul, n 10000) m 0 num rul natural nenul y i cu [z] partea ntreag a v n num rului real z. u n%10 repet a) Scrie i valorile care se vor afi a dac se cite te c n%10 num rul n=1327. (6p.) v v*10+c b) Scrie i dou valori diferite, cu exact 4 cifre fiecare, ce dac c=u atunci pot fi citite pentru variabila n astfel nct, n urma m m+1 execut rii algoritmului, valoarea afi at pentru m s n [n/10] fie 3. (4p.) pn cnd n=0 c) Scrie i programul C/C++ corespunz tor algoritmului scrie v, m dat. (10p.) d) Scrie i n pseudocod un algoritm echivalent cu cel dat n care structura repet ... pn cnd s fie nlocuit cu o structur repetitiv cu test ini ial. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 065 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Se consider un graf G neorientat, conex, cu 54 de noduri i 53 de muchii. Care dintre urm toarele afirma ii este adev rat ? G nu este arbore b.
(4p.)
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Specializarea Matematic c. d. G nu are cicluri -informatic
Prin eliminarea unei muchii din G se men ine proprietatea de conexitate Subiectul I Gradul maxim al unui nod din G poate fi 52
2.
Dac variabila s a fost declarat astfel: char s[15] = "INFORMATICA"; atunci strlen(s) are valoarea 10 b. 12 c. 15 d. 11
(4p.)
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Un arbore cu r d cin , cu 8 noduri, numerotate de la 1 la 8, este memorat cu ajutorul vectorului de ta i T=(0,1,1,1,3,5,3,3). Care sunt fra ii nodului 7? (6p.) Se consider o stiv S1, ini ial vid , n care s-au introdus n ordine valorile a,b,c,d,e,f i o alt stiv S2, ini ial vid , n care au fost introduse, n ordine, valorile g,h. Care va fi elementul din vrful stivei S1 i care va fi elementul din vrful stivei S2 dac se extrag jum tate din elementele din stiva S1 i se adaug n ordinea extragerii n stiva S2? (6p.) Scrie i un program n limbajul C/C++ care cite te de la tastatur dou valori naturale n i m (1n24, 1m24) i construie te n memorie un tablou bidimensional cu n linii i m coloane format din toate numerele naturale de la 1 la n*m, ca n exemplu. Programul va afi a pe ecran, pe n linii, tabloul ob inut, elementele fiec rei linii fiind separate prin cte un spa iu.
1 2 3 4 5 10 9 8 7 6 11 12 13 14 15 20 19 18 17 16
4.
5.
(10p.)
Varianta 65 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 065 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz , utiliznd metoda backtracking, toate modalit ile de a ezare a numerelor naturale de la 1 la 5, astfel nct oricare dou numere de aceea i paritate s nu se afle pe pozi ii al turate. Dac primele 3 solu ii generate sunt, n ordine: (1,2,3,4,5), (1,2,5,4,3) i (1,4,3,5,2) care este prima solu ie generat ce ncepe cu 3? (4p.) b. (3, 2, 5, 4, 1) c. (3, 4, 1, 2, 5) d. (3, 4, 5, 2, 1) a. (3, 2, 1, 4, 5)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Subprogramul recursiv al turat este definit incomplet. Care este expresia cu care se pot nlocui punctele de suspensie astfel nct subprogramul s returneze cel mai mare divizor comun al numerelor primite prin intermediul parametrilor a i b. (6p.) int f(int a,int b) { if (...) return a; else if (a>b) return f(a-b,b); else return f(a,b-a); }
3.
Subprogramul sfx prime te prin singurul s u parametru, x, un num r natural din intervalul [100,2000000000] i returneaz valoarea 1 dac ultimele trei cifre ale num rului sunt n ordine strict descresc toare sau valoarea 0 n caz contrar. Exemplu: dac x=24973 se va returna valoarea 1. a) Scrie i defini ia complet a subprogramului sfx. (5p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n format din exact 6 cifre i verific , utiliznd apeluri ale subprogramului sfx, dac acest num r are toate cifrele n ordine strict descresc toare. Programul va afi a mesajul Da n caz afirmativ i mesajul Nu n caz contrar. Exemplu: dac n=756543 se va afi a Nu, iar dac n=976532 se va afi a Da. (5p.)
4.
Pentru un ir de numere naturale, numim pol al irului un termen din ir care are doi vecini, termenul precedent i termenul urm tor din ir, i valoarea termenului respectiv este strict mai mare dect valoarea fiec ruia dintre cei doi vecini ai s i. a) Fi ierul text date.in con ine un ir de cel pu in dou i mult 10000 de numere naturale avnd maximum 6 cifre fiecare, numere separate prin cte un spa iu. Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz num rul de poli ai irului citit, folosind un algoritm eficient din punctul de vedere al memoriei utilizate. (6p.) Exemplu: dac fi ierul date.in are urm torul con inut: 51 20 100 43 43 618 5000 31 2020 114 116 4 atunci pe ecran se afi eaz 4 (cele patru numere subliniate reprezint poli ai irului) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 066 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele x, y i z sunt ntregi, x memoreaz valoarea 7, y memoreaz valoarea 20, iar z memoreaz valoarea 5. Care este rezultatul evalu rii x+y+x*z/y expresiei aritmetice C/C++ al turate? (4p.) b. 28 c. 29 d. 27 a. 28.75
Varianta 66 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n n 0 repet pseudocod. cite te x (num r natural) S-a notat cu a%b restul mp r irii num rului ntreg a la dac x 0 atunci num rul ntreg nenul b. dac x%5=0 atunci a) Scrie i ce se afi eaz n urma execut rii n n+1 algoritmului dac se citesc, n aceast ordine, altfel valorile 10, 13, 46, 70, 35, 0. (6p.) n n-1 b) Scrie i un ir de valori care pot fi citite pentru variabila x astfel nct programul s afi eze, n pn cnd x=0 urma execut rii, mesajul DA. (4p.) dac n=0 atunci c) Scrie i programul C/C++ corespunz tor algoritmului scrie DA dat. (10p.) altfel d) Scrie i n pseudocod un algoritm echivalent cu cel scrie NU dat n care s se nlocuiasc structura repet ...pn cnd cu o structur repetitiv cu test ini ial. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 066 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Cum se poate accesa prima liter a denumirii unui struct produs{ char denumire[15]; produs ale c rui caracteristici sunt memorate n int pret;}p; variabila p, declarat al turat? (4p.) produs.denumire[0] b. denumire.p[0] P->denumire[0]
Subiectul I
a. 2.
Se consider un graf neorientat complet cu trei noduri. Care este num rul minim de muchii care trebuie eliminate din acest graf astfel nct graful par ial rezultat s aib dou componente conexe? (4p.) 1 b. 2 c. 0 d. 3
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Un arbore cu r d cin avnd 9 noduri, numerotate de la 1 la 9, este memorat cu ajutorul vectorului de ta i t=(2,5,5,3,0,2,4,1,1). Scrie i to i ascenden ii nodului 4. (6p.) Se consider secven a al turat n care mat este un for(j=1;j<=5;j++) tablou bidimensional cu 5 linii i 5 coloane, numerotate {aux=mat[x][j]; de la 1 la 5, iar aux, j, x, y sunt variabile de tip ntreg. mat[x][j]=mat[y][j]; tiind c orice element al tabloului este ini ial egal cu mat[y][j]=aux;} num rul de ordine al liniei pe care se afl , preciza i care sunt elementele tabloului mat dup executarea secven ei al turate dac x memoreaz valoarea 2 i y memoreaz valoarea 4? (6p.) Scrie i programul C/C++ care cite te de la tastatur un cuvnt format din cel mult 50 de caractere, litere mari ale alfabetului englez, i afi eaz pe ecran, fiecare pe cte o linie, toate prefixele acestuia, n ordine cresc toare a lungimilor. Un prefix de lungime k al unui cuvnt este un sub ir format din primele k caractere ale acestuia. (10p.) Exemplu: dac se cite te cuvntul BACALAUREAT se vor afi a prefixele: B BA BAC BACA BACAL BACALA BACALAU BACALAUR BACALAURE BACALAUREA BACALAUREAT
5.
Varianta 66 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 066 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv void bac(int x) definit al turat. Ce se va afi a n urma { if (x!=0) { bac(x-1); apelului bac(5);? (4p.) cout<<x; | printf(%d,x); } } b. 54321 c. 12345 d. 11111 a. 55555
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se genereaz n ordine cresc toare, toate numerele naturale de 5 cifre distincte, care se pot forma cu cifrele 2,3,4,5 i 6. S se precizeze num rul generat imediat naintea i num rul generat imediat dup secven a urm toare : 34256, 34265, 34526. (6p.) S se scrie n limbajul C/C++ defini ia complet a subprogramului calcul, care prime te prin intermediul parametrului n un num r natural nenul (1 n 10000), iar prin intermediul parametrului a, un tablou unidimensional care con ine n valori naturle, fiecare dintre aceste valori avnd cel mult 9 cifre. Subprogramul returneaz cel mai mare divizor comun al elementelor tabloului a. (10p.) Exemplu: n urma apelului, pentru n=5 i tabloul unidimensional (12,36,48,6,60), se va returna 6. Fi ierele text A.TXT i B.TXT con in cel mult 10000 de numere naturale cu cel mult 9 cifre fiecare, scrise fiecare pe cte o linie. a) Scrie i un program C/C++ care cite te numerele din cele dou fi iere i, printr-o metod eficient din punct de vedere al timpului de executare i al spa iului de memorie utilizat, afi eaz pe ecran cte dintre numerele din fi ierul A.TXT sunt strict mai mici dect toate numerele memorate n fi ierul B.TXT. (6p.) 41111 Exemplu: dac fi ierul A.TXT iar fi ierul B.TXT are con inutul 91111 are con inutul al turat, al turat: 81111 91111 11111 61111 91111 91111 51111 91111 111111 81111 31111 61111 431111 91111 61111 201111 atunci programul va afi a valoarea 4, deoarece 41111, 11111, 51111, 31111 sunt mai mici dect toate elementele din fi ierul B.TXT. b) Descrie i succint, n limbaj natural, metoda utilizat acesteia. la punctul a, justificnd eficien a (4p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 067 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele x, y, z i w sunt ntregi, x memoreaz valoarea 2, y memoreaz valoarea 3, z memoreaz valoarea 5, iar w memoreaz valoarea 7. Care dintre urm toarele expresii, scrise n limbajul C/C++, are valoarea 1? (4p.) b. (x==z) && ((y==3)||(w==7)) a. (y>z) || (x>3) c. (z<=w) && (x>0) || (y>=x) d. (y>=3) && (w<7)
Varianta 67 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. cite te n (num r natural) S-a notat cu x%y restul mp r irii num rului natural x la z 0 ct timp n>0 execut num rul natural nenul y i cu [z] partea ntreag a num rului c n%10 real z. n [n/10] a) Scrie i valoarea afi at dac pentru n se cite te dac c<5 atunci valoarea 52381. (6p.) z z*10+2*c b) Scrie i o valoare de 3 cifre care poate fi citit pentru variabila n astfel nct s se afi eze num rul 0. (4p.) scrie z c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) d) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 067 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Cum se poate accesa prima liter a numelui unei struct persoana{ persoane ale c rei date de identificare sunt char nume[20],prenume[20]; memorate n variabila p, declarat al turat? (4p.) int varsta;} p; p.nume[0] b. persoana.nume[0] nume.p[0]
Subiectul I
a.
2.
Se consider un graf neorientat cu patru noduri n care fiecare nod are gradul 2. Care este num rul minim de muchii care trebuie eliminate astfel nct graful s aib dou componente conexe? (4p.) 1 b. 0 c. 2 d. 3
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Un arbore cu r d cin avnd 8 noduri, numerotate de la 1 la 8, este memorat cu ajutorul vectorului de ta i t=(8,8,0,3,4,3,4,6). Scrie i care sunt descenden ii nodului 4? (6p.) Se consider secven a al turat n care a este o matrice for(i=1;i<=4;i++) p tratic cu 4 linii i 4 coloane, numerotate de la 1 la 4, iar for(j=1;j<=4;j++) i i j sunt variabile de tip ntreg. Care este matricea a if (i<=j) a[i][j]=i; else a[i][j]=j; ob inut dup executarea secven ei? (6p.) Scrie i programul C/C++ care cite te de la tastatur un cuvnt format din cel mult 50 caractere, litere mari ale alfabetului englez, i afi eaz pe ecran, fiecare pe cte o linie, toate sufixele acestuia, n ordine cresc toare a lungimilor. Un sufix de lungime k al unui cuvnt este un sub ir format din ultimele k caractere ale acestuia. (10p.) Exemplu: dac se cite te cuvntul EXAMEN se vor afi a sufixele : N EN MEN AMEN XAMEN EXAMEN
5.
Varianta 67 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 067 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv void bac(int x) definit al turat. Ce se va afi a n urma { if (x) { cout<<x; | printf(%d,x); apelului bac(5);? (4p.) bac(x-1); } } b. 12345 c. 11111 d. 55555 a. 54321
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se genereaz n ordine cresc toare, toate numerele naturale de 5 cifre distincte, care se pot forma cu cifrele 5,6,7,8 i 9. S se precizeze num rul generat imediat naintea i num rul generat imediat dup secven a urm toare : 67589,67598,67859. (6p.) S se scrie n limbajul C/C++ defini ia complet a subprogramului calcul, care prime te prin intermediul parametrului n un num r natural nenul (1 n 10000), iar prin intermediul parametrului a un tablou unidimensional care con ine n valori naturale, fiecare dintre aceste valori avnd cel mult 9 cifre. Subprogramul returneaz num rul de numere prime din tablou. (10p.) Exemplu: pentru n=5 i tabloul unidimensional (12,37,43,6,71) n urma apelului se va returna 3. Fi ierul text NUMERE.TXT con ine pe prima linie un num r natural n (1 n 10000) i pe a doua linie un ir cresc tor de n numere naturale, fiecare avnd cel mult 9 cifre. Numerele de pe a doua linie sunt separate prin cte un spa iu. a) Scrie i un program C/C++ care, utiliznd o metod eficient din punct de vedere al timpului de executare i al spa iului de memorie, afi eaz pe ecran elementele distincte ale irului aflat pe a doua linie a fi ierului. (6p.) Exemplu: dac fi ierul NUMERE.TXT are 7 con inutul al turat 111 111 111 2111 4111 71111 71111 atunci programul va afi a pe ecran 111 2111 4111 71111. b) Descrie i succint, n limbaj natural, metoda utilizat acesteia. la punctul a), justificnd eficien a (4p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 068 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele x, y i z memoreaz valori reale, iar x<y. Care dintre expresiile de mai jos, scrise n limbajul C/C++, are valoarea 1 dac valoarea variabilei z este situat n intervalul nchis determinat de valorile memorate n variabilele x i y? (4p.) b. (z<=x) && (z<=y) a. (z>=x) && (z<=y) c. (y<x) || (z<=x) d. (z<x) || (z>y)
Varianta 68 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y. a) Scrie i valoarea afi at n urma execut rii algoritmului dac se citesc, n ordine, valorile: 5, 14, 6, 15, 16, 90. (6p.) b) tiind c valoarea citit pentru x este 7, scrie i un ir de numere distincte care pot fi citite n continuare astfel nct valoarea afi at s fie 0. (4p.) c) d) cite te x (num r natural nenul) nr 0 pentru i 1,x execut cite te n (num r ntreg) dac n%x=0 atunci nr nr+1
scrie nr Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura pentru...execut cu o structur repetitiv ct timp...execut . (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 068 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Cum se poate accesa prima liter a denumirii unui material ale struct material{ char denumire[20]; c rui caracteristici sunt memorate n variabila m, declarat al turat? (4p.) int pret;} m; denumire.m[0] b. m->denumire[0] m.denumire[0] 0 1 1 0 1 0 1 1 1 1 0
Subiectul I
a.
2.
Se consider graful neorientat cu matricea de adiacent al turat . 0 1 1 Care este num rul minim de muchii care trebuie eliminate astfel 1 0 0 nct graful s aib dou componente conexe? (4p.) 1 0 0 0 1 1 1 1 1 3 b. 1 c. 2 d.
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care este vectorul de ta i asociat arborelui cu r d cin din figura al turat n care nodul 5 este nodul r d cin ? (6p.)
4. 5.
Care este func ia predefinit , n limbajul C/C++, care returneaz lungimea efectiv a unui ir de caractere transmis ca parametru? (6p.) Scrie i programul C/C++ care cite te de la tastatur dou numere naturale m i n (1 m 50, 1 n 50) i m* n numere naturale de cel mult 5 cifre ce reprezint elementele unui tablou bidimensional, i afi eaz pe ecran ultima cifr a produsului elementelor pozitive aflate pe linii cu numere de ordine pare i coloane cu numere de ordine impare. Numerotarea liniilor, respectiv a coloanelor se va face ncepnd cu valoarea 1. Dac nu exist elemente pozitive aflate pe linii cu numere de ordine pare i coloane cu numere de ordine impare, se va afi a mesajul NU EXISTA. (10p.) Exemplu: pentru m=4, n=4 i matricea al turat se va afi a 5 11 -21 31 41 5 -61 71 -81 (care reprezint ultima cifr a valorii 355=5*71). 91 11 21 31 -11 31 -41 0
Varianta 68 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 068 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv definit void bac(int x) al turat. Cte apeluri ale func iei bac au loc { if (x) { bac(x-1); pentru x=5? Se va num ra inclusiv apelul din cout<<x;| printf(%d,x); func ia principal . (4p.) } } b. 6 c. 4 d. 3 a. 5
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se utilizeaz metoda backtracking pentru a genera toate submul imile cu p elemente ale unei mul imi cu m elemente. Dac m=7 i p=1,scrie i care este num rul de submul imi generate. (6p.)
S se scrie defini ia complet a subprogramului calcul, care prime te prin intermediul celor doi parametri ai s i dou numere ntregi, n i k (1 n 100000000 i 1 k 9), i returneaz cifra de rang k a num rului n. Rangul unei cifre este num rul s u de ordine, numerotnd cifrele de la dreapta la stnga; cifra unit ilor avnd rangul 1. Dac num rul k este mai mare dect num rul de cifre ale lui n, atunci func ia returneaz valoarea -1. Exemplu: dac n=9243 i k=3, n urma apelului se va returna 2. (10p.) Fi ierul text SIR.TXT con ine pe prima linie un num r natural n (1 n 10000) i pe a doua linie, separate prin spa ii, un ir cresc tor de n numere naturale cu cel mult 9 cifre fiecare. Numim platou ntr-un ir de valori o secven de elemente identice situate pe pozi ii al turate. Lungimea unui platou este egal cu num rul de elemente care l formeaz . a) Scrie i un program C/C++ care cite te valorile din fi ier i, printr-o metod eficient din punct de vedere al timpului de executare i al spa iului de memorie utilizat, afi eaz pe ecran, separate printr-un spa iu, lungimea maxim a unui platou, precum i valoarea care formeaz platoul. n cazul n care sunt mai multe platouri de aceea i lungime se va afi a valoarea cea mai mare care formeaz unul dintre aceste platouri. (6p.) Exemplu: dac fi ierul SIR.TXT 10 are con inutul al turat, 11 211 211 211 328 400 400 1201 1201 1201 atunci programul va afi a pe ecran 3 1201. b) Descrie i succint, n limbaj natural, metoda utilizat acesteia. la punctul a), justificnd eficien a (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 069 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. x=20; y=5; 1. n secven a de instruc iuni C/C++ al turat , variabilele x i y x=x+y; sunt ntregi. Ce valoare va re ine variabila x dup executarea y=x-2*y; acesteia? (4p.) x=y+x; -10 25 15 b. c. d. 40 a. Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) Scrie i valoarea afi at dac pentru x se cite te valoarea 4589 i pentru y se cite te valoarea 723. (6p.) Scrie i toate perechile de valori care pot fi citite pentru x i y astfel nct valoarea afi at s fie 200. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura repet ...pn cnd cu o structur repetitiv cu test ini ial. (6p.) cite te x,y (numere naturale nenule) t 0 u 1 repet dac x%10 > y%10 atunci z x%10 altfel z y%10 t t+z*u u u*10 x [x/10] y [y/10] pn cnd x=0 scrie t
Varianta 69 - informatica
b)
c) d)
i y=0
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 069 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Cum se poate accesa prima liter a numelui unui struct elev{ elev ale c rui date de identificare sunt memorate char nume[20],prenume[20]; int varsta;}e; n variabila e, declarat al turat? (4p.) e->nume[0] b. e.nume[0] nume.e[0]
Subiectul I
a.
2.
Se consider un graf neorientat conex cu ase noduri n care fiecare nod are gradul 2. Care este num rul minim de muchii care trebuie eliminate din acest graf astfel nct graful par ial rezultat s aib dou componente conexe? (4p.) 0 b. 3 c. 2 d. 1
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care este vectorul de ta i asociat arborelui cu r d cin din figura al turat n care nodul 1 este nodul r d cin ? (6p.)
4. 5.
Fie s i t dou variabile de tipul ir de caractere. Scrie i o instruc iune C/C++ prin care variabilei t i se atribuie irul format din primele n caractere ale lui s. (6p.) Scrie i programul C/C++ care cite te de la tastatur un num r natural n (1 n 50) i n* n numere naturale de cel mult 5 cifre ce reprezint elementele unui tablou bidimensional a, cu n linii i n coloane, i verific dac matricea este triunghiular superior. Programul va afi a pe ecran mesajul corespunz tor: Este triunghiular superior respectiv Nu este triunghiular superior. O matrice se nume te triunghiular superior dac toate elementele aflate sub diagonala principal a ei sunt nule. (10p.) 1 2 3 Exemplu: pentru n=3 i matricea al turat se va afi a mesajul: 0 5 6 Este triunghiular superior 0 0 9
Varianta 69 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 069 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv void bac(int x) definit al turat. Cte apeluri ale func iei { if (x>0) { bac(x-2); bac au loc pentru x=5? Se va num ra cout<<x; | printf(%d,x); inclusiv apelul din func ia principal . } (4p.) } b. 3 c. 6 d. 5 a. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele de cte trei litere distincte din mul imea {v,a,l,s}. Care este primul cuvnt generat? Dar cel deal treilea ? (6p.) S se scrie n limbajul C/C++ defini ia complet a subprogramului calcul, care prime te prin intermediul parametrului ntreg n, un num r natural de cel mult 9 cifre i returneaz valoarea absolut a diferen ei dintre num rul de cifre pare i num rul de cifre impare con inute de n. (10p.) Exemplu: dac n=92465, n urma apelului se va returna valoarea 1. Fi ierul text NUMERE.TXT con ine pe prima linie un num r natural n (1 n 10000) i pe a doua linie n numere naturale cu cel mult 9 cifre fiecare. Aceste numere sunt dispuse n ordine cresc toare i separate ntre ele prin cte un spa iu. a) Scrie i un program C/C++ care cite te valorile din fi ier i, printr-o metod eficient din punct de vedere al timpului de executare, afi eaz pe ecran, separate prin cte un spa iu, n ordine cresc toare, numerele pare de pe a doua linie a fi ierului, urmate de cele impare n ordine descresc toare. (6p.) Exemplu: dac fi ierul NUMERE.TXT are 6 con inutul al turat, 212 412 5111 71113 81112 101112 atunci programul va afi a pe ecran 212 412 81112 101112 71113 5111 b) Descrie i succint, n limbaj natural, metoda utilizat acesteia. la punctul a, justificnd eficien a (4p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 070 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre expresiile C/C++ de mai jos, are valoarea 1 dac valoarea variabilei ntregi x este un num r ntreg par i strict pozitiv ? (4p.) b. (x%2!=0)||(x<0) a. !((x%2!=0)||(x<=0)) d. ((x+1)%2==0)&&(x>=2) c. !((x%2==0)||(x>0))
Varianta 70 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te x,y (numere naturale nenule) pseudocod. dac x<y atunci S-a notat cu ab opera ia de interschimbare a valorilor xy variabilelor a i b. a) Scrie i ce valori se vor afi a dac pentru x se n 0 ct timp x>=y execut cite te valoarea 19, iar pentru y se cite te x x-y valoarea 4. (6p.) n n+1 Scrie i toate perechile de valori, fiecare valoare fiind un num r de o cifr , care pot fi citite pentru variabilele x i respectiv y, astfel nct valorile scrie n, x afi ate n urma execut rii algoritmului s fie 2 1, n aceast ordine. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv cu test final. (6p.)
b)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 070 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
tiind c fiecare dintre variabilele var1, var2 memoreaz numele struct elev i nota unui elev n forma dat de declararea al turat , indica i { char nume[30]; float nota; care dintre urm toarele expresii atribuie variabilei reale m media aritmetic a notelor celor doi elevi. (4p.) }var1,var2; m=var1.nota+var2.nota/2; m=nota(var1+var2)/2; 1: 2: 3: 4: 5: 2,4,5 1,3 2,5,4 1,3 3,1 d. 2
Subiectul I
c. 2.
m=(var1+var2).nota/2;
d.
Se consider graful neorientat reprezentat prin listele de adiacen al turate. Care este num rul minim de muchii care trebuie eliminate astfel nct graful s aib dou componente conexe? (4p.) 0 b. 1 c. 3
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Care este vectorul de ta i asociat arborelui cu r d cin din figura al turat n care nodul 5 este nodul r d cin ? (6p.)
4.
Consider m s o variabil de tip ir de caractere declarat astfel: char s[100]; tiind c aceast variabil memoreaz un cuvnt oarecare, scrie i o instruc iune n limbajul C/C++, care permite afi area pe ecran a ultimului caracter din cuvntul memorat n s. (6p.) Scrie i programul C/C++ care cite te de la tastatur dou numere naturale m i n (1 m 24, 1 n 24), un num r natural x (1 x m) i apoi m*n numere naturale de cel mult 5 cifre ce reprezint elementele unui tablou bidimensional a, cu m linii, numerotate de la 1 la m, i n coloane, numerotate de la 1 la n. Programul va determina eliminarea liniei cu num rul de ordine x din matrice, modificarea corespunz toare a num rului de linii din matrice i afi area matricei ob inute n urm torul format: cte o linie a matricei pe cte o linie a ecranului, elementele fiec rei linii fiind separate prin cte un spa iu. (10p.) 11 21 31 41 Exemplu: pentru m=3, n=4, 11 21 31 41 se va afi a matricea 91 11 21 31 51 61 71 81 x=2 i matricea al turat 91 11 21 31
5.
Varianta 70 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 070 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv definit void bac(int x) al turat. Cte apeluri ale func iei bac au loc { if (x>0) { cout<<x; | pentru x=4? Se va num ra inclusiv apelul din bac(x-2); func ia principal . } } b. 4 c. 5 a. 6
printf(%d,x);
d. 3
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele de cte trei litere distincte din mul imea {d,a,n,s}. Care este primul cuvnt generat? Dar cel deal treilea ? (6p.) S se scrie n limbajul C/C++ defini ia complet a subprogramului calcul, care prime te prin parametrul n un num r natural nenul de cel mult 9 cifre i furnizeaz prin parametrul x num rul ob inut prin al turarea cifrelor pare ale lui n considerate de la dreapta c tre stnga. Dac n nu con ine nicio cifr par , x prime te valoarea 0. (10p.) Exemplu: n urma apelului calcul(9278,x), x prime te valoarea 82. 4. Fi ierul text NUMERE.TXT con ine pe prima linie un num r natural n (1 n 10000) i pe a doua linie, n numere naturale cu cel mult 9 cifre fiecare, numere nu neap rat distincte. Aceste numere sunt dispuse n ordine cresc toare i separate ntre ele prin cte un spa iu. a) Scrie i un program C/C++ care cite te valorile din fi ier i, printr-o metod eficient din punct de vedere al timpului de executare i al spa iului de memorie utilizat, afi eaz pe ecran, cu un spa iu ntre ele, valoarea care apare de cele mai multe ori n fi ier i de cte ori apare ea. Dac exist mai multe valori care apar de un num r maxim de ori, se va afi a cea mai mic dintre ele. (6p.) Exemplu: dac fi ierul 8 NUMERE.TXT are con inutul 711 711 711 11111 11111 11111 191111 231111 al turat, atunci programul va afi a pe ecran 711 3. b) Descrie i succint, n limbaj natural, metoda utilizat acesteia. la punctul a, justificnd eficien a (4p.)
3.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 071 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag x re ine un num r natural cu cel pu in dou cifre. Care dintre urm toarele expresii C/C++ are valoarea egal cu cifra zecilor num rului natural memorat n variabila x? (4p.) b. x (x / 10) * 10 a. x % 10 / 10 d. x (x / 10) % 10 c. x / 10 % 10 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. s 0 2. Se consider algoritmul al turat, descris n cite te n (num r natural, n<10) pseudocod. pentru i 1,n execut S-a notat cu [a/b] ctul mp r irii ntregi a num rului cite te x (num r natural) natural a la num rul natural nenul b. ct timp x>9 execut x [x/10] a) Scrie i valoarea ce se va afi a dac se citesc pentru n valoarea 5 i pentru x, n aceast ordine, pentru j 1,i-1 execut valorile: 523, 4256, 324, 4, 86935. (6p.) x x*10 b) Dac n = 4, scrie i un ir de valori pare care pot fi citite pentru x astfel nct s se afi eze 1234. s s + x (6p.) scrie s c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) d) Scrie i n pseudocod un algoritm echivalent cu cel dat care s utilizeze n locul structurii ct timp...execut o structur repetitiv condi ionat posterior. (4p.)
Varianta 71 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 071 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul maxim de noduri frunz pe care le poate avea un arbore cu r d cin cu 15 noduri? (4p.) 1 b. 15 c. 14 1 0 1 0 0 0
3
d. 1 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 d.
0
Subiectul I
BACALAUREAT 2009 orientat - INFORMATIC , limbajul C/C++ 2. Se d graful definit prin matricea de Specializarea Matematic -informatic adiacen al turat . Preciza i cte noduri ale
0 1 0 0 1 0
a.
b.
c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider o stiv S1, ini ial vid , n care s-au introdus n ordine valorile a,b,c,d,e,f,g,h i o alt stiv S2, ini ial vid . Care va fi elementul din vrful stivei S1 i care va fi elementul din vrful stivei S2 dac se extrag jum tate din elementele din stiva S1 i se adaug n ordinea extragerii n stiva S2? (6p.) Fiecare dintre variabilele declarate al turat memoreaz numele struct elev{ char nume[20]; i nota cte unui elev. float nota; Scrie i secven a de instruc iuni prin care se citesc de la tastatur numele i nota pentru fiecare dintre variabilele e1 i e2 i apoi }; se afi eaz numele elevului cu nota cea mai mare. Dac cele elev e1,e2; dou medii sunt egale, se va afi a numele elevului memorat n variabila e1. (6p.) Scrie i programul C/C++ care cite te de la tastatur o valoare natural n (2 n 100), construie te n memorie i apoi afi eaz pe ecran o matrice a cu n linii i n coloane, numerotate de la 1 la n, care con ine numerele naturale, n ordine cresc toare, de la 1 la n2, dispuse pe coloane, n ordine cresc toare. Astfel coloana 1 va con ine numerele de la 1 la n, coloana 2 numerele de la n+1 la 2*n, coloana 3 de la 2*n+1 la 3*n i a a mai departe, ca n exemplu. Matricea se va afi a pe ecran, cte o linie a matricei pe cte o linie a 1 5 9 13 ecranului, elementele fiec rei linii fiind separate ntre ele prin cte un 2 6 10 14 3 7 11 15 spa iu. Exemplu: pentru n = 4 se va afi a matricea al turat . (10p.) 4 8 12 16
4.
5.
Varianta 71 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 071 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz n ordine cresc toare toate numerele de exact 4 cifre care se pot forma cu elementele mul imii {0,1,2,3,4}. Primele 8 solu ii generate sunt, n ordine: 1000, 1001, 1002, 1003, 1004, 1010, 1011, 1012. Care sunt primele trei numere ce se vor genera imediat dup num rul 3443? (4p.) b. 3444,4443,4444 a. 4000,4001,4002 c. 3444,4444,4000 d. 3444,4000,4001
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Ce valoare va avea variabila ntreag x, n urma apelului F(1, x), tiind c , nainte de apel, variabila x are valoarea 0, iar subprogramul F este definit al turat? (6p.) 3. void F(int i, int &x) { if (i <= 10) { if(i%2!=0) x = x + 2; else x = x 1; F(i + 1, x); } }
Un num r natural se nume te palindrom dac num rul citit de la stnga la dreapta este egal cu num rul citit de la dreapta la stnga. a) Scrie i defini ia complet a subprogramului Palindrom care prime te prin intermediul parametrului n un num r natural de cel mult nou cifre i returneaz 1 dac acesta este palindrom i 0 n caz contrar. (10p.) b) Fi ierul text numere.in con ine mai multe numere naturale de cel mult 9 cifre fiecare, numerele fiind desp r ite prin cte un spa iu. Cel pu in unul dintre numere este palindrom. Scrie i un program C/C++ care cite te numerele din fi ierul numere.in i, folosind apeluri utile ale func iei Palindrom, determin n mod eficient care este cel mai mare num r palindrom citit. Programul scrie n fi ierul text numere.out num rul astfel determinat. Exemplu: dac numere.in con ine numerele: 23 565 78687 7887 7865 78687 7887 23 78687 98798 atunci numere.out va con ine: 78687 (6p.) c) Descrie i succint, n limbaj natural, metoda de rezolvare folosit la punctul b (3 4 rnduri). (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 072 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac num rul natural memorat de variabila n este divizibil cu 12? (4p.) b. (n/4 == 0) && !(n%3) d. (n%4 == 0) && (n%3 == 0)
Varianta 72 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. a) b) Scrie i ce se va afi a dac cite te valoarea 5. pentru n se (6p.) cite te n (num r natural nenul)
pentru i 1,2*n-1 execut b 0 dac n-i < 0 atunci j i-n altfel j n-i ct timp j scrie * j j-1 b 1 dac b 0 execut
Se nlocuie te prima structur dac ...atunci cu atribuirea j 4. Modifica i condi ia logic din cadrul structurii ct timp...execut astfel nct, pentru n=4, algoritmul s afi eze:
**** *** ** *
(4p.)
0 atunci
c) d)
Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc prima (6p.) structur dac ...atunci cu o opera ie de atribuire.
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 072 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Fie arborele cu 6 noduri etichetate cu numere naturale de la 1 la 6 i cu muchiile: [2,4] [2,6] [5,7] [6,3] [6,8] [7,1] [7,2] [7,9]. C i vectori de ta i distinc i se pot construi pentru acest arbore? Doi vectori de ta i sunt distinc i dac exist cel pu in o pozi ie pentru care elementele corespunz toare din cei doi vectori sunt distincte. (4p.) 6 d. 5
Subiectul I
2.
Variabilele x i s memoreaz iruri cu cel mult 20 de caractere: x memoreaz irul primavara, iar variabila s memoraz irul anotimp. Ce se va memora n variabila s n urma execut rii instruc iunii de mai jos? strncat(s, x, 5); (4p.) anotimpprima primavara b. d. anotimpprimavara prima
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider un graf neorientat cu 8 noduri, numerotate de la 1 la 8 i muchiile: [1,4], [1,8], [2,1], [2,3], [3,1], [4,5], [4,7], [5,7], [6,5]. Preciza i cte componente conexe va avea subgraful ob inut prin eliminarea nodului 1. (6p.) Se consider graful orientat cu 5 noduri, numerotate de la 1 la 5, definit prin matricea de adiacen al turat . Indica i num rul minim de arce care trebuie ad ugate grafului astfel nct, pentru orice dou noduri x i y ale sale, s existe cel pu in un drum de la x la y. (6p) 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0
4.
5.
Scrie i programul C/C++ care cite te de la tastatur o valoare natural n (2 n 24) i construie te n memorie, apoi afi eaz pe ecran o matrice a cu n linii i n coloane, simetric fa de diagonala secundar . Elementele matricei sunt numerele naturale de la 1 la
n(n + 1) . Elementele situate deasupra i pe diagonala secundar 2
cresc toare pe linii astfel: prima linie con ine numerele de la 1 la n, a doua linie con ine numerele de la n + 1 la 2*n 1 i a a mai departe. Matricea se va afi a pe ecran, cte o linie a matricei pe o linie a ecranului, elementele unei linii fiind separate ntre ele printr-un spa iu. 1 2 3 4 Exemplu: pentru n = 4 se va ob ine matricea al turat . (10p.) 5 6 7 3 8 9 6 2 10 8 5 1
Varianta 72 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 072 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz n ordine cresc toare toate numerele de 4 cifre, cu cifre distincte, astfel nct diferen a n valoare absolut dintre prima i ultima, respectiv a doua i a treia cifr este egal cu 2. Primele 11 solu ii generate sunt, n ordine: 1023, 1203, 1243, 1423, 1463, 1573, 1643, 1683, 1753, 1793, 1863. Care dintre urm toarele numere se va genera imediat naintea num rului 9317? (4p.) b. 9357 c. 9207 d. 8976 a. 9247
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Ce se va afi a n urma execut rii subprogramului al turat, la apelul F(57);? (6p.) void F(int x) { if(x) { F(x/2); cout << x%2; | } }
printf(%d,x%2);
3.
a) Scrie i n limbajul C/C++ defini ia complet a subprogramului Cifre care prime te prin parametrii a i b dou numere naturale (0<a<200000000, 0<b<200000000) i returneaz num rul de cifre comune ale celor dou numere. Exemplu: dac a = 123446 i b= 248766 atunci subprogramul va returna 3, iar dac a = 1244 i b = 4456 subprogramul va returna 1. (10p.) b) Fi ierul text numere.in con ine pe prima linie a sa dou numere naturale, x, cu cel mult nou cifre, i p, cu exact o cifr , iar pe a doua linie cel mult 1000 de numere naturale de cel mult nou cifre fiecare. Scrie i programul C/C++ care cite te numerele din fi ierulu numere.in i, apelnd func ia Cifre, scrie n fi ierul text numere.out acele numere de pe a doua linie a fi ierului numere.in care au exact p cifre comune cu num rul x. Numerele vor fi scrise pe aceea i linie, desp r ite prin cte un spa iu. (6p.) c) Descrie i succint, n limbaj natural, metoda de rezolvare folosit la punctul b (3 4 rnduri) (4p.) Exemplu: numere.in numere.out 345638 3 45239 900583 635 123 45239 96583 900583 635 78900
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 073 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele numerice a, b i aux sunt de acela i tip. Care dintre urm toarele secven e interschimb corect valorile variabilelor a i b? (4p.) b. aux = a; b = a; b = aux; d. b = aux; aux = a; a = b;
Varianta 73 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar prin [x/y] ctul mp r irii ntregi a num rului natural x la num rul natural nenul y. a) Scrie i ce se va afi a dac se citesc pentru a valoarea 260, pentru b valoarea (6p.) 288 i pentru p valoarea 9. cite te a, b, p (numere naturale nenule, a < b) nr 0 pentru i a,b execut x i ct timp x 0 i x%p 0 execut x [x/10] dac x 0 atunci nr nr+1
b)
Dac a=110, iar p=18, scrie i cel mai mare num r care poate fi citit pentru b, scrie nr astfel nct s se afi eze valoarea 0. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 073 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider arborele cu 12 noduri, numerotate de la 1 la 12, definit prin urm torul vectori de ta i: (4, 8, 0, 3, 10, 1, 8, 3, 2, 4, 7, 10). Care dintre nodurile arborelui au exact un descendent direct (fiu)? (4p.) d. 10, 1 , 2, 7 I Subiectul struct B { struct A x; long y;}; B x, y;. d. char
b. a. 6, 9, 11 2009 - INFORMATIC 1, 2, 7 BACALAUREAT , limbajul c. C/C++ 5, 12, 6, 9, 11 struct A { Specializarea Matematic -informatic 2. Se consider declar rile al turate. Care este tipul expresiei x.x.y a. float b. ? int (4p.) c. long
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider graful orientat cu 6 noduri, numerotate de la 1 la 6, i arcele (1,2), (1,5), (1,6), (2,3), (4,3), (4,5), (6,5). Care este num rul minim de arce care trebuie ad ugate grafului astfel nct acesta s con in cel pu in un circuit elementar de lungime 4? Pentru graful rezultat, da i un exemplu de astfel de circuit. (6p.) Variabilele n, i, p i q sunt de tip ntreg, iar variabila a memoreaz un tablou bidimensional cu n linii i n coloane numerotate de la 1 la n (0<n<50), cu elemente numere reale. nlocui i punctele de suspensie din secven a de program for(i = 1; i <= n; i++) al turat cu instruc iunile corespunz toare, astfel nct, n {........} urma execut rii acesteia, s se interschimbe elementele liniei q cu elementele liniei p ale tabloului a (1 q n, 1 p n). Dac sunt necesare i alte variabile, scrie i declar rile acestora. (6p.) Se consider un text avnd maximum 255 de caractere, format numai din litere mici ale alfabetului englez i spa ii, n care oricare dou cuvinte al turate n text sunt desp r ite printr-un singur spa iu. Ultimul caracter din text este diferit de spa iu. Scrie i un program C/C++ care cite te de la tastatur un text ca cel descris mai sus i afi eaz pe ecran, desp r ite printr-un spa iu, num rul de cuvinte din text i cte dintre acestea au prima liter vocal (a, e, i, o sau u). Exemplu: pentru urm toarul text ele sunt eleve in clasa a opta se va afi a: 7 5 (10p.)
4.
5.
Varianta 73 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 073 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz n ordine cresc toare toate numerele de 4 cifre, cu cifre distincte, astfel nct diferen a n valoare absolut dintre ultimele dou cifre ale fiec rui num r generat este egal cu 2. Primele opt solu ii generate sunt, n ordine:1024, 1035, 1042, 1046, 1053, 1057, 1064, 1068. Care dintre urm toarele numere se va genera imediat dup num rul 8975? (4p.) b. 9013 c. 8957 d. 9024 a. 8979
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Ce se va afi a n urma execut rii subprogramului al turat, la apelul F(56);? (6p.) void F(int x) { if(x) { F(x/2); cout << x%10; } }
printf(%d,x%10);
3.
a) Scrie i defini ia complet a subprogramului Insereaza, cu patru parametri, n, x, k i v, care prime te prin intermediul parametrului n un num r natural (0<n<1000), prin intermediul parametrului x un tablou unidimensional cu n elemente, numere reale, numerotate de la 1 la n, prin parametrul k un num r natural reprezentnd o pozi ie din tablou(1 k n), iar prin parametrul v un num r real. Subprogramul va insera valoarea v pe pozi ia k a tabloului x i furnizeaz tabloul modificat, precum i num rul elementelor acestuia, actualizate. (10p.) b) Fi ierul text sir.in con ine cel pu in dou i cel mult 100 numere naturale de maximum patru cifre fiecare, numerele fiind desp r ite prin cte un spa iu. Scrie i un program C/C++ care cite te numerele din fi ierul sir.in i, folosind apeluri ale subprogramului Insereaza, construie te n memorie un tablou unidimensional care va con ine toate numerele din fi ierul sir.in, iar ntre fiecare dou numere consecutive din fi ier insereaz media lor aritmetic . Programul scrie n fi ierul text sir.out elementele tabloului ob inut, cu cel mult o zecimal , cte 10 elemente pe fiecare rnd (cu excep ia ultimului rnd, care poate s con in mai pu ine), elementele de pe acela i rnd fiind desp r ite prin cte un spa iu. (6p.) Exemplu: dac fi ierul sir.in con ine numerele: 7 5 635 456 0 8 587 atunci, dup executarea programului, fi ierul sir.out va con ine: 7 6 5 320 635 545.5 456 228 0 4 8 297.5 587 c) Descrie i succint, n limbaj natural, metoda de rezolvare folosit la punctul b (3 4 rnduri). (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 074 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac variabila x memoreaz un num r natural p trat perfect? (4p.) b. sqrt(x) != floor(sqrt(x)) d. x-floor(x)==ceil(x)
Varianta 74 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar cu [x/y] ctul mp r irii ntregi a num rului natural x la num rul natural nenul y. a) Scrie i ce se va afi a dac se citesc pentru a valorea 625231, iar pentru b valoarea 425271. (6p.) cite te a,b (numere naturale nenule) c 0 p 0 ct timp a + b > 0 execut dac a%10 = b%10 i a%2=0 atunci c c*10 + b%10 altfel p p*10 + a%10 a b [a/10] [b/10]
b)
Dac a=12345 scrie i o valoare de cinci scrie c, p cifre care poate fi citit pentru b, astfel nct s se afi eze pentru p valoarea 42. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
c) d)
Efectua i un num r minim de modific ri asupra algoritmului dat astfel nct prin executarea algoritmul ob inut s se calculeze n variabila c num rul de cifre pare, comune i aflate pe pozi ii identice, pe care le au cele dou valori citite. (4p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 074 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider o stiv n care ini ial au fost introduse, n aceast ordine, elementele 5, 6 i 10. Dac se noteaz cu PUSH x opera ia prin care se adaug elementul cu informa ia x n stiv , i cu POP opera ia prin care se elimin un nod din stiv , care este rezultatul execut rii secven ei PUSH 1; POP; POP; PUSH 8; PUSH 6; PUSH 5; POP; POP; BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I (4p.)
Specializarea Matematic -informatic
a.
b.
c.
d.
2.
Ce se va afi a n urma if(strcmp(x, y) > 0) cout << x; | printf(%s,x); execut rii secven ei de else program al turate dac if(strcmp(x,y) < 0) variabila x memoreaz cout << y; | printf(%s,y); cuvntul bacalaureat, iar else variabila y memoreaz cout << imposibil; | printf(imposibil); cuvntul banal? (4p.) imposibil banal b. d. bacalaureat bacalaureatimposibil
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider un arbore cu 9 noduri, numerotate de la 1 la 9, i cu vectorul de ta i urm tor: (8, 8, 8, 2, 6, 2, 9, 0, 2). a) Enumera i descenden ii nodului 2. (3p.) b) Cte noduri de tip frunz are acest arbore? (3p.) Se consider graful neorientat cu 6 noduri, numerotate de la 1 la 6 [1,3] [1,5] [2,3] [2,4] [2,6] [5,3] [6,4]. i urm toarele muchii:
4.
a) Care este num rul minim de muchii ce trebuie eliminate din acest graf, astfel nct graful par ial ob inut s nu con in niciun ciclu? (3p.) b) Care este num rul minim de muchii ce trebuie eliminate din graful ini ial dat, astfel nct graful par ial ob inut s aib exact dou componente conexe? (3p.) 5. Scrie i programul C/C++ care cite te de la tastatur o valoare natural n (2 n 100), construie te n memorie i apoi afi eaz pe ecran o matrice a, cu n linii i n coloane, numerotate de la 1 la n, n care fiecare linie con ine toate numerele naturale, de la 1 la n , dispuse dup cum urmeaz : pe liniile de indice impar numerele sunt n ordine cresc toare, iar pe cele de indice par sunt n ordine descresc toare, ca n exemplu. Matricea se va afi a pe ecran, cte o linie a matricei pe o linie a ecranului, 1 2 3 4 4 3 2 1 elementele unei linii fiind separate ntre ele prin cte un spa iu. Exemplu: pentru n = 4 se va afi a matricea al turat . (10p.) 1 2 3 4 4 3 2 1
Varianta 74 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 074 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. ntr-un spectacol sunt prezentate cinci melodii numerotate cu 1, 2, 3, 4 i 5. Utiliznd metoda backtracking, se genereaz toate posibilit ile de a le prezenta pe toate, tiind c melodia 2 trebuie prezentat dup melodia 3, nu neap rat pe o pozi ie consecutiv , iar (4p.) melodia 5 va fi prezentat tot timpul prima. Cte asemenea posibilit i exist ? b. 6 c. 12 d. 4 a. 24
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider func ia Suma, definit al turat. Ce valoare are Suma(2)? Dar Suma(8)? (6p.) int Suma(int x) { if(x == 1 ) return 0; if(x%2==0) return Suma(x-1)+(x-1)*x; return Suma(x-1)-(x-1)*x; }
3.
Subprogramul Cifra, cu doi parametri, n i x, prime te prin intermediul parametrului n un num r natural de cel mult nou cifre i furnizeaz prin parametrul x cea mai mare cifr a num rului transmis prin parametrul n. a) Scrie i defini ia complet a subprogramului Cifra. (6p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n, n<1000000000, i afi eaz pe ecran mesajul Da n cazul n care num rul citit este format doar din cifre apar innd mul imii {0,1,2,3,4} i afi eaz mesajul Nu n caz contrar. (4p.) c) Fi ierul text NUMERE.IN con ine pe prima linie un num r natural n (0<n<1000), iar pe a doua linie, separate prin cte un spa iu, n numere naturale cu cel mult nou cifre fiecare. Scrie i un program C/C++ care cite te de la tastatur o cifr c, i, folosind apeluri utile ale subprogramului Cifra, determin pentru cte dintre numerele de pe a doua linie a fi ierului NUMERE.IN, cifra c reprezint cifra maxim . Programul scrie pe primul rnd al fi ierul text NUMERE.OUT mesajul DA dac exist astfel de valori i pe al doilea rnd num rul acestora, iar dac nu exist va scrie n fi ier mesajul NU. (10p.) Exemplu: dac cifra citit este 8 NUMERE.IN con ine NUMERE.OUT va con ine DA 10 2 725 3695 423 0 7895 0 100 101 870 568
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 075 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele instruc iuni C/C++ sunt corecte sintactic dac x i y sunt dou variabile de tip ntreg? (4p.) a. if (x < 2) && (x > - 5) {x=x+1; y=y-1;} c. if x < 2 && x >-5 { x=x+1; y=y-1;} b. if -5 < x < 2 { x=x+1; y=y-1;} d. if (x < 2 && x > -5) {x=x+1; y=y-1;}
Varianta 75 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n a 0 pseudocod. k 0 repet S-a notat cu [a/b] ctul mp r irii ntregi a cite te x (num r natural) num rului natural a la num rul natural nenul b. ct timp x > 99 execut x [x/10] Scrie i ce se va afi a dac se citesc, n a) aceast ordine, valorile: 62521, 2571, 2, dac x > 9 atunci 56, 614. (6p.) a a*100 + x Scrie i un set de date de intrare, format din b) k k+1 exact ase numere, pentru care algoritmul s afi eze valoarea 12345678. (4p.) pan cnd k = 4 c) d) Scrie i programul C/C++ corespunz tor scrie a algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care structura repet ...pn cnd s fie nlocuit cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 075 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Ce se va afi a n urma execut rii secven ei for(i = 0; i < strlen(x); i++) if(x[i] >= A && x[i] <=N) de program al turate tiind c i este o x[i] = x[i] + a-A; variabil de tip ntreg, iar variabila x irul de caractere cout << x; memoreaz ini ial BACALAUREAT 2009 Subiectul I ExAMeNe ? - INFORMATIC , limbajul C/C++ (4p.)
Specializarea Matematic -informatic
a. 2.
exAmeNe
b.
ExAmene
c.
EXAMENE
d.
examene 5 4 6 2 5 6 3 4.
8
Se consider graful neorientat cu 6 noduri, numerotate de la 1 1: 3 la 6 definit prin listele de adiacent al turate. Cte muchii 2: 3 trebuie ad ugate n acest graf astfel nct el s devin graf 3: 1 complet? (4p.) 4: 2 5: 1 6: 2
16
a.
b.
14
c.
d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare: 3. Se consider o coad n care ini ial au fost introduse, n aceast ordine, elementele 1, 2 i 3. Se noteaz cu ADD x opera ia prin care se adaug informa ia x n coad i cu ELIM opera ia prin care se elimin un nod din coad . Completa i punctele de suspensie din secven a urm toare cu opera iile necesare astfel nct n urma execut rii secven ei: ADD 4; ELIM; ELIM; ... ADD 6; ... ADD 7; coada s con in , n aceast ordine, elementele: 4, 5, 6, 7. (6p.) Se consider graful orientat cu 7 vrfuri, numerotate de la 1 la 7, i arcele (1,2), (2,5), (3,2), (3,4), (3,6), (5,6), (5,7), (6,1). Care este num rul minim de arce care trebuie ad ugate acestui graf astfel nct, pentru orice dou noduri x i y, din mul imea {1,2,3,4} s existe cel pu in un drum de la x la y? Enumera i arcele care trebuie ad ugate. (6p.) Scrie i programul C/C++ care cite te de la tastatur dou valori naturale m i n (1<m, n<51) i construie te n memorie i apoi afi eaz o matrice cu m linii, numerotate de la 1 la m, i n coloane, numerotate de la 1 la n; liniile matricei, dou cte dou , sunt completate alternativ numai cu 0 sau numai cu 1, ca n exemplu. Astfel, - elementele liniei 1 i 2 sunt egale cu 0; - elementele liniei 3 i 4 sunt egale cu 1; - elementele liniei 5 i 6 sunt egale cu 0; i a a mai departe. Matricea astfel ob inut se va afi a pe ecran, cte o linie a matricei 0 0 0 0 0 pe o linie a ecranului, cu cte un spa iu ntre elementele fiec rei 0 0 0 0 0 1 1 1 1 1 linii. 1 1 1 1 1 Exemplu: pentru m = 7 i n = 5 se va afi a matricea al turat . (10p.) 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
4.
5.
Varianta 75 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 075 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Ce valoare are F(2758), pentru int F(int x) { func ia F, definit al turat? if(x == 0) return 0; (4p.) if(x%10%2 == 0) return 2 + F(x/10); return 10 F(x/10); } 0 b. 20 c. 12 d. 4
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. n secven a al turat , variabila x memoreaz un tablou unidimensional, iar toate celelalte variabile sunt de tip ntreg. Ce se va afi a n urma execut rii secven ei dac n=6, iar elementele tabloului sunt: x0=10, x1=5, x2=-6, x3=7, x4=0, x5=-2? (6p.) for(int i = 0; i <n/2; i++) { aux = x[i]; x[i] = x[ni-1]; x[n-i-1] = aux; } for(i = 0; i < n; i++) cout << x[i] << ; | printf(%d , x[i]);
3.
Scrie i n limbajul C/C++ defini ia complet a subprogramului Invers, cu doi parametri, n i x, care prime te prin intermediul parametrului n un num r natural de cel mult nou cifre i furnizeaz prin parametrul x num rul ob inut prin inversarea ordinii cifrelor sale, ca n exemplu. Exemplu: dac n=78904 atunci, dup apel, x=40987. (10p.) Pentru un ir de numere naturale, numim punct de minim al irului un termen din ir care are doi vecini, termenul precedent i termenul urm tor din ir, i valoarea termenului respectiv este strict mai mic dect valoarea fiec ruia dintre cei doi vecini ai s i. a) Fi ierul text date.in con ine un ir de cel pu in dou i mult 10000 de numere naturale avnd maximum 6 cifre fiecare, numere separate prin cte un spa iu. Scrie i un program C/C++ care cite te toate numerele din fi ier i afi eaz num rul de puncte de minim ale irului citit, folosind un algoritm eficient din punctul de vedere al memoriei utilizate. (6p.) Exemplu: dac fi ierul date.in are urm torul con inut: 51 20 100 43 43 618 5000 31 2020 4 atunci pe ecran se afi eaz 2 (cele dou numere subliniate reprezint punctele de minim ale irului) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 076 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac valoarea real memorat de variabila y nu apar ine intervalului deschis determinat de valorile reale distincte memorate de variabilele x i z (x<z)? (4p.) b. (z>x) && (z<y) d. (z<x) && (z>y)
Varianta 76 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, reprezentat n cite te a (num r natural) pseudocod. x 2 S-a notat cu x|y rela ia x divide pe y sau y este divizibil cu p 1 ct timp a>1 execut x i cu [z] partea ntreag a num rului real z. c 0 a) Scrie i valoarea care se va afi a dac se cite te ct timp x|a execut num rul a=245. (6p.) c x a [a/x] b) Scrie i un num r par, de trei cifre, care poate fi citit pentru variabila a astfel nct s se afi eze o valoare dac c0 atunci egal cu cea citit . (4p.) p p*c c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) x x+1 d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc fiecare structur ct scrie p timpexecut cu cte o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 076 Pentru fiecare dintre itemii 1 i 2 scrie i pe foaia de examen litera care corespunde r spunsului corect. foaia de examen litera corespunz toare r spunsului corect. n secven a de program al turat variabila t x=0; memoreaz o matrice cu 5 linii i 5 coloane, for(i=0;i<5;i++) for(j=i+1;j<5;j++) numerotate de la 0 la 4, cu elemente x=x+t[i][j]; numere ntregi, iar celelalte variabile sunt BACALAUREAT - INFORMATIC , limbajul C/C++ ntregi. 2009 Executarea acestei secven e de Specializarea Matematic -informatic program determin memorarea n variabila x a sumei elementelor situate: (4p.) 1. a. c. 2. deasupra diagonalei principale, inclusiv b. diagonala principal strict sub diagonala principal d.
Subiectul I
Fie graful orientat cu 8 vrfuri, numerotate de la 1 la 8, i arcele (1,2), (2,3), (3,1), (4,5), (6,5), (5,7), (7,6), (7,4), (8,7). Num rul minim de arce care trebuie ad ugate astfel nct, pentru oricare dou vrfuri x i y din graf s existe cel pu in un drum de la nodul x la nodul y este: (4p.) 2 b. 4 c. 0 d. 1
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. ntr-o stiv ale c rei elemente re in informa ii numere ntregi, au fost introduse, n aceast 3. ordine, numerele 1,2,3,4. Asupra stivei se efectueaz , n aceast ordine, urm toarele opera ii: se elimin un element, se adaug dou elemente cu valorile 5 i respectiv 6 i apoi se elimin 3 elemente. a) Care este valoarea memorat n elementul din vrful stivei dup efectuarea acestor opera ii? (3p.) b) Care este suma elementelor aflate n stiv dup efectuarea acestor opera ii? (3p.) 4. Care este vectorul de ta i pentru arborele cu 8 noduri, numerotate de la 1 la 8, i muchiile [1,5], [2,3], [3,6], [3,8], [4,6], [5,7], [6,7], dac se alege ca r d cin nodul numerotat cu 6? (6p.) Scrie i programul C/C++ care cite te de la tastatur un cuvnt de maximum 20 de litere i minimum o liter i afi eaz pe ecran toate cuvintele ob inute din cuvntul citit prin eliminarea primei i a ultimei litere. Prima prelucrare se refer la cuvntul citit, iar urm toarele la cuvntul rezultat din prelucrarea anterioar . Procedeul de eliminare i afi are se va repeta pn cnd se ob ine cuvntul vid, ca n exemplu. Fiecare cuvnt ob inut se va afi a pe cte o linie a ecranului. Exemplu : dac se cite te cuvntul bacalaureat, se va afi a: bacalaureat acalaurea calaure alaur lau a (10p.)
5.
Varianta 76 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 076 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Dac se utilizeaz metoda backtracking pentru a genera toate permut rile de 4 obiecte i primele 5 permut ri generate sunt, n aceast ordine, 4 3 2 1, 4 3 1 2, 4 2 3 1, 4 2 1 3, 4 1 3 2, atunci a 6-a permutare este: (4p.) b. 3 4 2 1 c. 1 4 3 2 d. 4 1 2 3 a. 3 2 1 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Pentru defini ia al turat a subprogramului long sub(long n) 2. sub, scrie i ce valoare are sub(3). {if (n!=0) (6p.) Dar sub(132764)? if(n%2!=0) return n%10*sub(n/10); else return sub(n/10); else return 1; } 3. Scrie i defini ia complet a unui subprogram s, cu trei parametri, n, c, k, care prime te prin intermediul parametrului n un num r natural de maximum 9 cifre, prin intermediul parametrului c o cifr i furnizeaz prin intermediul parametrului k num rul de cifre ale lui n care apar in intervalului [c-1,c+1]. Exemplu: pentru n=1233 i c=3, k va avea valoarea 3, iar pentru n=650 i c=3, k va avea valoarea 0. (10p.) Pe prima linie a fi ierului BAC.TXT se g se te un num r natural n (0<n<1000), pe linia a doua se g sesc n numere naturale, ordonate cresc tor, cu cel mult 4 cifre fiecare, iar pe linia a treia un num r natural a (a<10000). Numerele de pe a doua linie a fi ierului sunt separate prin cte un spa iu. S se scrie un program care cite te toate numerele din fi ier i afi eaz pe ecran mesajul DA dac num rul a se afl printre cele n numere de pe linia a doua a fi ierului, sau mesajul NU n caz contrar. Exemplu: dac fi ierul con ine: 7 2 3 3 4 5 8 9 8 atunci se va afi a: DA a) Descrie i n limbaj natural o metod de rezolvare eficient ca timp de executare. b) Scrie i programul C/C++ corespunz tor metodei descrise la punctul a). (4p.) (6p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 077 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag n memoreaz un num r natural de exact 5 cifre. Instruc iunea care determin eliminarea din num rul n a primei i ultimei cifre este: (4p.) b. n=n/10%1000; d. n=n%10/1000;
Varianta 77 - informatica
a. n=n%100/10; c. n=n/10%10000;
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod: a) b) algoritmul al turat, reprezentat n cite te a (num r natural) k 0 ct timp a0 execut Scrie i valoarea care se va afi a dac se citesc, n cite te b (num r natural) (6p.) acest ordine, valorile: 2, 4, 6, 5, 7, 3, 9, 8, 0. dac a < b atunci k k+1 Scrie i toate irurile de date de intrare avnd suma elementelor egal cu 4, care s determine afi area a b valorii 0. (4p.) Scrie i programul C/C++ corespunz tor algoritmului scrie k dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, algoritm n care s se nlocuiasc structura ct timpexecut cu o structur repetitiv de alt tip. (6p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 077 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Variabila t memoreaz o matrice cu 8 linii i 8 z=0; coloane, numerotate de la 0 la 7, cu elemente for(i=0;i<8;i++) for(j=0;j<i;j++) numere ntregi, iar variabilele i i j sunt ntregi. z=z+t[i][j]; Secven a de program al turat determin n BACALAUREAT 2009 -rii INFORMATIC , limbajul urma execut ei, memorarea n C/C++ variabila Specializarea Matematic -informatic ntreag z a sumei tuturor elementelor situate: (4p.) a. c. 2. a. strict sub diagonala principal strict deasupra diagonalei principale b. d.
Subiectul I
deasupra diagonalei principale, inclusiv diagonala principal strict deasupra diagonalei secundare
Num rul minim de noduri cu gradul 1 pentru un graf neorientat conex cu 21 noduri i 20 muchii este: (4p.) 11 b. 3 c. 2 d. 1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Care sunt noduri de grad 1 din arborele cu r d cin , cu 7 noduri, numerotate de la 1 la 7, descris prin urm torul vector de ta i: (5,1,4,5,0,4,3) (6p.) ntr-o stiv ale c rei elemente re in informa ii numere ntregi, au fost introduse, n aceast ordine, numerele 5,4,3,2,1. Asupra stivei se efectueaz urm toarele opera ii: se elimin 2 elemente, se adaug un element cu valoarea 6 i apoi se elimin 3 elemente. a) Care este valoarea memorat n elementul din vrful stivei dup efectuarea opera iilor n ordinea precizat ? (3p.) b) Care este suma valorilor aflate n stiv dup efectuarea acestor opera ii? (6p.) Scrie i programul C/C++ care cite te de la tastatur un text de cel mult 50 de caractere, (litere mici ale alfabetului englez i spa ii), text format din mai multe cuvinte, separate prin cte un spa iu, i afi eaz pe ecran textul ob inut din cel ini ial prin transformarea primei litere i a ultimei litere a fiec rui cuvnt n majuscul . Exemplu: dac se cite te textul azi este examen de bacalaureat se va afi a AzI EstE ExameN DE BacalaureaT (10p.)
5.
Varianta 77 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 077 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. La un concurs particip 50 de sportivi mp r i i n 5 echipe, astfel nct n fiecare echip s fie cte 10 sportivi. Problema determin rii tuturor grupelor de cte 5 sportivi, cte unul din fiecare echip , este similar cu generarea tuturor: (4p.) b. submul imilor cu 5 elemente ale mul imii {1,2,,10} d. parti iilor mul imii {1,2,,10}
a. elementelor produsului cartezian AxAxAxAxA, unde A={1,2,,10} c. permut rilor mul imii {1,2,3,4,5}
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului sub, scrie i ce valoare are sub(4). Dar sub(132764)? 3. (6p.) int sub(long n) {if (n!=0) if(n%2!=0) return n%10+sub(n/10); else return sub(n/10); else return 0; }
Fi ierul text numere.in are pe prima linie un num r natural n (0<n<1000) i pe urm toarea linie n numere reale. Scrie i un program C/C++ care cite te numerele din fi ier i afi eaz pe ecran media aritmetic a numerelor aflate pe a doua linie a fi ierului, care au partea ntreag format din cel pu in dou cifre. (10p.) a) Scrie i doar antetul unui subprogram prim, cu doi parametri, n i v, care prime te prin intermediul parametrului n un num r natural i furnizeaz prin intermediul parametrului p valoarea 1 dac n este prim i 0 n caz contrar. (2p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (3<n<100) i apoi n numere naturale cu maximum 4 cifre fiecare i afi eaz pe ecran, desp r ite prin cte un spa iu, toate numerele prime dintre cele n numere citite, n ordinea invers fa de cum au fost citite, utiliznd apeluri utile ale subprogramului prim. (8p.) Exemplu: pentru n=12 i numerele 1 2 2 3 7 2 9 3 3 9 7 1 se vor afi a valorile : 7 3 3 2 7 3 2 2
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 078 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag n memoreaz un num r natural de exact 7 cifre. Instruc iunea care determin eliminarea din num rul n a celor 3 cifre din mijlocul lui este: (4p.) a. n=n/100000*100+n%100; b. n=n%10000/100+n/100; c. n=n/10%10000; d. n=n/1000;
Varianta 78 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. cite te a (num r natural) k 0 ct timp a0 execut S-a notat cu x%y restul mp r irii num rului natural x la cite te b (num r natural) num rul natural nenul y . dac a%10 = b%10 atunci Scrie i valoarea care se va afi a dac se citesc, n k k+1 a) acest ordine, valorile: 23, 423, 673, 55, 77, 3, 93, 38, 0. (6p.) a b b) Dac se cite te un ir de numere naturale distincte scrie k dou cte dou , numere de exact dou cifre, scrie i care poate fi valoarea maxim afi at . (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. Scrie i n pseudocod un algoritm, echivalent cu cel dat, n care s structura ct timpexecut cu o structur repetitiv de alt tip. (10p.) se nlocuiasc (6p.) algoritmul al turat, reprezentat n
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 078 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Variabila t memoreaz o matrice cu 8 linii i 8 z=0; coloane, numerotate de la 0 la 7, cu elemente for(i=0;i<8;i++) for(j=0;j<8-i;j++) numere ntregi, iar celelalte variabile sunt z=z+t[i][j]; ntregi. Secven a de program al turat BACALAUREAT 2009 INFORMATIC , limbajul C/C++ n Subiectul I determin n -urma execut rii ei, memorarea Specializarea Matematic variabila ntreag-informatic z a sumei tuturor elementelor situate: (4p.) a. c. 2. a. strict sub diagonala secundar b. deasupra diagonalei principale, inclusiv diagonala principal strict deasupra diagonalei secundare
Un graf neorientat are 40 de noduri si 40 de muchii. Num rul minim i num rul maxim de componente conexe ale grafului este (4p.) 1, respectiv 30 b. 1, respectiv 31 c. 1, respectiv 40 d. 2, respectiv 30
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Fie graful orientat cu 7 vrfuri numerotate de la 1 la 7 i arcele (1,2) (2,3) (3,1) (4,5) (5,6) (5,7) (6,7) (7,4). Care este num rul minim de arce i care sunt acele arce care ar trebui eliminate pentru ca graful par ial ob inut s nu mai con in circuite? (6p.) ntr-o coad ale c rei elemente re in informa ii numere ntregi, au fost introduse, n aceast ordine, numerele 1,2,3,4,5. Asupra cozii se efectueaz , n aceast ordine, urm toarele opera ii: se elimin un element, se adaug dou elemente cu valorile 6 i respectiv 7 i apoi se elimin 2 elemente, se adaug elementul cu valoarea 8 i se elimin un element. a) Care este valoarea ultimului element eliminat? (3p.) b) Care este suma elementelor alfate n coad dup efectuarea acestor opera ii? (3p.) Scrie i programul C/C++ care cite te de la tastatur un text cu cel mult 100 de caractere i un cuvnt cu cel mult 15 litere. Pe ecran se va afi a irul ob inut prin inserarea n textul ini ial a caracterului ? dup fiecare apari ie a cuvntului citit. Literele textului i ale cuvntului sunt litere mici ale alfabetului englez. Dac n text nu apare cuvntul citit, se va afi a mesajul NU APARE. Exemplu: dac se cite te de la tastatur textul examenului examenul de bacalaureat si examenul de atestat i cuvntul examenul se va afi a: examenului examenul? de bacalaureat si examenul? de atestat (10p.)
4.
5.
Varianta 78 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 078 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un program construie te i afi eaz elementele produsului cartezian AxBxC pentru mul imile A={1,2,3,4}, B={1,2,3}, C={1,2}. Care dintre urm toarele triplete NU va fi afi at? (4p.) b. (1,3,2) c. (1,2,3) d. (2,2,2) a. (3,2,1)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Pentru defini ia al turat a subprogramului int sub(long n) 2. sub, scrie i ce valoare are sub(4). Dar {if (n!=0) (6p.) sub(123986)? if(n%2!=0) return 1+sub(n/10); else return sub(n/10); else return 0; } 3. Se cite te de la tastatur un num r natural n, cu cel mult patru cifre, n2. S se scrie n fi ierul prime.out, pe aceea i linie, n ordine cresc toare, separate prin cte un spa iu, toate numerele prime mai mici sau egale cu n. Exemplu: pentru n=10, n fi ierul prime.out vor fi scrise numerele 2 3 5 7 . 4. (10p.)
a) Scrie i defini ia complet a unui subprogram max_neg cu trei parametri, n, v, max, care prime te prin intermediul parametrului n (0<n<100) un num r natural, prin intermediul parametrului v un tablou unidimensional cu n numere ntregi cu cel mult 4 cifre fiecare i furnizeaz prin intermediul parametrului max cea mai mare valoare strict negativ dintre numerele din tablou sau valoarea 0 dac nu exist astfel de numere. (4p.) b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (3<n<100) i apoi n numere ntregi cu cel mult 4 cifre fiecare i afi eaz pe ecran, separate prin spa iu, cea mai mare valoare strict negativ i cea mai mic valoare strict pozitiv dintre cele n citite, folosind pentru determinarea ambelor valori apeluri utile ale subprogramului max_neg. Dac nu exist valori strict negative se va afi a mesajul NU EXISTA VALORI STRICT NEGATIVE, respectiv mesajul NU EXISTA VALORI STRICT POZITIVE dac nu exist valori strict pozitive. Exemplu: pentru n=12 i numerele 11 2 2 -3 2 2 3 -13 2 3 2 10 se va afi a: -3 2 (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 079 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Stabili i ce se afi eaz n urma execut rii secven ei y=10.1234; de instruc iuni C/C++ al turate, dac y este o x=(int)(y*100)/100; variabil real , iar x o variabil ntreag . (4p.) printf(%d,x); | cout<<x; b. 10.12 c. 0.12 d. 10
Varianta 79 - informatica
a. 1012.34
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, reprezentat n cite te a (num r natural) x 2 k 0 ct timp a>1 execut c 0 ct timp x|a execut c x a [a/x] dac c0 atunci k k+x x x+1 scrie k
S-a notat cu x|y rela ia x divide pe y sau y este divizibil cu x i cu [z] partea ntreag a num rului real z. a) b) Scrie i valoarea care se va afi a dac num rul 245. se cite te (6p.)
Scrie i dou numere naturale care pot fi citite pentru variabila a astfel nct valoarea afi at n fiecare caz s fie 10. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, algoritm n care s se nlocuiasc fiecare structur ct timp...execut cu cte o structur repetitiv de alt tip. (6p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 079 Pentru fiecare dintre itemii 1 i 2 scrie i pe foaia de examen litera care corespunde r spunsului corect. foaia de examen litera corespunz toare r spunsului corect. Variabila t memoreaz o matrice cu 8 linii i 8 z=0; coloane, numerotate de la 0 la 7, cu elemente for(i=0;i<8;i++) for(j=7-i;j<8;j++) numere ntregi, iar celelalte variabile sunt z=z+t[i][j]; ntregi. Secven a de program al turat BACALAUREAT 2009 INFORMATIC , limbajul C/C++ n Subiectul I determin , n- urma execut rii ei, memorarea Specializarea Matematic variabila ntreag-informatic z a sumei tuturor elementelor situate: (4p.) 1. a. c. 2. sub diagonala secundar , diagonala secundar strict sub diagonala principal inclusiv b. d. deasupra diagonalei principale, inclusiv diagonala principal strict deasupra diagonalei secundare
Se consider un graf orientat cu 6 vrfuri, numerotate de la 1 la 6, cu proprietatea c exist un arc cu extremitea ini ial n vrful i i extremitea final n vrful j dac i este divizor al lui j. Gradul interior (intern) maxim al vrfurilor din acest graf este: (4p.) 3 b. 5 c. 4 d. 2
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider arborele cu 13 noduri numerotate de la 1 la 13 i mul imea muchiilor {[1,4],[2,5],[3,8],[4,7],[4,9],[4,11],[6,3], [6,10], [6,12], [5,6], [13,2], [2,9]}. Dac se alege nodul numerotat cu 2 drept r d cin , care este vectorul de ta i pentru acest arbore? (6p.) Fie graful neorientat cu 6 noduri numerotate de la 1 la 6 i muchiile [1,2], [1,3], [1,4], [2,3], [2,4], [3,4], [3,5], [4,5], [4,6], [5,6]. Care este num rul maxim de muchii care pot fi eliminate astfel nct graful par ial ob inut s i p streze proprietatea de graf conex? (6p.) Scrie i programul C/C++ care cite te de la tastatur un text cu cel mult 100 de caractere (litere ale alfabetului englez i spa ii), construie te n memorie i apoi afi eaz pe ecran irul de caractere ob inut din irul ini ial n care se insereaz dup fiecare vocal caracterul *. Se consider vocale literele a, e, i, o, u, A, E, I, O, U. Dac textul citit nu con ine vocale, se va afi a mesajul FARA VOCALE. Exemplu: dac se cite te de la tastatur textul Examenul de bacalaureat se va afi a: E*xa*me*nu*l de* ba*ca*la*u*re*a*t. (10p.)
4.
5.
Varianta 79 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 079 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Problema gener rii tuturor codurilor formate din exact 4 cifre nenule, cu toate cifrele distincte dou cte dou , este similar cu generarea tuturor: (4p.) a. aranjamentelor de 9 elemente luate cte b. permut rilor elementelor unei mul imi cu 4 4 elemente c. elementelor d. submultimilor cu 4 elemente ale mul imii produsului cartezian {1,2,3,4,5,6,7,8,9} AxAxAxA unde A este o mul ime cu 9 elemente
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului f, scrie i ce valoare are f(8). Dar f(1209986)? (6p.) int f(long x) { int y,z; if (x==0) return x; else {y=x%10; z=f(x/10); if(y>z) return y ; else return z; } }
3.
Scrie i defini ia complet a unui subprogram max_d cu trei parametri, n, m1, m2, care prime te prin intermediul parametrului n un num r natural cu cel pu in dou cifre i cel mult nou cifre i care returneaz prin intermediul parametrilor m1 i m2 cele mai mari dou cifre ale num rului n. Cifra returnat prin intermediul parametrului m1 va fi mai mare sau egal cu cea returnat prin intermediul parametrului m2. Exemplu: pentru n=128773, subprogramul returnez prin intermediul parametrului m1 valoarea 8 i prin intermediul parametrului m2 valoarea 7. (10p.)
4.
Se cite te de pe prima linie a fi ierului text numere.in un num r natural n (0<n<10000) i, de pe a doua linie a fi ierului, n numere naturale din intervalul [1,100] i se cere s se afi eze pe ecran, desp r ite prin cte un spa iu, num rul sau numerele ntregi din intervalul [1,100] care nu apar printre numerele citite. Dac pe a doua linie a fi ierului apar toate numerele din intervalul precizat, se va afi a mesajul NU LIPSESTE NICIUN NUMAR. Alege i un algoritm de rezolvare eficient din punctul de vedere al timpului de executare. Exemplu: pentru fi ierul numere.in cu urm torul con inut 12 4 2 3 1 6 5 7 8 9 11 10 100 se vor afi a valorile 12 13 99. a) Explica i n limbaj natural metoda utilizat justificnd eficien a acesteia (4-6 rnduri) (4p.) b) Scrie i programul C/C++ ce rezolv la punctul a). problema enun at , corespunz tor metodei descrise (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 080 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele n, z i u sunt ntregi, iar n memoreaz un num r natural cu cel pu in 2 cifre. Secven a C/C++ care determin interschimbarea ultimelor dou cifre din scrierea num rului memorat de n este: (4p.) b. u=n%10; a. n=(n/100*10+n%10)*10+n%100/10; z=n/100%10; n=n/100+u*10+z; c. n=(n/100*10+n%10)*10+n/100%10; d. u=n%10; z=n/100%10; n=n/100*100+z*10+u;
Varianta 80 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, reprezentat n cite te a (num r natural) b 0 p 1 ct timp a>0 execut c a%10 dac c%20 atunci b b+p*c p p*10 a [a/10]
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) b) Scrie i valoarea care se va afi a dac se cite te num rul a=245903. (6p.) Scrie i o valoare care poate fi citit pentru variabila a astfel nct s se afi eze o valoare egal cu cea citit . (4p.)
c) d)
Scrie i programul C/C++ corespunz tor algoritmului dat. scrie b (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timpexecut cu o structur repetitiv Ministerul de alt tip. Educa iei, Cercet rii i (6p.) Inov rii
Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 080 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
n secven a de program al turat , variabila a for(i = 1; i<=8; i++) memoreaz o matrice cu 8 linii i 8 coloane { k=i; (numerotate de la 1 la 8), cu elemente numere for(j = 1; j<=8; j++) ntregi, iar toate celelalte variabile sunt ntregi. BACALAUREAT 2009 , limbajul C/C++ Subiectul Ce valoare va- INFORMATIC avea elementul a[8][8] dup { a[i][j]=k; k=k+1; } I Specializarea Matematic -informatic executarea secven ei? (4p.) } a. 16 2. b. 15 c. 64 d. 10
Se consider un graf neorientat cu 7 noduri, numerotate de la 1 la 7, cu proprietatea c exist muchie cu extremit ile n nodurile i i respectiv j dac numerele i i j sunt de aceea i paritate sau dac i este divizor al lui j. Gradul minim al unui nod din acest graf este: (4p.) b. 2 c. 4 d. 3
a. 1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Fie graful orientat cu 9 vrfuri numerotate de la 1 la 9 i arcele (1,2) (2,3) (3,1) (4,5) (5,6) (5,7) (6,7) (7,4) (8,7) (8,9) (9,8). Care sunt vrfurile cu proprietatea c gradul interior este egal cu gradul exterior ? (6p.) ntr-o coad ale c rei elemente re in informa ii numere ntregi, au fost introduse, n aceast ordine, numerele 6,5,4,3,2,1. Asupra cozii se efectueaz , n aceast ordine, urm toarele opera ii: se elimin dou elemente, se adaug dou elemente cu valorile 6 i respectiv 7 i apoi se elimin dou elemente. Care sunt ultimele trei valori eliminate? (6p.) Scrie i programul C/C++ care cite te de la tastatur un cuvnt cu cel pu in una i cel mult 20 de litere ale alfabetului englez, construie te i afi eaz pe ecran cuvntul ob inut prin interschimbarea primei consoane cu ultima vocal din cuvnt. n cazul n care cuvntul este format numai din vocale sau numai din consoane, programul afi eaz pe ecran mesajul IMPOSIBIL. Se consider vocale literele a, e, i, o, u, A, E, I, O, U. Exemplu: dac se cite te cuvntul Marmorat se va ob ine i afi a cuvntul aarmorMt (10p.)
4.
5.
Varianta 80 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 080 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. O clas de 28 de elevi este la ora de educa ie fizic i profesorul dore te s formeze o echip de 4 elevi; ordinea elevilor n cadrul echipei nu are importan . Algoritmul de generare a tuturor posibilit ilor de a forma o asfel de echip este similar cu algoritmul de generare a tuturor: (4p.) a. aranjamentelor de 28 de elemente luate b. combin rilor de 28 de elemente luate cte 4 cte 4 d. elementelor c. parti iilor unei mul imi cu 28 de elemente produsului cartezian AxAxAxA, A fiind o mul ime cu 28 de elemente
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a int sub(long n) subprogramului sub, scrie i ce valoare {if (n!=0) if(n%2!=0) return n%10+sub(n/10); are sub(9). else return sub(n/10); Dar sub(132764)? (6p.) else return 0;} 3. Scrie i programul C/C++ care cite te de la tastatur un num r natural nenul n (0<n<100000) i afi eaz pe ecran, n ordine cresc toare, numerele naturale nenule mai mici sau egale cu n care sunt p trate perfecte i nu sunt divizori ai num rului n. Numerele vor fi afi ate cte 5 pe linie, cu excep ia ultimei linii pe care pot fi mai pu ine numere. Pe linie, numerele sunt desp r ite prin cte un spa iu. Exemplu: pentru n=80 se afi eaz : 9 16 25 36 49 64 (6p.) a) Scrie i defini ia complet a unui subprogram cu numele ordonat care prime te prin intermediul singurului s u parametru, n, un num r natural cu cel mult 9 cifre i returneaz valoarea 1 dac num rul are cifrele ordonate strict descresc tor, de la stnga la dreapta, i valoarea 0 n caz contrar. (4p.) b) Scrie i un program C/C++ care cite te de pe prima linie a fi ierului text numere.in un num r natural n (0<n<1000) i de pe a doua linie a fi ierului n numere naturale cu cel mult 9 cifre i afi eaz pe ecran, desp r ite prin cte un spa iu, numerele naturale distincte, con inute de a doua linie a fi ierului care au cifrele ordonate strict descresc tor, de la stnga la dreapta. Se vor utiliza apeluri utile ale subprogramului ordonat . (10p.) Exemplu: dac fi ierul numere.in are urm torul con inut: 134 6420 1243 9802 731 6420 pe ecran se vor afi a numerele: 6420 731 (nu neap rat n aceast ordine).
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 081 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Preciza i valoarea expresiei: 8/4/2*2*4*8 (4p.) b. 1 c. 16 d. 0 a. 64 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y. a) b) Scrie i valoarea care se vor afi a dac numerele a=12 i n=10. se citesc (6p.) cite te a,n (numere naturale) pentru i=1,n execut dac i%2=0 atunci a a-i altfel a a+i
Varianta 81 - informatica
c) d)
Dac pentru a se cite te num rul 32, scrie i o valoare care poate fi citit pentru n astfel nct s se afi eze 34. (6p.) scrie a Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, care s nu con in nicio structur repetitiv . (4p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 081 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
tiind c s-au f cut declar rile al turate, stabili i struct elev{ char nume[30]; care dintre urm toarele expresii este corect din float nota;} a[100]; punct de vedere sintactic? (4p.) elev[1].nota b. a[1].nota[1] c. a.nota[1] d. a[1].nota 1 0 1 1 0 3 1 1 0 1 0 1 1 1 0 1 1 0 0 1 0
Subiectul I
BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Specializarea -informatic 2. Graful Matematic neorientat cu 5 noduri numerotate de la 1 la 5, este
a.
0 reprezentat cu ajutorul matricei de adiacen al turate. Num rul 1 maxim de muchii ce pot fi eliminate astfel nct graful par ial rezultat 1 s aib 2 componente conexe este: (4p.) 1 1 5 b. 4 c. 6 d.
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. ntr-o coad ale c rei elemente re in informa ii numere ntregi, au fost introduse, n aceast ordine, numerele 6,5,4,3,2,1. Asupra cozii se efectueaz , n aceast ordine, urm toarele opera ii: se elimin un element, se adaug dou elemente cu valorile 6 i respectiv 7 i apoi se elimin trei elemente. Care sunt ultimele trei valori eliminate? (6p.) Variabila cuv re ine un cuvnt format din cel mult 25 litere mici ale alfabetului englez. Scrie i o secven de program C/C++ care afi eaz pe ecran litera din mijloc a cuvntului, dac acesta are un num r impar de caractere, sau cele dou litere din mijloc ale cuvntului, dac acesta are un num r par de caractere. Exemplu: dac se cite te cuvntul mihai se afi eaz litera h. (6p.) Scrie i un program C/C++ care cite te de la tastatur dou numere naturale n i m (n10, m10), apoi elementele unui tablou bidimensional cu n linii i m coloane, numere ntregi distincte, de maximum 4 cifre fiecare, i care determin cel mai mic i cel mai mare num r din tablou i le interschimb . Matricea modificat va fi afi at pe ecran, cte o linie a matricei pe o linie a ecranului, elementele fiec rei linii fiind separate prin cte un spa iu. Exemplu: pentru n=5, 2 3 m=4 i tabloul 4 5 6 24 25 -2 14 57 -5 17 13 12 36 8 9 10 70 43 se va afi a tabloul 2 3 4 5 6 24 25 -2 14 57 70 17 13 12 36 (10p.) 8 9 10 -5 43
4.
5.
Varianta 81 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 081 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Folosind cifrele {1,2,3} se genereaz , n ordinea cresc toare a valorii, toate numerele pare formate din trei cifre distincte. Astfel, se ob in n ordine, numerele: 132, 312. Folosind aceea i metod , se genereaz numerele pare formate din patru cifre distincte din mul imea {1,2,3,4}. Care va fi al 4-lea num r generat ? (4p.) b. 1432 c. 2314 d. 1423 a. 2134
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului f, scrie i ce valoare are f(0). Dar f(5552)? (6p.) int f(int x) { if(x==0) return 0; else return f(x/10)+1; }
3.
Subprogramul ordonat are 4 parametri: - n, prin care prime te un num r natural (1 n 100) ; - v, prin care prime te un tablou unidimensional cu n elemente, numerotate de la 1 la n, numere naturale cu cel mult patru cifre fiecare; - k1 i k2 dou numere ntregi (1 k1 k2 n). Subprogramul returneaz valoarea 1 dac elementele din tablou, cu indici n intervalul [k1,k2], se afl n ordine cresc toare, i 0 n caz contrar . a) Scrie i numai antetul subprogramului ordonat. (4p.)
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1 n 100) i cele n elemente, numerotate de la 1 la n, ale unui tablou unidimensional. Elementele sunt numere naturale, cu cel mult 4 cifre fiecare. Programul determin i afi eaz pe ecran, separate printr-un spa iu, dou valori, k1 i k2, astfel nct secven a format din elementele cu indici n intervalul [k1,k2], pe pozi ii consecutive n tablou, s fie ordonat cresc tor i s aib o lungime maxim . Dac sunt mai multe secven e de lungime maxim se vor afi a indicii corespunz tori unei valori minime a lui k1. Se vor utiliza apeluri utile ale subprogramului ordonat. Exemplu: dac n=7 i tabloul este (4, -6, 1, 2, 1, 4, 5) se va afi a 2 4. (10p.) 4. Fi ierul text NUMERE.IN con ine, pe fiecare linie a sa, cte dou numere naturale mai mici sau egale cu 10000, desp r ite printr-un spa iu. Scrie i programul C/C++ care s afi eze pe ecran, unul sub altul, cel mai mare num r de pe fiecare linie, ca n exemplu. (6p.) 12 14 Exemplu: dac atunci pe ecran se 14 110 fi ierul NUMERE.IN 110 12 afi eaz : 4 4 -8 are con inutul al turat:
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 082 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele ntregi a i b memoreaz numere naturale. Care dintre expresiile C/C++ de mai jos este echivalent cu expresia al turat ? (a+b)%2==0 (4p.) a. (a%2==0) && (b%2==0)&& (a%2==1) && (b%2==1) b. (a%2!=0) && (b%2!=0) && (a%2==1) && (b%2==1) c. (a%2==1) || (b%2==1) || (a%2==0) && (b%2==0) d. (a%2==0) && (b%2==0) || (a%2==1) && (b%2==1) Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. cite te m (num r natural, m<10) S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar cu [z] partea ntreag a cite te n (num r natural, n>1) num rului real z. pentru i 1,n execut a) Scrie i valorile care se vor afi a dac numerele citite cite te x sunt m=5, n=5, apoi, n aceast ordine: 25, 40, 8, 15, (num r natural) 133. (6p.) aux x ok 0 b) Scrie i care este cea mai mare valoare care poate fi ct timp x>0 execut citit pentru m dac n=4, iar pentru x se citesc, n dac x%10=m atunci ordine, valorile 121, 781, 961, 4481 astfel nct, la ok 1 finalul execut rii algoritmului, s se afi eze numai valoarea 781. (4p.) x [x/10] c) Scrie i programul C/C++ corespunz tor algoritmului dac ok=1 atunci dat. (10p.) scrie aux d) Scrie i n pseudocod un algoritm echivalent cu cel dat, n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de un alt tip. Ministerul Educa iei, Cercet rii(6p.) i Inov rii
Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Varianta 82 - informatica
Subiectul II (30 de puncte) - Varianta 082 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful orientat cu nodurile numerotate de la 1 la 5 i arcele (1,2), (1,5),(2,1), (2,3), (2,5), (3,4), (5,2), (5,4). Care este lungimea maxim a unui drum format din noduri distincte, de la nodul 1 la nodul 4? (4p.) d. 7
Subiectul I
a. 5 b. 6 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++c. 4 Specializarea Matematic -informatic 2. Se consider o stiv n care au fost introduse, n aceast a. dintre valorile din stiv va fi eliminat prima? 1 c. b. 2 3
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. tiind c variabila s re ine un ir de caractere, scrie i ce se va afi a la executarea secven ei al turate. (6p.) strcpy(s,barba); for(i=0;i<strlen(s);i++) if(s[i]==b) s[i]=t; cout<<s; | printf(%s,s); 0 0 1 0
4.
Un graf neorientat cu nodurile numerotate de la 1 la 4 este reprezentat 0 1 1 1 0 0 prin matricea de adiacen al turat . a) Scrie i nodurile din acest graf care au grad par. (3p.) 1 0 0 b) Scrie i nodurile din acest graf care au grad impar. (3p.) 0 0 1
5.
Scrie i un program C/C++ care cite te de la tastatur o valoare natural nenul n (n10) i apoi n*n numere ntregi distincte, fiecare avnd cel mult 4 cifre, reprezentnd elementele unui tablou bidimensional cu n linii i n coloane. Programul determin cel mai mic i cel mai mare num r de pe diagonala principal , le interschimb , apoi afi eaz pe ecran matricea ob inut dup modificare. Fiecare linie a matricei se afi eaz pe cte o linie a ecranului, iar elementele unei linii sunt separate prin cte un spa iu. (10p.) 2 24 15 -8 se va afi a 73 24 15 -8 Exemplu: pentru n=4 i tabloul: 3 25 17 9 3 25 17 9 4 -2 73 10 4 -2 2 10 5 14 12 10 5 14 12 10
Varianta 82 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 082 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Folosind cifrele {1,2,3} se genereaz , n ordinea cresc toare a valorii, toate numerele pare formate din trei cifre distincte. Astfel se ob in, n ordine, numerele: 132, 312. Folosind aceea i metod , se genereaz numerele pare formate din patru cifre distincte din mul imea {1,2,3,4}. Care va fi al 5-lea num r generat ? (4p.) 1432 2134 2314 1423 b. c. d. a. Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului f, scrie i ce valoare are f(2). Dar f(123)? (6p.) int f(int x) { if(x==0)return 0; else if(x%2==0)return 1+f(x/10); else return 2+f(x/10); }
3.
Scrie i n C/C++ defini ia complet a subprogramului medie, care are doi parametri: - n, prin care prime te un num r natural (1 n 100) ; - v, prin care prime te un tablou unidimensional cu n elemente, fiecare element avnd cel mult patru cifre. Func ia returneaz media aritmetic a elementelor impare din tablou sau valoarea 0 dac , n tablou, nu exist elemente impare. (10p.) Fi ierul text NUMERE.IN con ine, pe mai multe linii, cel mult 30000 de numere naturale nenule mai mici sau egale cu 500, numerele de pe fiecare linie fiind desp r ite prin cte un spa iu. a) Scrie i programul C/C++ care afi eaz pe ecran, n ordine cresc toare, toate numerele care au ap rut o singur dat n fi ierul NUMERE.IN, desp r ite prin cte un spa iu. Exemplu: dac fi ierul NUMERE.IN con ine numerele scrise al turat, se vor 2 23 34 3 afi a valorile urm toare: 3 4 5 6 34 . (6p.) 8 9 9 23 6 8 9 2 b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit la punctul a) 4 5 23 9 (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 083 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele ntregi a i b memoreaz numere naturale. Care dintre (a+b)%2==1 expresiile C/C++ de mai jos este echivalent cu expresia al turat ? (4p.) a. (a%2==0) && (b%2==1)|| (a%2==1) && (b%2==0) b. (a%2!=0) && (b%2!=0) && (a%2==1) && (b%2==1) c. (a%2==1) || (b%2==1) || (a%2==0) && (b%2==0) d. (a%2==0) && (b%2==0) && (a%2==1) && (b%2==1) Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te x (num r natural, x>1) pseudocod. aux x S-a notat cu x%y restul mp r irii num rului natural x la ok1 1 ct timp x 10 execut num rul natural nenul y, iar cu [z] partea ntreag a dac x%10>[x/10]%10 atunci num rului real z. ok1 0 a) Scrie i ce se afi eaz la executarea algoritmului dac se cite te valoarea x=125. (6p.) x [x/10] b) Scrie i cea mai mare valoare cu exact 3 cifre care poate fi citit pentru x astfel nct s se afi eze mesajul nu. (4p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.) dac ok1=1 atunci scrie aux altfel scrie nu
Varianta 83 - informatica
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 083 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful orientat cu nodurile numerotate de la 1 la 5 i arcele (1,2), (1,4), (2,1), (2,5), (3,2), (4,3), (5,1), (5,4). Care este num rul minim de arce care poate fi ad ugat pentru ca toate nodurile s aib i gradul extern i gradul intern numere pare? (4p.) 3 d. 4
Subiectul I
2. a.
Se consider o coad n care au fost introduse, n aceast ordine, numerele 1, 2 i 3. Care dintre valorile din coad va fi eliminat prima? (4p.) 1 b. 2 c. 3 d. oricare dintre ele
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider 2,2,2,1,1. acestuia. un graf neorientat cu 5 noduri, n care nodurile au urm toarele grade: tiind c graful are dou componente conexe, scrie i matricea de adiacen a (6p.)
4.
Variabila cuv re ine un cuvnt format din cel mult 25 litere mici ale alfabetului englez. Scrie i o secven de program C/C++ care afi eaz pe ecran vocalele cuvntului, n ordinea apari iei lor n cuvnt. Exemplu: dac cuv re ine cuvntul examen se afi eaz eae (6p.) Scrie i un program C/C++ care cite te de la tastatur o valoare natural nenul n (n10) i apoi n*n numere ntregi distincte, fiecare avnd cel mult 4 cifre, reprezentnd elementele unui tablou bidimensional cu n linii i n coloane. Programul determin cel mai mic i cel mai mare num r de pe diagonala secundar , le interschimb , apoi afi eaz pe ecran matricea ob inut dup modificare. Fiecare linie a matricei se afi eaz pe cte o linie a ecranului, iar elementele unei linii sunt separate prin cte un spa iu. (10p.) 2 24 15 -8 se va afi a 2 24 15 17 Exemplu: pentru n=4 i tabloul: 3 25 17 9 3 25 -8 9 4 -2 73 10 4 -2 73 10 5 14 12 10 5 14 12 10
5.
Varianta 83 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 083 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Subprogramul cmmdc are doi parametri i returneaz cel mai mare divizor comun al valorilor celor doi parametri, iar subprogramul max are doi parametri i returneaz cea mai mare dintre valorile celor doi parametri. Care este rezultatul evaluarii expresiei: max(cmmdc(max(194,87),342),3)? (4p.) b. 194 c. 3 d. 2 a. 87 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului f, int f(int x) { if(x==0)return 0; scrie i ce valoare are f(2). Dar f(123)? else (6p.) if(x%2==0)return 3+f(x/10); else return 4+f(x/10); } 3. Scrie i n C/C++ defini ia complet a subprogramului medie, care are doi parametri: - n, prin care prime te un num r natural (1 n 100) ; -v, prin care prime te un tablou unidimensional cu n elemente, numere ntregi, fiecare avnd cel mult patru cifre. Func ia returneaz media aritmetic a elementelor pare din tablou sau valoarea 0 dac ,n tablou, nu exist elemente pare. (10p.) 4. Fi ierul text NUMERE.IN con ine, pe mai multe linii, cel mult 30000 de numere naturale nenule mai mici sau egale cu 500, numerele de pe fiecare linie fiind desp r ite prin cte un spa iu. a) Scrie i programul C/C++ care afi eaz pe ecran, n ordine descresc toare, desp r ite prin cte un spa iu, toate numerele care au ap rut exact o singur dat n fi ierul NUMERE.IN. Exemplu: dac fi ierul NUMERE.IN con ine numerele scrise al turat, se vor 2 23 34 3 afi a valorile urm toare: 34 6 5 4 3 (6p.) 8 9 9 23 6 8 9 2 b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit la punctul a) 4 5 23 9 (3 4 rnduri). (4p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 084 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag n memoreaz un num r natural cu exact 4 cifre. Care dintre expresiile C/C++ de mai jos este echivalent cu cea n/100%10%2==0 al turat ? (4p.) b. n%1000%2==0 a. n%100/10%2!=1 d. n/10%10!=1 c. n/100%2==0 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te n (num r natural, n>1) pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la ok 0 ct timp n>0 execut num rul natural nenul y, iar cu [z] partea ntreag a c n%10 num rului real z. dac c>5 i c%2=0 atunci a) Scrie i ce se afi eaz dac num rul citit este ok1 1 n=4576. (6p.) altfel b) ok1 0 Scrie i cea mai mare valoare cu exact 3 cifre, care poate fi citit pentru n astfel nct s se dac ok1=1 atunci afi eze, n aceast ordine, numerele 8 6. (4p.) scrie c, c) ok 1 Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) n [n/10] d) Scrie i n pseudocod un algoritm echivalent cu cel dat care s utilizeze o structur repetitiv de alt dac ok=0 atunci tip n locul structurii ct timp...execut . (6p.) scrie nu
Varianta 84 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 084 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful neorientat cu nodurile numerotate de la 1 la 6 i avnd muchiile [1,2], [1,4], [2,3], [3,5], [3,6], [4,5], [5,6]. Cte lan uri elementare distincte exist de la nodul 1 la nodul 6 n graful dat? Dou lan uri sunt distincte dac difer prin cel pu in o muchie. (4p.) 6 d. 0
Subiectul I
2. a.
Un arbore cu 9 noduri, numerotate de la 1 la 9, este memorat cu ajutorul vectorului de ta i t=(9,3,4,7,3,9,0,7,2). Num rul tuturor descenden ilor nodului 2 este: (4p.) 3 b. 1 c. 0 d. 2
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider variabila c, de tip char, care memoreaz o liter a alfabetului englez, diferit de z sau Z. Scrie i secven a de program C/C++ care afi eaz pe ecran litera care i urmeaz n alfabet. Exemplu: dac litera memorat este g se va afi a h. (6p.) Scrie i secven a de program C/C++ care struct elev { char nume[40]; afi eaz pe ecran numele, prenumele i char prenume[40]; media unui elev, re inute de variabila el, float mediabac; declarat al turat. (6p.) }el; Scrie i programul C/C++ care cite te de la tastatur un num r natural n (1n10), apoi n*n numere ntregi, mai mici dect 32000, reprezentnd elementele unui tablou bidimensional cu n linii i n coloane, i care determin i afi eaz pe ecran ultima cifr a produsului numerelor pare de pe diagonala principal a tabloului sau mesajul imposibil dac nu exist numere pare. (10p.)
4.
5.
Varianta 84 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 084 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Folosind cifrele {2,3,4} se genereaz , n ordinea cresc toare a valorii, toate numerele pare formate din trei cifre distincte. Astfel se ob in, n ordine, numerele: 234, 324, 342, 432. Folosind aceea i metod , se genereaz numerele pare formate din patru cifre distincte din mul imea {2,3,4,5}. Care va fi al doilea num r generat? (4p.) b. 3254 c. 5432 d. 2534 a. 2354
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului f, scrie i ce valoare are f(99). Dar f(0)? (6p.) int f(int x) { if(x==100)return 1; else return 1+f(x+1); }
3.
Scrie i programul C/C++ care cite te de la tastatur un num r natural n (1 n 100), un ir de cte n numere ntregi, cu cel mult 5 cifre fiecare, notat a1,a2,a3,an, apoi un al doilea ir de n numere ntregi, cu cel mult 5 cifre fiecare, notat b1,b2,b3,bn. Programul construie te n memorie i afi eaz pe ecran un ir c format din n numere calculate astfel: ci=ai+bi, pentru i=1,2,3,n. Numerele afi ate vor fi separate prin cte un spa iu. Exemplu: pentru n=4 i numerele 2,3,7,8 respectiv 43,3,1,8 se afi eaz 45 6 8 16. (10p.)
4.
Se consider subprogramul CMMMC care prime te prin cei doi parametri, x i y, dou numere naturale (1 x 10000, 1 y 10000) i returneaz cel mai mic multiplu comun al lor. a) Scrie i numai antetul subprogramului CMMMC. (4p.)
b) Fi ierul text NUMERE.IN con ine, pe fiecare linie, cte dou numere naturale nenule mai mici sau egale dect 10000, desp r ite printr-un spa iu. Scrie i un program C/C++ care, pentru fiecare linie k din fi ierul NUMERE.IN, cite te cele dou numere de pe aceast linie i scrie n fi ierul text NUMERE.OUT , tot pe linia k, cel mai mic multiplu comun al acestora, ca n exemplu. Se vor utiliza apeluri utile ale subprogramului CMMMC. (6p.) 12 14 84 Exemplu: dac fi ierul atunci fi ierul 11 12 132 NUMERE.IN are con inutul NUMERE.OUT va avea 4 8 8 al turat: urm torul con inut:
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 085 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabilele ntregi n i m memoreaz numere naturale nenule pare, iar n<m. Care dintre expresiile C/C++ de mai jos are valoarea egal cu num rul de valori impare din intervalul nchis [n,m] ? (4p.) b. m/2-n/2 c. (m-n)/2-1 d. m%2-n%2 a. (m-n)/2+1 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te n (num r natural, n>1) pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la ok 0 ct timp n>0 execut num rul natural nenul y, iar cu [z] partea ntreag a c n%10 num rului real z. dac c%2=1 atunci a) Scrie i ce se afi eaz dac num rul citit este ok1 1 n=9458. (6p.) altfel ok1 0 b) Scrie i cea mai mare valoare cu exact 3 cifre, care poate fi citit pentru n astfel nct s se afi eze, n aceast ordine, numerele 9 7. (4p.) c) d) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.) dac ok1=1 atunci scrie c, ok 1 n [n/10] dac ok=0 atunci scrie nu
Varianta 85 - informatica
Scrie i n pseudocod un algoritm echivalent celui dat n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv de alt tip. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 085 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful orientat cu vrfurile numerotate de la 1 la 7 i arcele (1,2), (1,7), (2,3), (3,2), (3,4), (4,3), (5,4), (5,6), (6,4), (7,6). Cte noduri cu gradul extern par exist n graful dat? (4p.) 3 2 4 0
b. d. a. BACALAUREAT 2009 - INFORMATIC , limbajul C/C++c. Subiectul I Specializarea Matematic -informatic 2. Un arbore cu 9 noduri, numerotate de la 1 la 9, este memorat cu ajutorul vectorului de ta i t=(9,3,4,7,3,9,0,7,2). Lungimea celui mai lung lan elementar care porne te din r d cin este: (4p.) a. 1 b. 5 c. 3 d. 4
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Scrie i secven a de program C/C++ care struct persoana cite te de la tastatur numele, prenumele i { char nume[40]; char prenume[40]; salariul unei persoane, memorate de variabila int salariu; p, declarat al turat. (6p.) }p; Se consider 1,2,1,1,1. acestuia. un graf neorientat cu 5 noduri, n care nodurile au urm toarele grade: tiind c graful are dou componente conexe, scrie i matricea de adiacen a (6p.)
4.
5.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1n10) i n2 numere ntregi mai mici dect 32000, reprezentnd elementele unui tablou bidimensional A cu n linii i n coloane i apoi n2 numere ntregi mai mici dect 32000 reprezentnd elementele unui tablou bidimensional B cu n linii i n coloane. Programul construie te n memorie i afi eaz pe ecran tabloul C, cu n linii i n coloane, construit dup regulile de mai jos, ca n exemplu: - elementele de deasupra diagonalei principale sunt comune cu ale matricei A, situate pe acealea i pozi ii - elementele de pe diagonala principal sunt egale cu cel mai mic dintre elementele situate pe acelea i pozi ii n matricele A i respectiv B - elementele situate sub diagonala principal sunt egale cu ale matricei B, situate pe acelea i pozi ii Fiecare linie a matricei se afi eaz pe cte o linie a ecranului, iar elementele de pe aceea i linie sunt separate prin cte un spa iu. (10p.) 1 2 3 4 i matricea B: 9 12 3 6 se ob ine 1 2 3 4 Exemplu: 5 6 7 8 8 2 6 5 matricea C: 8 2 7 8 pentru n=4 4 10 60 12 4 10 11 12 i matricea A: 9 15 11 12 1 8 7 5 0 9 5 3 0 9 5 3
Varianta 85 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 085 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Folosind cifrele {1,2,3} se genereaz , n ordinea cresc toare a valorii, toate numerele impare formate din trei cifre distincte. Astfel se ob in, n ordine, numerele: 123, 213, 231, 321. Folosind aceea i metod , se genereaz numerele impare formate din patru cifre distincte din mul imea {1,2,3,4}. Care va fi al 2-lea num r generat ? (4p.) b. 1243 c. 4321 d. 1234 a. 1423
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Pentru defini ia al turat a subprogramului f, int f(int x) { scrie i ce valoare are f(21). Dar f(30)? if(x==20)return 20; (6p.) else if(x%2==1) return 1+f(x-1); else return 2+f(x-1); } 3. Scrie i programul C/C++ care cite te de la tastatur un num r natural n (1 n 100), un ir de cte n numere ntregi, cu cel mult 5 cifre fiecare, notat a1,a2,a3,an, apoi un al doilea ir de n numere ntregi, cu cel mult 5 cifre fiecare, notat b1,b2,b3,bn. Programul construie te n memorie i afi eaz pe ecran un ir C format din n numere calculate astfel: ci=ai-bi, pentru i=1,2,3,n. Numerele afi ate sunt separate prin cte un spa iu. Exemplu: pentru n=4 i numerele 2,3,7,8 respectiv 43,3,1,8 se afi eaz : -41 0 6 0. 4. (10p.) Se consider subprogramul CMMDC care prime te prin cei doi parametri, x i y, dou numere naturale (1 x 10000, 1 y 10000) i returneaz cel mai mare divizor comun al lor. a) Scrie i numai antetul subprogramului CMMDC. (4p.)
b) Fi ierul text NUMERE.IN con ine, pe fiecare linie, cte dou numere naturale nenule mai mici sau egale dect 10000, desp r ite printr-un spa iu, reprezentnd numitorul i num r torul cte unei frac ii. Scrie i un program C/C++ care, pentru fiecare linie k din fi ierul NUMERE.IN, cite te numitorul i num r torul frac iei de pe aceast linie i scrie n fi ierul text NUMERE.OUT , tot pe linia k, numitorul i num r torul acestei frac ii, adus la forma ireductibil , ca n exemplu. Se vor utiliza apeluri apeluri utile ale subprogramului CMMDC. (6p.) 12 14 6 7 Exemplu: dac fi ierul atunci fi ierul 11 12 11 12 NUMERE.IN are con inutul NUMERE.OUT va avea 2 2 1 1 al turat: urm torul con inut: 4 8 1 2
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 086 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag n memoreaz un num r natural, cu cel pu in dou cifre. Care dintre instruc iunile C/C++ de mai jos determin nlocuirea cu 0 a ultimei cifre a num rului memorat n variabila n? (4p.) b. n=n/10; c. n=n-n%10; d. n=n-n/10; a. n=n*(n%10);
Varianta 86 - informatica
cite te n, k 2. Se consider algoritmul al turat, descris n pseudocod. (numere naturale nenule) S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar cu [z] partea ntreag a pentru i 1,n execut num rului real z. dac [i/k]=0 atunci scrie i Scrie i valorile care se vor afi a dac se citesc, n a) k k-1 ordine, numerele 7 i 5. (6p.) altfel b) Dac n=11, scrie i cea mai mic valoare care poate fi scrie i%k citit pentru k astfel nct, n urma execut rii algoritmului, s se afi eze, n ordine, toate numerele naturale din intervalul nchis [1,11]. (4p.) c) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura pentru...execut cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 086 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 1 0 0 0
Subiectul I
Care este suma gradelor grafului neorientat cu 4 noduri 0 1 1 numerotate de la 1 la 4, reprezentat prin matricea de 1 0 1 1 1 0 adiacen al turat ? 1 0 0 (4p.) BACALAUREAT 2009 - INFORMATIC , limbajul C/C++
Specializarea Matematic -informatic 4 10 b. a.
c.
d.
2. a.
Ce valoare are variabila s de tip ir de caractere dup executarea instruc iunilor de mai jos? strncpy(s,strstr( examen , am ),4); s[4]='\0'; (4p.) amen b. exam c. menn d. men
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Scrie i matricea de adiacen a arborelui cu 6 noduri, numerotate de la 1 la 6, definit prin urm torul vector "de ta i": (0, 1, 1, 1, 3, 3). (6p.) n secven a al turat , i, j, m i n sunt variabile for(i=1; i<=m; i++) ntregi iar T este o matrice format din m linii i n for(j=1; j<=n; j++) if ((i+j)%2==0) coloane numerotate de la 1 la m, respectiv de la 1 la T[i][j]=(-1)*(i+j); n. Ce valoare are elementul maxim al acestei else T[i][j]=i+j; matrice, n urma execut rii secven ei, dac m=3 i n=5? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1n10) apoi construie te n memorie o matrice cu 2*n linii i 2*n coloane, numerotate de la 1 la 2*n, astfel nct parcurgnd doar liniile impare ale matricei de sus n jos i fiecare linie impar de la stnga la dreapta se ob in n ordine strict cresc toare toate numerele impare cuprinse n intervalul [1,4*n2], iar parcurgnd doar liniile pare ale matricei de sus n jos i fiecare linie par de la dreapta la stnga se ob in n ordine strict cresc toare toate numerele pare cuprinse n intervalul [1,4*n2], ca n exemplu. Programul afi eaz pe ecran matricea ob inut , cte o linie a matricei pe 1 3 5 7 cte o linie a ecranului, elementele fiec rei linii fiind separate prin cte un 8 6 4 2 9 11 13 15 spa iu. Exemplu: pentru n=2 se ob ine matricea al turat . (10p.) 16 14 12 10
5.
Varianta 86 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 086 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. La examenul de bacalaureat, un elev prime te un test format dintr-un subiect de tip I, unul de tip II i unul de tip III. Stiind c pentru fiecare tip de subiect sunt elaborate exact 100 de variante, algoritmul de generare a tuturor posibilit ilor de a forma un test este similar cu algoritmul de generare a: (4p.) b. aranjamentelor a. elementelor produsului cartezian c. permut rilor d. submul imilor
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce se afi eaz la apelul f(4);? (6p.) void f(int n) { cout<<"*"; | printf("*"); if(n>2) { f(n-1); cout<<"#"; | printf("#"); } }
3.
Scrie i defini ia complet a subprogramului numar, cu doi parametri, care prime te prin intermediul parametrului n un num r natural format din cel mult 9 cifre, iar prin intermediul parametrului c o cifr nenul ; subprogramul returneaz num rul ob inut prin nlocuirea fiec rei apari ii a cifrei c n num rul n cu partea ntreag a valorii (c+1)/2. Dac c nu apare n n, subprogramul returneaz valoarea n. Exemplu: pentru n=1525735, c=5 valoarea returnat va fi 1323733. (10p.) Fi ierul text bac.txt con ine cel pu in dou i cel mult 1000 de numere naturale, distincte. Numerele sunt separate prin cte un spa iu i fiecare dintre ele are cel mult 9 cifre. a) Scrie i un program C/C++ care determin cele mai mici dou numere din fi ier, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al spa iului de memorie utilizat. Cele dou numere vor fi afi ate pe ecran, n ordine cresc toare, separate printr-un spa iu. (6p.) Exemplu: dac fi ierul con ine numerele: 512 6 860 3 12 300 se va afi a: 3 6 b) Descrie i succint, n limbaj natural, algoritmul utilizat, justificnd eficien a acestuia. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 087 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. a. c. Care dintre variantele de mai jos declar constanta x astfel nct aceasta s memoreze corect num rul real 3,14? (4p.) const int x=314/100; const char x=3.14; b. const unsigned int x=3.14; const float x=3.14; d.
Varianta 87 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. a) b) algoritmul al turat, descris n cite te a,b,c (numere naturale nenule) ct timp a b sau a c execut x a dac x>b atunci x b dac x>c atunci x c dac x a atunci a a-x dac x b atunci b b-x dac x c atunci c c-x
Scrie i num rul care se va afi a dac se citesc, n ordine, valorile 6, 4 i 10. (6p.) Scrie i cele mai mari trei numere naturale nenule, distincte, cu cel mult dou cifre fiecare, care pot fi citite pentru a, b respectiv c, astfel nct s se afi eze valoarea 7 la finalul execut rii algoritmului. (4p.) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.)
c) d)
Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura repetitiv ct timp...execut cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet riiscrie i Inov a rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 087 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 2 1 2 2 2 1 d. 6 3 4 5 6 5 6
Cte muchii are graful neorientat cu 6 noduri numerotate de la 1: 2: 1 la 6, reprezentat prin lista de adiacen e al turat ? 3: (4p.) 4: 5: BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ 6: Specializarea Matematic -informatic a. 2. 5 b. 4 c. 12
Subiectul I
Ce valoare are variabila s de tip ir de caractere dup executarea instruc iunilor de mai jos? strncpy(s,strstr("Informatica","form"),strlen("BAC08")); s[5]='\0'; (4p.) form InfoBAC b. d. forma Infor
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 0 1 0 3. Se consider un arbore cu 6 noduri, numerotate de la 1 la 6, 1 0 1 reprezentat prin matricea de adiacen dat al turat. Scrie i toate 0 1 0 nodurile care pot fi alese ca r d cin a arborelui astfel nct acesta 0 1 0 s aib un num r maxim de frunze. (6p.) 0 1 0 1 0 0 4.
0 1 0 0 0 0
0 1 0 0 0 0
1 0 0 0 0 0
n secven a al turat , i, j i n sunt variabile ntregi, iar for(i=1; i<=n; i++) T este o matrice p tratic format din n linii i n coloane for(j=1; j<=n; j++) if ((i*j)%2==0) numerotate de la 1 la n. Care este suma elementelor de T[i][j]=(i*j)-n; sub diagonala principal (excluznd elementele care se else T[i][j]=i+j; afl pe diagonala principal ), n urma execut rii secven ei, dac n=5? (6p.) Scrie i un program C/C++ care cite te de la tastatur un ir de cel mult 100 de caractere, care pot fi litere ale alfabetului englez, cifre, semne de punctua ie i spa ii, i transform irul citit nlocuind toate literele mici cu literele mari corespunz toare i toate literele mari cu literele mici corespunz toare. Programul va afi a pe o linie a ecranului irul rezultat n urma acestor nlocuiri, iar pe urm toarea linie a ecranului num rul de caractere care au r mas nemodificate. Exemplu: dac irul citit este: Ana-Maria are 3 frati. programul va afi a aNA-mARIA ARE 3 FRATI. 6 (10p.)
5.
Varianta 87 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 087 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Algoritmul de generare a tuturor numerelor de 3 cifre, formate numai cu cifre impare, este echivalent cu algoritmul de generare a: (4p.) b. combin rilor de 5 elemente luate cte 3 a. submul imilor unei mul imi cu 3 elemente d. produsului cartezian a 3 mul imi de cifre c. aranjamentelor de 5 elemente luate cte 3 impare
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce se afi eaz la apelul f(4);? (6p.) void f(int n) { if(n<8) { cout<<n; | printf( %d ,n); f(n+1); cout<<n; | printf( %d ,n); } }
3.
Scrie i defini ia complet a subprogramului numar, cu doi parametri, care prime te prin intermediul parametrilor a i b dou numere naturale, a fiind format din cel mult 9 cifre, iar b fiind un num r natural strict mai mic dect num rul de cifre ale lui a. Subprogramul nlocuie te cu 1 primele b cifre ale num rului a i returneaz valoarea astfel ob inut . Exemplu: pentru a=184465709 i b=5, valoarea returnat va fi 111115709 (10p.) Fi ierul text bac.txt con ine un ir de cel mult 2009 numere naturale nenule, cu cel mult 4 cifre fiecare, pe mai multe rnduri, numerele de pe acela i rnd fiind separate prin cte un spa iu. a) Scrie i un program C/C++ care cite te de la tastatur un num r natural k i afi eaz pe ecran cel mai mic num r din fi ierul bac.txt care este mai mare sau egal cu num rul natural k, precum i num rul de apari ii ale acestuia n fi ier, folosind o metod eficient din punctul de vedere al timpului de executare. Cele dou valori vor fi afi ate pe o linie a ecranului, separate printr-un spa iu. Dac n fi ier nu exist nici un num r mai mare sau egal cu k, se va afi a doar valoarea 0. (6p.) Exemplu: dac n fi ier avem numerele 31 2 63 71 8 63 5 281 i num rul citit este k=50, atunci pe ecran se vor afi a numerele: 63 2. b) Descrie i succint, n limbaj natural, algoritmul utilizat, justificnd eficien a acestuia. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 088 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. In secven ele C/C++ urm toare toate variabilele sunt de tip ntreg i memoreaz numere cu cel mult 3 cifre. Care dintre variantele de mai jos determin interschimbarea valorilor memorate de variabilele a i b? (4p.) aux=b; a=b; b=aux; a=a+b; b=a-b; a=a-b; b. a=b; b=a; a=a+b; b=a-b; a=b-a; d.
Varianta 88 - informatica
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te a (num r natural) p 1 b 0 ct timp a 0 execut c a%10 dac a%2=0 atunci b b+c*p altfel b b*10+c a [a/10] p p*10 scrie b
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar cu [z] partea ntreag a num rului real z. a) b) Scrie i num rul care se va afi a dac valoarea 123456. se cite te (6p.)
Scrie i o valoare cu exact 5 cifre care poate fi citit pentru variabila a astfel nct num rul afi at s fie format din toate cifrele lui a, scrise n ordine invers . (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp ... execut cu o structur repetitiv cu test final. (6p.)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 088 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
1: 2 6 8 Care este num rul de noduri de grad 1 ale grafului neorientat 2: 1 3 cu 8 noduri numerotate de la 1 la 8, reprezentat prin listele de 3: 2 4 7 adiacen al turate? 4: 3 5 5: 4 (4p.) BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ 6: 1 Specializarea Matematic -informatic 7: 3 8: 1 a. 2. 4
Subiectul I
a. b. c. d.
b. 8 c. 3 d. 6 struct elev{ Fie declar rile al turate. Dac variabila x retine char nume[30]; informa ii despre 30 de elevi, preciza i care este float media;}; varianta corect ce afi eaz numele i media elevului al 11-lea? (4p.) elev x[30]; cout<<x[10].nume<< <<x[10].media; | printf(%s %f, x[10].nume,x[10].media); cout<<x.nume<< <<x.media; | printf(%s %f, x.nume,x.media); cout<<x.nume[10]<< <<x.media; | printf(%s %f, x.nume[10],x.media); cout<<x[10]->nume<< << x[10]->media); | printf(%s %f, x[10]->nume,x[10]->media);
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 0 1 0 3. Se consider un arbore cu 6 noduri, numerotate de la 1 la 6, 1 0 1 reprezentat prin matricea de adiacen dat al turat. Scrie i toate 0 1 0 nodurile care pot fi alese ca r d cin a arborelui astfel nct acesta 0 1 0 s aib un num r minim de frunze. (6p.) 0 1 0 1 0 0 4.
0 1 0 0 0 0
0 1 0 0 0 0
1 0 0 0 0 0
n secven a al turat , i, j i n sunt variabile ntregi, iar for(i=1; i<=n; i++) T este o matrice p tratic format din n linii i n for(j=1; j<=n; j++) coloane, numerotate de la 1 la n. Care va fi suma if ((i*j)%2==0) T[i][j]=(i*j)-n; elementelor de pe diagonala secundar a matricei n else T[i][j]=i+j; urma execut rii secven ei, dac n=5? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1n20), elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100,100] i afi eaz pe ecran media aritmetic a elementelor strict pozitive ale matricei, care sunt situate deasupra diagonalei principale, ca n exemplu. Dac nu exist elemente strict pozitive situate deasupra diagonalei principale, programul va afi a mesajul NU EXISTA . Exemplu: pentru n=4 i matricea al turat se afi eaz valoarea -1 2 -4 5 0 6 3 1 2.75 (sunt luate n considerare doar elementele marcate). 2 4 2 0 (10p.) 3 -5 1 -3
5.
Varianta 88 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 088 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Ionel dore te s ofere cadouri membrilor familiei sale, format din cei doi p rin i i o sor . Decide s le ofere stilouri de diferite culori. La magazin exist stilouri de 5 culori diferite. Algoritmul de generare a tuturor posibilit ilor de a atribui cte un stilou fiec ruia dintre cei trei membri ai familiei, f r s se repete vreo culoare, este similar cu algoritmul de generare a (4p.) b. elementelor produsului cartezian a. aranjamentelor c. permut rilor d. submul imilor
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce valoare are f(1)? Dar f(4)? (6p.) 3. int f(int n) { if (n==0) return 1; else if (n==1) return 2; else return f(n-1)-f(n-2); }
Scrie i defini ia complet a subprogramului numar, cu patru parametri, care prime te prin intermediul parametrului n un num r natural format din cel mult 9 cifre, iar prin intermediul parametrilor c1 i c2 cte o cifr , cu proprietatea c1<c2; subprogramul furnizeaz prin intermediul celui de al patrulea parametru, x, o valoare egal cu suma cifrelor lui n care apar in intervalului nchis [c1,c2]. Exemplu: pentru n=123, c1=2 i c2=7, valoarea furnizat prin x va fi 5. (10p.) Fi ierul text bac.txt con ine cel mult 10000 de numere naturale din intervalul nchis [0, 999], aflate pe mai multe linii, numerele de pe aceea i linie fiind separate prin cte un spa iu. a) Scrie i un program C/C++ care determin i afi eaz pe ecran cel mai mic num r prim a cu proprietatea max a, unde max este cea mai mare valoare din fi ier. Se va utiliza un algoritm eficient din punct de vedere al spa iului de memorie utilizat. (6p.) Exemplu: dac fi ierul con ine numerele: 5 8 99 5 1 1 2 2 se va afi a 101. b) Descrie i succint, n limbaj natural, algoritmul utilizat, justificnd eficien a acestuia. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 089 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreg n memoreaz un num r natural format din exact dou cifre nenule. Care dintre urm toarele instruc iuni C/C++ determin memorarea n variabila ntreag t a num rului care are acelea i cifre ca i n, dar n ordine invers ? (4p.) b. t=n/10*10+n%10; a. t=n%10*10+n/10; d. t=n%10*10+t/10; c. t=n%10+n/10;
Varianta 89 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te n (num r natural) t n; r 0 ct timp t>0 execut dac (t%10)%2=1 atunci r r*10+1 altfel r r*10+t%10 t [t/10] n 0 ct timp r>0 execut n n*10+r%10 r [r/10] scrie n
S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y, iar cu [z] partea ntreag a num rului real z. a) Scrie i num rul care se va afi a dac se cite te num rul n=3072941. (6p.)
b) Scrie i un num r format din exact 5 cifre, ele fiind n ordine strict cresc toare, care poate fi citit astfel nct executarea algoritmului s determine afi area unui num r egal cu cel citit. (4p.) c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
d) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc fiecare structur ct timp execut cu cte o structur repetitiv cu test final.(6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 089 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Enumera i nodurile de grad 1 din graful neorientat cu 8 noduri 1: 3 4 5 6 2: 3 numerotate de la 1 la 8, reprezentat prin listele de adiacen 3: 1 2 7 al turate. 4: 1 (4p.) 5: 1 8 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++ Subiectul I 6: 1 Specializarea Matematic -informatic 7: 3 8: 5 a. 2. 2 3 4 5 6 b. 2 4 7 8 c. 2 4 6 d. 2 4 6 7 8 Ce valoare are variabila s de tip ir de caractere dup executarea instruc iunilor de mai jos? strncpy(s,strstr("informatica","form"),strlen("BAC009")); s[6]='\0'; (4p.) format b. informat c. inform d. informBAC
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Determina i ultima valoare (notat cu ?) din vectorului de ta i (0, 1, 1, 2, 3, 3, ?) astfel nct arborele cu 7 noduri, numerotate de la 1 la 7, descris de acest vector, s aib pe fiecare nivel n exact 2n noduri, nodul r d cin fiind pe nivelul n=0, i fiecare nod s aib cel mult doi descenden i. Scrie i matricea de adiacen a unui arbore astfel definit. (6p.) n secven a al turat , i, j i n sunt for(i=1; i<=n; i++) variabile ntregi iar T este o matrice for(j=1; j<=n; j++) p tratic format din n linii i n coloane if ((i*j)%2==0) T[i][j]=(i*j)/2; numerotate de la 1 la n. Care va fi suma else T[i][j]=i+j; elementelor de pe diagonala principal n urma execut rii secven ei, dac n=5? (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1n6) apoi construie te n memorie o matrice cu n linii i n coloane, astfel nct parcurgnd liniile matricei de sus n jos i de la stnga la dreapta se ob in, n prima linie primele n numere ale irului Fibonacci n ordine cresc toare, n linia a doua urm toarele n numere ale irului Fibonacci n ordine descresc toare, n linia a treia urm toarele n numere ale acestui ir n ordine cresc toare, i a a mai departe, ca n exemplu. Elementele irului Fibonacci se ob in astfel: primul element este 0, al doilea este 1, iar elementele urm toare se ob in nsumnd cele dou elemente care preced elementul curent. Astfel, primele 16 elemente ale acestui ir sunt: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610. 1 1 2 Programul afi eaz pe ecran matricea ob inut , cte o linie a 0 8 5 3 matricei pe cte o linie a ecranului, elementele fiec rei linii fiind 13 21 34 55 89 separate prin cte un spa iu. Exemplu: pentru n=4 se ob ine matricea al turat . (10p.) 610 377 233 144
4.
5.
Varianta 89 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 089 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. O clas format din 28 de elevi dore te s trimit la consf tuirea reprezentan ilor claselor colii o delega ie format din 3 elevi. Algoritmul de generare a tuturor posibilit ilor de a forma o delega ie este similar cu algoritmul de generare a: (4p.) b. aranjamentelor a. permut rilor d. submul imilor c. combin rilor
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. Ce valoare are f(0)? Dar f(4)? (6p.) long f(int n) { if (n==0) return 0; else return n*n+f(n-1); }
3.
Scrie i defini ia complet a subprogramului numar, cu trei parametri, care prime te prin intermediul parametrului n un num r natural format din cel mult 9 cifre, iar prin intermediul parametrilor c1 i c2 cte o cifr nenul . Subprogramul caut fiecare apari ie a cifrei c1 n n, i dac aceasta apare, o nlocuie te cu c2. Subprogramul furnizeaz tot prin n num rul astfel ob inut. Dac cifra c1 nu apare n n, atunci valoarea lui n r mne nemodificat . Exemplu: pentru n=149448, c1=4 i c2=2, valoarea furnizat prin n va fi 129228. (10p.) Fi ierul text bac.txt con ine pe mai multe rnduri cel mult 50000 de numere naturale din intervalul nchis [0, 99], numerele de pe acela i rnd fiind separate prin cte un spa iu. a) Scrie i un program C/C++ care afi eaz pe ecran, n ordine cresc toare, acele numere din fi ier care sunt mai mari dect un num r natural k, citit de la tastatur , utiliznd un algoritm eficient din punct de vedere al timpului de executare. Dac un num r care corespunde cerin ei apare de mai multe ori, se va afi a o singur dat . Numerele vor fi afi ate pe ecran separate prin cte un spa iu. (6p.) Exemplu: dac fi ierul con ine numerele: 15 36 33 36 1 12 1 24 2, iar pentru k se cite te valoarea 24, se vor afi a numerele 33 36. b) Descrie i succint, n limbaj natural, algoritmul utilizat, justificnd eficien a acestuia. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 090 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele instruc iuni C/C++ atribuie variabilei ntregi t valoarea -1 dac i numai dac variabilele ntregi a i b sunt nenule i au semne diferite? (4p.) b. if ((a>0)&&(b<0)) t=-1; a. if ((a>0)||(b<0)) t=-1; c. if (a*b<0) t=-1; d. if (a*b>0) t=-1;
Varianta 90 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y. a) Scrie i valorile care se vor afi a n urma execut rii algoritmului dac se citesc numerele a=105, b=118 i k=7. (6p.) cite te a, b, k (numere naturale) t a p 0 ct timp t b execut dac k=t%10 atunci scrie t p 1 t t+1 dac p=0 atunci scrie -1
b) Dac pentru k se cite te valoarea 7, iar pentru a valoarea 2009, scrie i cea mai mare valoare care se poate citi pentru variabila b, astfel nct num rul afi at s fie -1. (4p.) c) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
d) Scrie i n pseudocod un algoritm echivalent cu cel dat n care s se nlocuiasc structura ct timp...execut cu o structur repetitiv cu test final. (6p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 090 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Enumera i nodurile cu grad impar ale grafului neorientat cu 6 noduri numerotate de la 1 la 6 i muchiile [1,6], [2,1], [2,6], [3,2], [3,4], [3,6], [4,5], [4,6], [6,5]. (4p.) d. 1 3 5 6
Subiectul I
2.
Ce memoreaz variabila s, de tip ir de caractere, dup executarea instruc iunilor de mai jos? strncpy(s,"informatica",strlen("2008")); s[strlen("2008")]='\0'; strcat(s,"BAC"); (4p.) info b. infoBAC c. BACinfo d. InformaticaBAC
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 0 1 0 3. Se consider un arbore cu 6 noduri, numerotate de la 1 la 6, 1 0 1 reprezentat prin matricea de adiacen dat al turat. Scrie i toate 0 1 0 nodurile care pot fi alese ca r d cin a arborelui astfel nct acesta 0 1 0 s aib un num r par de frunze. 0 1 0 (6p.) 1 0 0 4. n secven a al turat , i, j i n sunt variabile for(i=1; i<=n; i++) ntregi iar T este o matrice p tratic format for(j=1; j<=n; j++) if ((i+j)%3==0) din n linii i n coloane numerotate de la 1 la T[i][j]=(i+j)/3; n. Care va fi suma valorilor de pe diagonala else T[i][j]=i-j; secundar a matricei n urma execut rii secven ei, dac n=5? (6p.)
0 1 0 0 0 0
0 1 0 0 0 0
1 0 0 0 0 0
5.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1n20), elementele unei matrice cu n linii i n coloane, numere ntregi din intervalul [-100, 100] i afi eaz pe ecran diferen a m1-m2, unde m1 este media aritmetic a elementelor strict pozitive ale matricei, situate deasupra diagonalei principale, iar m2 este media aritmetic a elementelor strict pozitive ale matricei, situate sub diagonala principal , ca n exemplu. Cele dou medii se consider egale cu 0 dac nu exist valori strict pozitive n zonele corespunz toare. Exemplu: pentru n=4 i matricea al turat se afi eaz valoarea 0.25 -1 2 -4 5 (m1=2.75, calculat din elementele aflate deasupra diagonalei 0 6 3 1 principale, marcate cu chenar, i m2=2.5, calculat din elementele 2 4 2 0 3 -5 1 -3 subliniate). (10p.)
Varianta 90 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 090 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. La un bal mascat, magazia colii pune la dispozi ia elevilor 10 pelerine, 10 m ti i 10 p l rii divers colorate. Algoritmul de generare a tuturor posibilit ilor de a ob ine un costum format dintr-o p l rie, o masc i o pelerin este similar cu algoritmul de generare a : (4p.) b. aranjamentelor a. elementelor produsului cartezian c. permut rilor d. submul imilor
Scrie i pe foaia de examen r spunsul la urm toarea ntrebare: 2. Se consider al turat. Ce f('a');? subprogramul f, definit se afi eaz la apelul (6p.) void f(char c) { if (c != 'e') { f(c+1); cout<<c; | } }
printf( %c ,c);
3.
Scrie i defini ia complet a subprogramului f, care prime te prin intermediul parametrului n un num r natural nenul (2 n 200), iar prin intermediul parametrului a un tablou unidimensional care con ine n valori ntregi, fiecare dintre aceste valori ntregi avnd cel mult patru cifre. Subprogramul returneaz valoarea 1 dac diferen a dintre elementul maxim i elementul minim din tablou este mai mare dect 1000, altfel valoarea returnat va fi 0. (10p.) Fi ierul text bac.txt con ine pe mai multe rnduri cel mult 50000 de numere naturale, numerele aflate pe acela i rnd fiind separate prin cte un spa iu. Fiecare num r are cel mult 4 cifre. a) Scrie i un program C/C++ care, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al spa iului de memorie folosit, determin num rul din fi ier care are cei mai mul i divizori. n cazul n care exist mai multe valori n fi ier care au num r maxim de divizori, programul va afi a cea mai mic dintre acestea. (6p.) Exemplu: dac fi ierul con ine valorile 23 12 100 36 atunci se va afi a 36, pentru c att 100 ct i 36 au num r maxim de divizori, dar 36 este cel mai mic. b) Descrie i succint, n limbaj natural, algoritmul utilizat, justificnd eficien a acestuia. (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 091 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. tiind c variabila ntreag nr memoreaz valoarea 5, stabili i ce mesaj se va afi a n urma execut rii secven ei urm toare. (4p.) //C //C++ if (nr<7) if (nr>3) if (nr<7) if (nr>3) printf(Bine); cout<<Bine; else printf(Foarte bine); else cout<<Foarte bine; else printf(Rau); else cout<<Rau; b. Foarte bine c. Rau d. Bine
Varianta 91 - informatica
a. BineRau
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. cite te z, x S-a notat cu [a] partea ntreag a num rului real a i cu |b| (numere ntregi nenule) valoarea absolut a num rului ntreg b. z |z| a) Scrie i valoarea care se va afi a pentru z=50 i x=1. x |x| repet (6p.) y x b) Scrie i n pseudocod un algoritm echivalent cu cel dat, x [(x+z/x)/2] n care s se nlocuiasc structura repet ...pn pn cnd x=y cnd cu o structur repetitiv cu test ini ial. (6p.) scrie x c) d) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Dac pentru z se cite te num rul 30, scrie i o valoare care, citit pentru x, determin ca atribuirea y x s se execute o singur dat . (4p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 091 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde i 40 de muchii. Suma gradelor tuturor (4p.) d. 20
100
BACALAUREAT 2009 limbajul numerotate C/C++ I 2. Un arbore cu r- INFORMATIC d cin are 11, noduri, de la 1 la 11, i este memoratSubiectul cu ajutorul Specializarea Matematic vectorului de ta i-informatic t=(2,5,5,3,0,2,4,6,6,2,3). Descenden ii direc i (fiii) ai nodului 2
sunt: a. 1, 6 i 10 b. 5 c. 6, 8 i 9 d. 3
(4p.)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider o stiv n care ini ial au fost introduse, n aceast ordine, valorile 1,2,3,4. Se noteaz cu PUSH(x) opera ia prin care se adaug valoarea x n stiv , i POP opera ia prin care se extrage un element din stiv . Presupunem c se execut urm toarele opera ii asupra stivei considerate: POP; POP; PUSH(4); PUSH(3); PUSH(5); POP; n urma execut rii lor a) care este elementul din vrful stivei? (3p.) b) care este suma elementelor aflate n stiv ? (3p.) Ce se va afi a n urma execut rii char c[]="abracadabra"; secven ei al turate de program, n care c[4]='i'; variabila c memoreaz un ir cu cel for(i=4;i>=0;i--) mult 20 de caractere, iar variabila i cout<<c[i]; | printf(%c,c[i]); este de tip ntreg? (6p.) Scrie i un program n limbajul C/C++ care cite te de la tastatur dou valori naturale n i m (1n50, 1m50) i apoi n*m valori 0 i 1 reprezentnd elementele unui tablou bidimensional cu n linii, numerotate de la 1 la n, i m coloane, numerotate de la 1 la m; programul determin i afi eaz pe ecran num rul de ordine al primei coloane care are un num r maxim de valori 1. (10p.) Exemplu: pentru pentru n=5 i m=4 i tabloul al turat, se va afi a 2.
4.
5.
Varianta 91 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 091 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se genereaz , utiliznd metoda bactracking, numerele cu exact 3 cifre distincte din mul imea {5,1,3}. Dac primele 3 numere generate sunt, n ordine, 513, 531, 153, care este urm torul num r generat? (4p.) b. 155 c. 315 d. 135 a. 351 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider subprogramul f, definit al turat. void f (int i) Ce se afi eaz la apelul f(20)? (6p.) {if(i!=0) { printf(%d,i);|cout<<i; f(i/2); printf(%d,i);|cout<<i; } } Subprogramul par prime te prin singurul s u parametru, n, un num r natural nenul cu cel mult 8 cifre i returneaz valoarea 1 dac n con ine cel pu in o cifr par , sau returneaz valoarea 0 n caz contrar. Exemplu: pentru n=723 subprogramul va returna valoarea 1. a) Scrie i numai antetul subprogramului par. (2p.)
3.
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n cu cel mult trei cifre, apoi un ir de n numere naturale, cu cel pu in dou i cel mult 8 cifre fiecare, i afi eaz pe ecran num rul de valori din irul citit care au numai cifra unit ilor par , celelalte cifre fiind impare. Se vor utiliza apeluri utile ale subprogramului par. Exemplu: dac n=4, iar irul citit este 7354, 123864, 51731, 570 se va afi a 2 (numerele (8p.) 7354 i 570 respect condi ia cerut ). 4. Fi ierul numere.in con ine cel mult 5000 de numere reale, cte unul pe fiecare linie. Se cere s se scrie un program care s citesc toate numerele din fi ier i s afi eze pe ecran num rul de ordine al primei, respectiv al ultimei linii pe care se afl cel mai mare num r din fi ier. Cele dou numere vor fi separate printr-un spa iu. Alege i o metod de rezolvare eficient din punct de vedere al spa iului de memorare i al timpului de executare. Exemplu: dac fi ierul are con inutul al turat, pe ecran se vor afi a numerele 2 6. 3.5 7 a) Descrie i succint, n limbaj natural, metoda de rezolvare aleas , explicnd n ce -4 const eficien a ei. (4p.) 7 b) Scrie i programul C/C++ corespunz tor metodei descrise. (6p.) 2 7 6.3 5
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 092 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Stabili i care dintre urm toarele expresii C/C++ are valoarea 1 dac i numai dac num rul ntreg x, nu apar ine intervalului A=(-10,-2)[50,100]? (4p.) a. (x<=-10) || (x<50 && x>=-2) || (x>100) b. (x<=-10) || (x<=50 && x>=-2) || (x>=100) c. (x<-10) || (x<50 && x>-2) || (x>100) d. (x<=-10) || (x<=50 || x>=-2) || (x>100) Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider pseudocod. algoritmul al turat, descris n cite te n (num r natural nenul) nr 0 y 0 pentru i 1,n execut repet cite te x (num r real) nr nr+1 pn cnd x>=1 i x<=10 y y+x scrie [y/n] scrie nr
Varianta 92 - informatica
S-a notat cu [x] partea ntreag a num rului real x. a) Scrie i ce se afi eaz dac se citesc, n aceast ordine, valorile: 5, 8, 12, 15, 10, 25, 9, 8, 30, 10. (6p.) Dac pentru n se cite te valoarea 3 scrie i un ir de date de intrare astfel nct ultima valoare care se afi eaz s fie 3. (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i un algoritm pseudocod echivalent cu cel dat n care structura repet ...pn cnd s fie nlocuit cu o structur repetitiv cu test ini ial. (6p.)
b)
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 092 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care dintre urm toarele arce apar ine grafului orientat cu 4 vrfuri, avnd gradele din tabelul al turat (x,yN)? (4p.) (1,4) d. (4,1) Subiectul I Variabila s este de tip ir de caractere, iar variabilele c1 i c2 sunt de tip char. Care expresie are valoarea 1 dac i numai dac irul de caractere s con ine caracterele memorate de variabilele c1 i c2? (6p.) strstr(s,c1+c2)!=0 strchr(strchr(s,c1),c2)!=0 b. d. strchr(s,c1)!=0 || strchr(s,c2)!=0 strchr(s,c1)*strchr(s,c2)!=0
b. a. (2,3) (1,2) BACALAUREAT 2009 - INFORMATIC , limbajul C/C++c. Specializarea Matematic -informatic 2.
a. c.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Scrie i vectorul de ta i corespunz tor arborelui cu 6 noduri, 1: 4,6 numerotate de la 1 la 6, dat prin lista al turat a 2: descenden ilor direc i (fiilor). (6p.) 3: 1,5 4: 5: 6: 2 Scrie i o expresie logic C/C++ care s struct punct { float x; float y; codifice condi ia ca variabila v din }; declara iile al turate s reprezinte segment { segmentul nul (segmentul care are struct struct punct origine; originea identic cu extremitatea). (4p.) struct punct extremitate; } v; Scrie i un program C/C++ care cite te de la tastatur numerele ntregi m i n (1m50, 1n50) i elementele unui tablou bidimensional cu m linii i n coloane, numere ntregi distincte de cel mult 4 cifre fiecare, i elimin din tablou, la nivelul memoriei, linia i coloana corespunz toare elementului de valoare minim . Programul va afi a tabloul ob inut pe ecran pe m-1 linii, elementele fiec rei linii fiind separate prin cte un spa iu. (10p.) Exemplu: pentru m=3 i n=4 i tabloul de mai jos Pe ecran se va afi a: 14 6 3 2 7 1 4 9 22 5 14 6 12 3 9 22 8 5
4.
5.
Varianta 92 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 092 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Avnd la dispozi ie cifrele 0, 1 i 2 se pot suma cifrelor egal cu 2. Astfel, primele 6 acela i algoritm, se genereaz numere cu cu 4. Care va fi al 7-lea num r din aceast b. 301 a. 130 genera, n ordine cresc toare, numere care au solu ii sunt 2, 11, 20, 101, 110, 200. Folosind cifrele 0, 1, 2 i 3 care au suma cifrelor egal generare? (4p.) c. 220 d. 103
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. void f(int x) 2. Se consider definit subprogramul f. { Ce se va afi a n urma apelului if (x<=10) f(14);? cout<<0<< ; | printf("%d ",0); (6p.) else { f(x-2); cout<<x<< ; | printf("%d ",x); } } 3. Subprogramul ordonare prime te prin parametrul x un tablou unidimensional cu cel mult 100 de elemente numere reale, iar prin parametrul n un num r ntreg ce reprezint num rul efectiv de elemente ale tabloului x. Subprogramul ordoneaz cresc tor elementele tabloului i furnizeaz , tot prin intermediul parametrului x, tabloul ordonat. a) Scrie i numai antetul acestui subprogram. (4p.) b) Scrie i un program C/C++ care cite te de la tastatur dou numere naturale, n i m (1n100 i mn), i apoi un ir de n numere reale distincte. Folosind apeluri utile ale subprogramului ordonare, programul afi eaz pe prima linie a ecranului cele mai mari m elemente din irul citit (n ordine cresc toare a valorilor lor), iar pe a doua linie de ecran, cele mai mici m elemente din ir (n ordine descresc toare a valorilor lor). Numerele afi ate pe aceea i linie vor fi separate prin cte un spa iu. (10p.) Exemplu : dac n=9, m=3, iar irul este (14.2, 60, -7.5, -22, 33.8, 80, 4, 10, 3) se va afi a pe ecran: 33.8 60 80 3 -7.5 -22 4. Scrie i un program C/C++ care creeaz fi ierul text SIR.TXT i scrie n el, n ordine alfabetic , toate irurile formate din dou caractere distincte, litere mari ale alfabetului englez. Fiecare ir va fi scris pe cte o linie a fi ierului. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 093 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabile ntregi x i y memoreaz cte un num r natural, cu x/10==y%10 y/10==x%10 exact dou cifre. Care este valoarea expresiei x-y tiind c fiecare dintre expresiile C/C++ al turate are valoarea 1? (4p.) x/10==x%10+1 b. 9 c. 1 d. 11 a. 0
Varianta 93 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat descris n pseudocod. a) b) c) Scrie i valoarea care se afi eaz numerele n=2 i m=11. dac cite te n,m (numere naturale, nm) se citesc (6p.) s 0 ct timp n<m execut Scrie i programul C/C++ corespunz tor algoritmului dat. s s+n (10p.) n n+3 dac n=m atunci scrie s+n altfel scrie 0
Dac pentru n se cite te valoarea 1 scrie i num rul de valori naturale nenule de exact o cifr , care pot fi citite pentru variabila m, astfel nct s se afi eze valoarea 0. (6p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, care s NU foloseasc structuri repetitive sau recursive. (4p.)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 093 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul minim de noduri ce trebuie eliminate din graful al turat astfel nct subgraful ob inut s nu fie conex? (4p.)
Subiectul I
d.
2.
n declararea al turat , cmpurile x i y ale nregistr rii pot struct punct memora coordonatele carteziene ale unui punct din planul xOy. { float x,y; Care dintre urm toarele expresii are valoarea 1 dac i numai dac punctul P este situat pe axa Ox ? (6p.) }P; P.x==0 b. P.y==0 c. P.x+P.y==0 d. P.x==P.y
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider arborele din figura al turat . a) Care este nodul care trebuie ales ca r d cin astfel nct aceasta s aib 4 descenden i direc i (fii)? (3p.) b) Care sunt cei patru fii ai nodului ales ca r d cin n acest caz? (3p.) 4. Se consider o list liniar simplu nl n uit asupra c reia se execut urm toarea prelucrare: ntre oricare dou elemente ce memoreaz valorile x i y,aflate pe pozi ii consecutive, se insereaz cel mai mare divizor comun al numerelor x i y. Dac lista con ine ini ial, n ordine, doar numerele 10,4,2,6 preciza i care este num rul maxim de elemente aflate pe pozi ii consecutive ce vor memora aceea i valoare, dup realizarea prelucr rii men ionate. (4p.) 5. Un ir de caractere s se nume te ablon pentru un alt ir de caractere x, dac este format din caractere din mul imea {*,?,#}, are aceea i lungime cu x i pe fiecare pozi ie din s n care apare * n x se g se te o vocal , pe fiecare pozi ie din s n care apare # n x se g se te o consoan i pe fiecare pozi ie din s n care apare ? putem avea orice caracter n x. Se consider vocal orice liter din mul imea {a,e,i,o,u}. Scrie i programul C/C++ care cite te de la tastatur dou iruri de caractere, de aceea i lungime, formate din cel mult 200 de litere mici ale alfabetului englez, i afi eaz pe ecran un ablon comun celor dou iruri citite, care con ine un num r minim de caractere ?. Exemplu: pentru irurile diamant i pierdut se afi eaz #**#??# (10p.)
Varianta 93 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 093 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. n cte dintre permut rile elementelor mul imii {I,N,F,O} vocala I apare pe prima pozi ie? (4p.) b. 24 c. 6 d. 12 a. 1 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Subprogramul este definit void f (int x,int y) f { if (x<y) al turat. {y=y-1; f(x,y);} Ce se afi eaz ca urmare a apelului f(1,3);? else cout<<x<<y; | printf(%d%d,x,y); (4p.) } 3. Scrie i programul C/C++ care cite te de la tastatur un num r natural n (1 n 99), impar, i construie te n memorie un tablou unidimensional A=(A1, A2,, An) cu elementele mul imii {1,2,...,n} astfel nct elementele de pe pozi ii impare formeaz irul cresc tor 1,2,...,[(n+1)/2], iar elementele de pe pozi ii pare irul descresc tor n,n-1,..., [(n+1)/2]+1. Exemplu: pentru n=11 se va construi tabloul A : Elementele tabloului se afi eaz pe ecran, separate prin cte un spa iu. (6p.)
4. a) Scrie i defini ia complet a subprogramului dcm, cu doi parametri, care: - prime te prin parametrii a i b dou valori naturale din intervalul [1,30000] - returneaz o valoare natural reprezentnd cel mai mare num r care este att divizor al lui a ct i divizor al lui b. Exemplu: dac a=100 i b=120, subprogramul returneaz valoarea 20. (6p.) b) Fi ierul text NUMERE.IN con ine pe prima linie un num r natural nenul n (1 n 100) i pe urm toarea linie n numere naturale din intervalul [1,30000], separate prin cte un spa iu. Scrie i un program C/C++ care cite te toate numerele din fi ierul NUMERE.IN i determin , folosind apeluri ale subprogramului cmmdc, cel mai mare divizor comun al celor n numere situate pe linia a doua n fi ier. Programul afi eaz pe ecran num rul cu proprietatea cerut . Exemplu: dac fi ierul NUMERE.IN are con inutul: 5 60 72 600 24 48 atunci se afi eaz valoarea 12. (10p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 094 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. y=1; 1. n secven a al turat de instruc iuni, variabilele i,j,k i if (k>0) y sunt de tip ntreg. Pentru care dintre urm toarele if (i!=j) seturi de valori ale variabilelor i,j i k variabila y va y=0; avea valoarea 1 n urma execut rii secven ei? (4p.) else y=2; b. k=10; i=5; j=6 a. k=0; i=5; j=5 c. k=10; i=5; j=5 d. y nu va avea valoarea 1 indiferent de valorile variabilelor i,j i k Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. cite te n 2. Se consider algoritmul al turat, descris n (num r natural nenul) pseudocod. n1 0 S-a notat cu x%y restul mp r irii num rului natural x la n2 0 num rul natural nenul y, iar cu [x/y] ctul mp r irii ntregi k1 0 a num rului natural x la num rul natural nenul y. ct timp n 0 execut dac (n%10)%2=0 atunci a) Scrie i ce va afi a algoritmul dac pentru n se n2 n2 * 10 + n%10 cite te valoarea 123611. (6p.) altfel b) Scrie i cte valori naturale distincte, formate din n1 n1 * 10 + n%10 patru cifre fiecare, pot fi citite pentru variabila n, k1 k1+1 astfel nct, pentru fiecare dintre acestea, valoarea afi at de algoritm s fie divizibil cu 10. (6p.) n [n/10] c) Scrie i n pseudocod un algoritm echivalent cu cel dat care s utilizeze o singur structur repetitiv . (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) p 1 pentru i 1,k1 execut p p * 10 x n2*p + n1
Varianta 94 - informatica
d)
Ministerul Educa iei, Cercet rii i Inov rii x scrie Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 094 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde 0 0 1 0 1 2 0 1 1 1 0
Care dintre nodurile grafului neorientat cu 5 noduri 0 1 1 1 0 1 numerotate de la 1 la 5, dat prin matricea de adiacen al turat , are gradul cel mai mare? (4p.) 1 1 0 0 0 1 0 1 1 BACALAUREAT 2009 - INFORMATIC , limbajul C/C++
Specializarea Matematic -informatic
Subiectul I
a. 2.
b.
c.
d.
n secven a al turat , i, j i n sunt variabile ntregi, iar a for(i=0; i<8; i++) for(j=0; j<8; j++) este o matrice format din 8 linii i 8 coloane, numerotate a[i][j] = (i+j)%8; de la 0 la 7. Care este suma elementelor de pe ultima linie a matricei, n urma execut rii acestei secven e? (4p.) 28 b. 84 c. 36 d. 21
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Un graf neorientat cu 5 noduri, numerotate de la 1 la 5, con ine urm toarele muchii: [1,2], [1,3], [2,3], [2,5], [3,4], [3,5], [4,5]. Elimina i din acest graf num rul necesar de muchii astfel nct graful par ial rezultat s fie arbore. Considernd c acest arbore are ca r d cin vrful 5, care este vectorul cu leg turi de tip tat corespunz tor ? (6p.) Un graf neorientat cu 5 noduri, numerotate de la 1 la 5, este 1: reprezentat prin listele de adiacen al turate. Transforma i acest 2: graf ntr-un graf orientat prin nlocuirea fiec rei muchii cu exact un 3: arc, astfel nct n graful orientat care rezult s existe cel pu in un 4: drum de la orice nod x pn la orice nod y, (x y). Scrie i 5: reprezentarea grafului orientat pe care l-a i construit, prin liste de adiacen . (6p.) 2, 1, 1, 3, 2, 3 3, 5 2, 4, 5 5 3, 4
4.
5.
Scrie i un program n limbajul C/C++ care cite te de la tastatur un singur ir format din cel mult 20 de caractere care reprezint numele i prenumele unei persoane. ntre nume i prenume se afl un num r oarecare de caractere spa iu (cel pu in unul). Att numele ct i prenumele sunt formate numai din litere ale alfabetului englez. Programul construie te n memorie i afi eaz pe ecran un al doilea ir de caractere, care s con in prenumele, urmat de exact un spa iu i apoi numele din irul citit ini ial. Exemplu: dac se cite te irul: Popescu Vasile se va construi i apoi se va afi a pe ecran irul Vasile Popescu (10p.)
Varianta 94 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 094 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un elev realizeaz un program care cite te o valoare natural pentru o variabil n i apoi afi eaz n fi ierul permut.txt, pe prima linie, valoarea lui n, apoi toate permut rile mul imii {1,2,...,n}, cte o permutare pe cte o linie a fi ierului. Rulnd programul pentru n=3, fi ierul va con ine cele 7 linii al turate. Dac va rula din nou programul i va introduce pentru variabila n valoarea 5, cte linii va con ine fi ierul? (4p.) b. 24 c. 121 d. 721 a. 25 3 3 3 2 2 1 1 2 1 3 1 3 2 1 2 1 3 2 3.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Func ia recursiv f este astfel definit nct f(1)=8, iar f(n+1)=2*f(n)-4 pentru orice n natural nenul. a) Ce valoare are f(5) ? (3p.) b) Care este cea mai mare valoare pe care o poate lua x astfel nct f(x) < 1000 ? (3p.) 3. Se consider func ia f care prime te prin intermediul parametrului n un num r natural nenul (2 n 200), prin intermediul parametrului a un tablou unidimensional care con ine n valori ntregi (fiecare dintre aceste valori ntregi avnd cel mult patru cifre), iar prin intermediul parametrilor p1 i p2 dou valori naturale reprezentnd dou pozi ii din tablou (0 p1 p2<n). Numerotarea pozi iilor din tablou ncepe de la 0. Subprogramul returneaz valoarea -1 dac cele mai multe valori din tabloul a, aflate ntre pozi iile p1 i p2 inclusiv, sunt strict negative, valoarea 0 dac cele mai multe valori din a, aflate ntre pozi iile p1 i p2 inclusiv, sunt nule, respectiv valoarea 1 dac cele mai multe valori din tabloul a aflate ntre pozi iile p1 i p2 inclusiv, sunt strict pozitive. a) Scrie i defini ia complet a func iei f. (5p.)
b) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (2 n 200), apoi valorile celor n componente ale unui tablou unidimensional. Valorile citite sunt numere ntregi de maximum patru cifre fiecare. Programul afi eaz pe ecran mesajul negative dac cele mai multe valori din tablou sunt strict negative, mesajul nule dac cele mai multe valori din tablou sunt egale cu 0, mesajul pozitive dac cele mai multe valori din tablou sunt strict pozitive sau mesajul nedecis n celelalte cazuri. Pentru a stabili care dintre mesaje urmeaz s fie afi at, programul va apela func ia f. (5p.) 4. Fi ierul text bac.txt con ine pe fiecare linie cte un num r ntreg format din cel mult patru cifre. Se tie c fi ierul con ine cel pu in un num r. Scrie i un program eficient att din punct de vedere al timpului de executare ct i din punct de vedere al spa iului de memorie utilizat, care cite te de la tastatur un num r real x, apoi determin i afi eaz acel num r din fi ierul bac.txt care are valoarea cea mai apropiat de valoarea lui x. Exemplu: dac fi ierul bac.txt are con inutul al turat, iar de la tastatur se 4 -5 cite te valoarea -3.85, programul va afi a valoarea -5. -6 a) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce -984 const eficien a ei (3 4 rnduri). (4p.) 1345 -1 b) Scrie i un program C/C++ care rezolv problema conform metodei descrise. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 095 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. n secven a al turat de instruc iuni, variabilele i, j, k, x i if (k>0) if (i!=j) x=0; y sunt de tip ntreg. Pentru care dintre urm toarele seturi else x=1; de valori ale variabilelor i, j i k variabilele x i y vor primi valori diferite ntre ele n urma execut rii acestei secven e? else x=2; (4p.) if (i!=j) if (k>0) y=0; else y=2; else y=1; b. k=0; i=5; j=6 a. x i y primesc aceea i valoare indiferent de valorile variabilelor i,j i k d. k=0; i=5; j=5 c. k=10; i=5; j=5 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. x 0 2. Se consider algoritmul al turat, descris n cite te n,k pseudocod. (numere naturale nenule) S-a notat cu a%b restul mp r irii num rului natural a la num rul natural nenul b, iar cu [a/b] ctul mp r irii ct timp n 0 execut ntregi a num rului natural a la num rul natural nenul b. dac n%10<k atunci a) Scrie i num rul care se va afi a dac se citesc pentru n valoarea 528791 i pentru k valoarea 6. (6p.) Dac pentru k se cite te valoarea 9 scrie i toate valorile formate din exact 5 cifre care se pot citi pentru variabila n, astfel nct rezultatul afi at s fie, de fiecare dat , 2008. (6p.) x n x*10 + n%10 [n/10]
Varianta 95 - informatica
b)
scrie x
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n dat nv care mntul Preuniversitar Scrie i n pseudocod un algoritm echivalent cu cel s utilizeze n locul structurii
(10p.)
ct timp...execut o structur repetitiv condi ionat posterior. Subiectul II (30 de puncte) - Varianta 095 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. 2.
(4p.)
Cte valori nule pot s apar ntr-un vector cu leg turi de tip tat asociat unui arbore cu r d cin care con ine 10 noduri? (4p.) niciuna b. exact una exact dou
Subiectul I
BACALAUREAT - INFORMATIC , limbajul C/C++ d. c. depinde 2009 de configura ia arborelui Specializarea Matematic -informatic
n secven a al turat , i, j i n sunt variabile ntregi, iar a for(i=0; i<n; i++) for(j=0; j<n; j++) este o matrice p tratic format din n linii i n coloane a[i][j] = (i+j)%n; numerotate de la 0 la n-1. Care este suma elementelor de pe diagonala secundar din matricea a, n urma execut rii acestei secven e, dac n=8? (4p.) 8 b. 64 c. 24 d. 56
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se d graful orientat cu 5 noduri, numerotate de la 1 la 5, definit 0 prin matricea de adiacen al turat . Determina i un drum de 0 lungime maxim de la nodul 1 la nodul 5 , care s fie alc tuit din 0 arce distincte dou cte dou . Scrie i lungimea drumului 0 determinat precum i arcele care l compun (lungimea unui drum 0 este egal cu num rul de arce care l compun). (6p.) 1 0 1 0 0 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0
4.
Scrie i listele de adiacen pentru un graf neorientat care are 8 noduri, numerotate de la 1 la 8, i care are urm toarele propriet i: - are trei componente conexe; - nu are noduri izolate; - are un num r maxim de muchii. (6p.) Scrie i un program n limbajul C/C++ care cite te de la tastatur un singur ir, format din cel mult 20 de caractere, care reprezint numele i prenumele unei persoane. ntre nume i prenume se afl un num r oarecare de caractere spa iu (cel pu in unul). Att numele, ct i prenumele, sunt formate numai din litere mici ale alfabetului englez. Programul construie te n memorie i afi eaz pe ecran un alt ir de caractere, care s con in ini iala prenumelui (prima liter a prenumelui), urmat de un caracter punct, de exact un spa iu i de numele din irul citit ini ial. Toate literele din irul afi at vor fi de asemenea litere mici. Exemplu: dac se cite te irul: popescu vasile se va construi i apoi se va afi a pe ecran irul v. popescu (10p.)
5.
Varianta 95 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 095 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un program cite te o valoare natural nenul pentru n i apoi genereaz i afi eaz , n ordine cresc toare lexicografic, toate combina iile formate din n cifre care apar in mul imii {0,1}. Astfel, pentru n=2, combina iile sunt afi ate n urm toarea ordine: 00, 01, 10, 11. Dac se ruleaz acest program i se cite te pentru n valoarea 6, imediat dup combina ia 011011 va fi afi at combina ia: (4p.) b. 011100 c. 011111 d. 100000 a. 100100
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. int f(int n) 2. Func ia f are defini ia al turat . { a) Ce valoare are f(10)? (3p.) if (n<=9) return 0; if (n%5==0) return 0; b) Ce valoare are f(29)? (3p.) return 1+f(n-3); } 3. Func ia f prime te prin intermediul parametrului n un num r natural nenul (2 n 200), iar prin intermediul parametrului a un tablou unidimensional care con ine n valori ntregi nenule (fiecare dintre aceste valori ntregi avnd cel mult patru cifre). Func ia returneaz valoarea -1 dac num rul de valori negative din tabloul a este strict mai mare dect num rul de valori pozitive din tablou, valoarea 0 dac num rul de valori negative din a este egal cu num rul de valori pozitive din tablou i valoarea 1 dac num rul de valori pozitive din tabloul a este strict mai mare dect num rul de valori negative din a. Scrie i defini ia complet a func iei f. (10p.) a) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul, S, avnd maximum 9 cifre, i printr-o metod eficient din punct de vedere al timpului de executare, determin i scrie n fi ierul rez.dat trei valori naturale a c ror sum este egal cu S, i al c ror produs este maxim. Cele trei valori vor fi scrise n ordine cresc toare pe prima linie a fi ierului rez.dat, separate prin cte un spa iu. Exemplu: dac se cite te valoarea 5, fi ierul rez.dat va avea o linie cu con inutul 1 2 2. (6p.) b) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.)
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 096 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. if (k>0) 1. n secven a al turat , variabilele i, j, k i y sunt de tip ntreg. if (i!=j) y=0; Pentru care dintre urm toarele seturi de valori ale variabilelor else y=1; i, j i k variabila y va avea valoarea 1 n urma execut rii else y=2; secven ei? (4p.) b. k=10; i=5; j=6 c. k=10; i=5; j=5 d. k=0; i=5; j=6 a. k=0; i=5; j=5 Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n cite te n (num r natural nenul) pentru i 1,n execut pseudocod. pentru j 1,n execut pentru k 1,n execut a) Dac se cite te pentru n valoarea 10, scrie i dac i<j<k atunci valorile care se afi eaz , n forma rezultat n dac i+j+k=n atunci (6p.) urma execut rii algoritmului, scrie i,' ',j,' ',k b) Scrie i o valoare format din exact dou cifre care, salt la rnd nou dac se cite te pentru n, determin ca printre tripletele de valori afi ate s existe unul alc tuit din trei numere consecutive. (6p.) c) d) Scrie i programul algoritmului dat. C/C++ corespunz tor (10p.)
Varianta 96 - informatica
Scrie i n pseudocod un algoritm echivalent cu cel dat care s utilizeze numai dou structuri repetitive. (4p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 096 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Care este num rul maxim de valori egale care pot s apar ntr-un vector cu leg turi de tip tat asociat unui arbore cu r d cin care con ine 10 noduri? (4p.) cel mult 2 b. 10 9
Subiectul I
BACALAUREAT - INFORMATIC , limbajul C/C++ d. c. nu pot s 2009 apar valori egale ntr-un vector Specializarea Matematic cu leg turi de tip-informatic tat
2.
n secven a al turat , i, j i n sunt variabile ntregi, iar a for(i=0; i<n; i++) for(j=0; j<n; j++) este o matrice p tratic format din n linii i n coloane, a[i][j] = (i+j)%n; numerotate de la 0 la n-1. Care este suma elementelor de pe diagonala principal din matricea a, n urma execut rii acestei secven e, dac n=8? (4p.)
24
a.
b.
64
c.
56
d.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se d graful orientat cu 5 noduri, numerotate de la 1 la 5, 0 definit prin matricea de adiacen al turat . Scrie i arcele 0 din care este alc tuit un drum de la nodul 1 la nodul 5, care 0 trece prin toate nodurile grafului. (6p.) 0 0 1 0 1 0 0 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0
4.
Scrie i listele de adiacen pentru un graf neorientat, care are 8 noduri, numerotate de la 1 la 8, i care are urm toarele propriet i: - nu este conex; - nu are noduri izolate; - are un num r minim de muchii. (6p.) Scrie i un program n limbajul C/C++ care cite te de la tastatur dou iruri, formate fiecare din cel mult 20 de caractere. Primul ir reprezint numele unei persoane, iar al doilea ir reprezint prenumele aceleia i persoane. Att numele ct i prenumele sunt formate numai din litere ale alfabetului englez i fiecare con ine cel pu in o consoan . Programul construie te n memorie i afi eaz pe ecran un al treilea ir de caractere, care con ine consoanele din prenumele citit dispuse n ordinea n care apar n prenume urmate de exact un spa iu i de numele citit. Exemplu: dac primul ir citit este Popescu, iar al doilea este Vasile se va construi i apoi se va afi a pe ecran irul Vsl Popescu (10p.)
5.
Varianta 96 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 096 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Un program cite te o valoare natural nenul pentru n i apoi genereaz i afi eaz , n ordine descresc toare lexicografic, toate combina iile de n cifre care apar in mul imii {0,1}. Astfel, pentru n=2, combina iile sunt afi ate n urm toarea ordine: 11, 10, 01, 00. Dac se ruleaz acest program i se cite te pentru n valoarea 8, imediat dup combina ia 10101000 va fi afi at combina ia: (4p.) b. 10100111 c. 10101001 d. 10100100 a. 01010111
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Func ia f are defini ia al turat . Scrie i 4 valori de int f(int n) apel pe care le poate avea n astfel nct, pentru {if (n<=9) return 0; if (n%4==0) return 0; cele 4 apeluri, corespunz toare acestor valori, s return 1+f(n-3); se ob in 4 valori, distincte dou cte dou . (6p.) } 3. Func ia verif prime te prin intermediul a trei parametri, nota i a, b i c, trei valori naturale nenule, fiecare de maximum patru cifre. Func ia returneaz valoarea 1 dac cele trei valori pot constitui laturile unui triunghi i valoarea 0 n caz contrar. a) Scrie i defini ia complet a func iei verif. (5p.)
b) Scrie i un program C/C++ care cite te de la tastatur ase valori naturale nenule, fiecare de maximum patru cifre, apoi verific , utiliznd apeluri utile ale func iei verif, dac primele trei numere citite pot constitui laturile unui triunghi i dac ultimele trei numere citite pot constitui laturile unui triunghi; n caz afirmativ, programul afi eaz pe ecran mesajul congruente dac cele dou triunghiuri sunt congruente sau mesajul necongruente dac cele dou triunghiuri nu sunt congruente; dac cel pu in unul dintre cele dou triplete de valori nu pot constitui laturile unui triunghi, programul va afi a pe ecran mesajul nu. (5p.) 4. Fi ierul text BAC.DAT con ine pe prima linie, separate printr-un spa iu, dou valori naturale n i m (2 n 1000, 2 m 1000), pe a doua linie n valori ntregi, apoi pe urm toarele m linii cte dou valori, fiecare dintre aceste perechi determinnd un interval nchis (prin interval nchis determinat de dou valori a i b se n elege intervalul [a,b], dac a b sau intervalul [b,a], dac b<a). Valorile de pe a doua i de pe urm toarele m linii sunt separate ntre ele prin cte un spa iu i au cel mult 4 cifre fiecare. Se cere determinarea i afi area pe ecran a num rului de intervale, dintre cele citite din fi ier, care con in toate valorile aflate pe a doua linie a fi ierului. Se va utiliza o metod eficient din punct de vedere al timpului de executare i al memoriei utilizate. Exemplu: dac fi ierul BAC.DAT are con inutul 10 4 8 3 -11 17 -8 3 14 5 0 -2 al turat, programul va afi a: 2 Explica ie: din cele patru intervale date pe liniile 3, 4, 5 -10 100 i 6, numai dou con in toate valorile de pe a doua -20 50 15 -80 linie a fi ierului i anume [-20,50] i [-11,20]. 20 -11 a) Descrie i succint, n limbaj natural, metoda de rezolvare folosit , explicnd n ce const eficien a ei (3 4 rnduri). (4p.) b) Scrie i un program C/C++ care s rezolve problema conform metodei descrise. (6p.)
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 097 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r x 1. Care dintre variabilele ntregi x, y i z vor avea la finalul z execut rii secven ei al turate de instruc iuni, aceea i valoare y ca nainte de executare? (4p.) z b. numai y i z c. numai x i y a. numai x i z spunsului corect. = y + z; = x z; = z; = x - y; d. x, y i z
Varianta 97 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat reprezentat n pseudocod. S-a notat cu x%y restul mp r irii num rului ntreg x la num rul ntreg nenul y. a) b) c) d) Scrie i ce valori se vor afi a dac se citesc, n ordine, valorile 123, 25, 218. (6p.) Scrie i un de set de date de intrare pentru care se vor afi a trei valori consecutive. (6p.) Scrie i n pseudocod un algoritm echivalent cu cel dat, care s nu utilizeze nicio structur repetitiv . (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) pentru i 1,3 execut cite te x (num r natural) s 0 pentru j 1,i execut s s + x % 10 scrie s
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 097 Pentru fiecare dintre itemii 1 r spunsului corect. 1. a. i 2 scrie i pe foaia de examen litera care corespunde
Se consider un graf neorientat 5 noduri i 3 muchii. Care este num rul maxim de noduri cu grad 1 care pot exista n graf? (6p.) 2 b. 3 c. 4 d. 5
BACALAUREAT 2009 - INFORMATIC limbajul I i 2. Se consider un arbore ,cu r d C/C++ cin memorat cu ajutorul vectoruluiSubiectul de ta Specializarea Matematic -informatic T=(2,0,1,1,1,2) . Stabili i care dintre nodurile arborelui sunt situate pe nivelul 3, dac
(4p.)
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider variabila s care memoreaz irul de caractere CARACATITA. Ce valoare va avea s dup executarea instruc iunii de mai jos? strcpy(s,strstr(s,"TI")); 4. Se consider o stiv , n care au fost introduse ini ial, n aceast ordine, primele trei numere impare 1, 3 i 5. Con inutul stivei este reprezentat n figura al turat . Not m cu PUSH x opera ia prin care se adaug informa ia x n vrful stivei i cu POP opera ia prin care se extrage elementul din vrful stivei. Asupra stivei se efectueaz , exact n aceast ordine, urm toarele patru opera ii: POP; PUSH 4; PUSH 6; POP. Reprezenta i, dup modelul din figura al turat , con inutul stivei dup fiecare opera ie. (4p.) Se consider un tablou bidimensional cu n linii i m coloane (1n50, 1m50) ce memoreaz numere ntregi cu cel mult dou cifre fiecare. Scrie i un program n limbajul C/C++ care cite te de la tastatur valorile n, m i elementele tabloului, i care inverseaz ordinea elementelor n cadrul fiec rei coloane, ca n exemplu. Programul va afi a pe ecran, pe n linii, matricea ob inut dup inversare, elementele fiec rei linii fiind separate prin cte un spa iu. (10p.) Pe ecran se va afi a: Exemplu: pentru n=4, m=3 i matricea: 3 4 5 1 7 3 7 8 9 4 5 6 4 5 6 7 8 9 1 7 3 3 4 5 (6p.)
5.
Varianta 97 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 097 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. int f(int x){ Subprogramul recursiv al turat este definit incomplet. if (...) Care dintre urm toarele expresii poate nlocui punctele return x%10 + x/10; de suspensie astfel nct, n urma apelului, else subprogramul f s returneze suma primelor dou cifre return f(x/10); ale num rului primit prin intermediul parametrului x? } Exemplu: n urma apelului f(2318) valoarea returnat (4p.) este 5. b. x<=99 c. x==99 d. x!=0 a. x<=100
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se genereaz , utiliznd metoda backtracking, cuvintele cu exact 3 litere din mul imea {a,x,c,f,g}. Dac primele patru cuvinte generate sunt, n ordine, aaa, aax, aac, aaf, scrie i ultimele trei cuvinte care ncep cu litera a, n ordinea n care vor fi generate. (6p.) Subprogramul Suma, cu trei parametri, prime te prin intermediul parametrilor x i y dou numere naturale de cel mult 4 cifre fiecare i furnizeaz , prin intermediul parametrului z, suma numerelor pare cuprinse ntre x i y inclusiv, sau valoarea 0 dac nu exist numere pare n acest interval. Exemplu: dac la apel sunt transmise valorile x=12 i y=23, atunci subprogramul Suma va returna, prin intermediul parametrului z, valoarea 102. Scrie i, n limbajul C/C++, defini ia complet a subprogramului Suma. (10p.) Pe prima linie a fi ierului text DATE.TXT se afl un num r natural n (0<n10000), iar pe a doua linie un ir de n numere naturale, dep r ite prin cte un spa iu, fiecare avnd cel mult 4 cifre. a) Scrie i un program C/C++ care cite te numerele din fi ier i afi eaz , pe ecran, valorile din ir, n ordinea cresc toare a cifrei unit ilor. Dac dou numere din ir au aceea i cifr a unit ilor nu conteaz care dintre ele va fi afi at primul. Realiza i un program eficient din punct de vedere al timpului de executare. (6p.) Exemplu: dac fi ierul DATE.TXT con ine pe ecran se va afi a: 500 491 32 422 213 26 328 7 32 491 26 328 213 500 422 b) Descrie i succint, n limbaj natural, metoda utilizat , justificnd eficien a acesteia. (4p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 098 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Variabila ntreag x memoreaz o valoare mai mare ca 1000, format doar din cifre distincte. Care dintre urm toarele instruc iuni C/C++ afi eaz o singur cifr ? (4p.) b. cout<<x/100; | printf("%d",x/100); a. cout<<x/1; | printf("%d",x/1); c. cout<<x%100; | printf("%d",x%100); d. cout<<x%10/1;| printf("%d",x%10/1);
Varianta 98 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat reprezentat n pseudocod. a) b) Scrie i ce valoare se va afi a pentru n=10. (6p.) cite te n dac n (num r ntreg)
n<0 atunci -n
Scrie i toate valorile care pot fi citite pentru n astfel nct s se afi eze 4. (6p.) Scrie i n pseudocod un algoritm echivalent cu cel dat care s nu utilizeze nicio structur repetitiv . (4p.)
c)
d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 098 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Fie graful orientat G cu 5 vrfuri, numerotate cu 1,2,3,4,5, i arcele (1,2), (1,3), (1,4), (2,3), (4,2), (4,5), (5,2), (2,4). Care dintre urm toarele vrfuri au gradul extern egal cu gradul intern? (4p.)
b. d. a. 2 i4 4 i5 1 i2 3 i 4Subiectul I BACALAUREAT 2009 - INFORMATIC , limbajul C/C++c. Specializarea -informatic 2. Ce se Matematic va afi a n urma execut rii secven e char a[10]="Examen"; de instruc iuni al turate, considernd c s n=strlen(a); este o variabil ir de caractere, iar n o strcpy(a+1,a+n-1); variabil de tip ntreg? (4p.) cout<<a;| printf("%s",a); a. En b. Een c. Exam d. Exn
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Scrie i vectorul de ta i al unui arbore cu r d cin , tiind c : nodurile arborelui sunt numerotate cu numerele naturale distincte 1,2,3,...; num rul nodurilor este 4 sau 6; nodul 1 este desemnat ca r d cin ; num rul nodurilor de tip frunz este egal cu jum tate din num rul total de noduri din arbore; num rul de nivele pe care sunt dispuse nodurile arborelui este egal cu num rul nodurilor de tip frunz . (6p.) Structura de date COLET permite re inerea a dou numere reale, reprezentnd valoarea exprimat n euro a unui colet po tal, respectiv greutatea exprimat n kilograme, i un ir de caractere reprezentnd numele ora ului expeditorului, format din cel mult 30 de caractere. Scrie i n limbajul C/C++ declararea structurii COLET i o secven de instruc iuni care permite citirea valorilor componentelor variabilei x de tipul COLET. Denumi i sugestiv componentele structurii. (6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n 50) i construie te n memorie un tablou bidimensional cu n linii i n coloane care s con in primele n2 numere naturale pare. Prima linie a tabloului va con ine, n ordine cresc toare, valorile 0, 2,.., 2n-2; a doua linie va con ine, n ordine, valorile 2n, 2n+2,.., 4n-2; a treia linie va con ine, n ordine, valorile 4n, 4n+2,.., 6n-2, iar ultima linie va con ine, n ordine, valorile 2n2-2n, 2n2-2n+2,.., 2n2-2. Programul afi eaz pe ecran matricea construit , cte o linie a matricei 0 2 4 pe cte o linie a ecranului, elementele de pe aceea i linie fiind desp r ite 6 8 10 12 14 16 prin cte un spa iu. Exemplu: pentru n=3 se va afi a matricea al turat . (10p.)
4.
5.
Varianta 98 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 098 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv int Min(int x){ int c; al turat, definit incomplet. if (x==0) return ...; Cu ce valoare trebuie nlocuite punctele de else { suspensie, pentru ca func ia s returneze c=Min(x/10); cifra minim a num rului natural nenul if (c < x%10) return c; transmis prin intermediul parametrului x? else return x%10; (4p.) } } b. 1 c. 9 d. 0 a. -1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Utiliznd metoda backtracking se genereaz toate submu imile nevide ale mul imii {3,6,2,5}. Primele ase submul imi generate sunt, n ordine: {3}, {3,6}, {3,6,2}, {3,6,2,5}, {3,6,5}, {3,2}. Care sunt, n ordinea ob inerii, ultimele trei submul imi, generate dup aceast regul ? (6p.) Scrie i n limbajul C/C++ defini ia complet a subprogramului numar, cu exact doi parametri, care prime te prin intermediul parametrului x un num r natural nenul de cel mult dou cifre, i prin intermediul parametrului y un num r natural nenul de cel mult 9 cifre. Subprogramul returneaz cel mai mare num r natural z pentru care exist un num r natural k astfel nct z=xk i z y. Exemplu: pentru y=18 i x=2 subprogramul va returna valoarea 16(=24 18). (10p.) Pe prima linie a fi ierului text DATE.TXT se afl un ir de cel mult 10000 de numere naturale, desp r ite prin cte un spa iu, fiecare avnd exact o cifr . a) Scrie i un program C/C++ care cite te numerele din fi ier i le scrie n fi ierul text OUT.TXT, pe o singur linie, n ordine cresc toare a valorilor lor, separate prin cte un spa iu. Se va utiliza un algoritm eficient din punct de vedere al timpului de executare. Exemplu: dac din fi ierul DATE.TXT se cite te irul: 2 4 3 2 7 4 3 7 2 7 7 2 1 9 1 1 2 3 fi ierul OUT.TXT va con ine 1 1 1 2 2 2 2 2 3 3 3 4 4 7 7 7 7 9 (6p.) b) Explica i n limbaj natural metoda utilizat , justificnd eficien a acesteia. (4p.)
3.
4.
Subiectul III
Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 099 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Care dintre urm toarele instruc iuni C/C++ este echivalent cu x =(x+y+z)/2; cea al turat , tiind c variabilele x, y i z sunt reale? (4p.) a. x = x/4/2+ y/4/2 + z/4/2; b. x = x + y/2 + z/2; c. x = x + y + z/2; d. x = x/1/2+ y/1/2 + z/1/2;
Varianta 99 - informatica
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y. a) b) c) d) Scrie i ce se va afi a pentru x=8. (6p.) cite te x dac x (num r ntreg)
x<0 atunci -x
Scrie i toate numerele naturale, de cte o singur cifr , care, citite pentru x, determin afi area valorii 4. (6p.) Scrie i n pseudocod un algoritm echivalent cu cel dat care s nu utilizeze nicio structur repetitiv . (4p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 099 Pentru fiecare dintre itemii 1 r spunsului corect. i 2 scrie i pe foaia de examen litera care corespunde
1. BACALAUREAT Consider m un arbore cu r d ,cin , n C/C++ care fiecare nod are cel mult doi descenden i iI x un 2009 - INFORMATIC limbajul Subiectul Specializarea Matematic -informatic num r natural (x>2) . tiind c r d cina se afl pe nivelul 1, atunci num rul maxim de noduri de pe nivelul x este: (4p.) a. 2. a. c. 2x b. 2x-1 c. 2x+1 d. 2x/2 Consider m variabila x care memoreaz irul de caractere ABAC. Care dintre urm toarele instruc iuni conduc la afi area caracterului B? (4p.) cout<<x[strlen(x)-3]; | printf("%c",x[strlen(x)-3]); cout<<x[2]; | printf("%c",x[2]); d. b. cout<<x[strlen(x)-1]; | printf("%c",x[strlen(x)-1]); cout<<x[strlen(x)]; | printf("%c",x[strlen(x)]);
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. 4. Consider m un graf neorientat cu 5 noduri i 3 muchii format din dou componente conexe. tiind c doar patru dintre noduri au gradul 1, scrie i matricea de adiacen a grafului. (6p.) Se consider o coad , n care au fost introduse ini ial, n aceast ordine, primele trei numere impare 1, 3 i 5. Con inutul cozii este reprezentat n figura al turat . Not m cu AD X opera ia prin care se adaug informa ia X n coad i cu EL opera ia prin care se elimin un element din coad . Asupra cozii se efectueaz , exact n aceast ordine, opera iile EL; AD 4; AD 6. Reprezenta i, dup modelul din figura al turat , con inutul cozii dup fiecare opera ie.(6p.) Scrie i un program C/C++ care cite te de la tastatur un num r natural nenul n (n 50) i construie te n memorie un tablou bidimensional cu n linii i n coloane care s con in primele n numere naturale nenule. Prima linie a tabloului va con ine, n aceast ordine, valorile 1,2,...,n; a doua linie va con ine, n ordine, valorile 2,2,3,...,n; a treia linie va con ine, n ordine, valorile 3,3,3,4,...,n, iar ultima linie va con ine valorile n, n,..., n. Programul afi eaz pe ecran matricea construit , cte o linie a matricei 1 2 3 4 5 pe cte o linie a ecranului, elementele fiec rei linii fiind desp r ite prin 2 2 3 4 5 3 3 3 4 5 cte un spa iu. Exemplu: pentru n=5 se va afi a matricea al turat . (10p.) 4 4 4 4 5 5 5 5 5 5
5.
Varianta 99 - informatica
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul III (30 de puncte) - Varianta 099 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Se consider subprogramul recursiv al turat, S, void S(int x) { cout<<'*'; definit incomplet. if (...) { Cu ce expresie pot fi nlocuite punctele de cout<<'*'; suspensie astfel nct, n urma apelului S(2), s se S(x-1); afi eze 3 caractere * ? (4p.) } } b. x>2 c. x>=3 d. x>0 a. x>1
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se utilizeaz metoda backtracking pentru a genera toate cuvintele formate din dou litere distincte din mu imea {w,x,z,y} astfel nct niciun cuvnt s nu nceap cu litera x i niciun cuvnt s nu con in litera w lng litera z. Cuvintele vor fi generate n ordinea wx, wy, zx, zy, yw, yx, yz. Folosind aceea i metod se genereaz toate cuvintele de dou litere distincte din mul imea {w,x,z,y,t} astfel nct niciun cuvnt s nu nceap cu litera x i niciun cuvnt s nu con in litera w lng litera z. Care sunt a treia i a patra solu ie generat ? (6p.) Subprogramul Nr are un singur parametru, k, prin intermediul c ruia prime te un num r natural de cel pu in 3 cifre i cel mult 9 cifre, cu toate cifrele nenule. Subprogramul furnizeaz tot prin intermediul parametrului k, valoarea ob inut prin eliminarea primei cifre a num rului transmis la apel. Exemplu: dac subprogramul prime te prin intermediul parametrului k valoarea 12438, atunci n urma apelului subprogramului Nr, k va primi valoarea 2438. Scrie i, n limbajul C/C++, defini ia complet a subprogramului Nr. (10p.) Pe prima linie a fi ierului text DATE.TXT se afl un num r natural nenul n (n1000), iar pe a doua linie un ir de n numere ntregi nenule, dep r ite prin cte un spa iu, fiecare avnd cel mult 9 cifre. a) Scrie i un program C/C++ care cite te numerele din fi ier i ordoneaz cresc tor doar numerele pozitive din ir, f r a modifica pozi iile numerelor negative. Programul va afi a, pe ecran, pe o singur linie, irul ob inut dup ordonare, numerele fiind desp r ite prin cte un spa iu. n locul fiec rui num r negativ din irul citit se va afi a valoarea 0. Realiza i un program eficient din punct de vedere al spa iului de memorie folosit. (6p.) Exemplu: dac fi ierul DATE.TXT con ine: pe ecran se va afi a: 23 0 32 0 51 213 0 7 32 -491 23 -328 213 51 -4 b) Descrie i succint, n limbaj natural, metoda utilizat , justificnd eficien a acesteia. (4p.)
3.
4.
Subiectul III
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolv rile cerute, identificatorii utiliza i trebuie s respecte preciz rile din enun (bold), iar n lipsa unor preciz ri explicite, nota iile trebuie s corespund cu semnifica iile asociate acestora (eventual n form prescurtat ). Subiectul I (30 de puncte) - Varianta 100 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. tiind c ini ial variabilele ntregi x, y i z au valorile x=1, y=2 respectiv z=3, n ce ordine trebuie scrise atribuirile urm toare astfel nct, n final, expresia x+y+z s aib valoarea maxim ? (4p.) I) x=x+y-z; II) y=x-y+z; III) z=z-x+y; II I b. I II III c. III I II d. I III
cite te a
a. III
II
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 2. Se consider algoritmul al turat, descris n pseudocod. S-a notat cu x%y restul mp r irii num rului natural x la num rul natural nenul y i cu [z] partea ntreag a num rului real z. a) b) Scrie i care este valoarea afi at n urma execut rii algoritmului dac se cite te num rul 199. (6p.) Scrie i cel mai mic i cel mai mare num r, fiecare avnd exact 3 cifre, care pot fi citite astfel nct, n ambele cazuri, s se afi eze valoarea 7. (6p.) Scrie i programul C/C++ corespunz tor algoritmului dat. (10p.) Scrie i n pseudocod un algoritm, echivalent cu cel dat, care s utilizeze cel mult o singur structur repetitiv . (4p.) (num r natural, a<109) repet b0 ct timp a 0 execut bb+a%10 a[a/10] ab pn cnd a<10 scrie b
c) d)
Ministerul Educa iei, Cercet rii i Inov rii Centrul Na ional pentru Curriculum i Evaluare n nv mntul Preuniversitar
Subiectul II (30 de puncte) - Varianta 100 Pentru fiecare dintre itemii 1 r spunsului corect. 1. i 2 scrie i pe foaia de examen litera care corespunde
Se consider graful neorientat cu 5 noduri a c rui matrice de adiacen are toate elementele 1, cu excep ia celor de pe diagonala principal , care sunt nule. Care este num rul minim de muchii care pot fi eliminate astfel nct graful par ial ob inut s fie format din 3 componente conexe? (4p.) 6 d. 7
Subiectul I
2.
Se consider lista simplu nl n uit memorat static, n tabloul de mai jos, n care fiec rui nod al listei i corespunde cte o coloan a tabloului: pe prima linie se memoreaz informa ia din nodul respectiv, iar pe a doua linie se memoreaz indicele coloanei din tablou la care se afl nodul urm tor din list , sau -1 dac nu exist un nod urm tor. Ce informa ii se afi eaz la parcurgerea nodurilor n ordinea n care apar n list , dac primul nod este memorat n coloana 1? (4p.) 1,3,5,7 b. 1,3,2,5,7 c. 1,5,7 d. 1,4,5,3,7
a.
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. 3. Se consider arborele cu 6 noduri, numerotate de la 1 la 6, cu muchiile [2,1], [2,4], [4,5], [6,2], [6,3]. Scrie i toate nodurile desemnate ca r d cin astfel nct fiecare arbore cu r dacin ob inut s aib exact 3 frunze. (6p.) Se consider declararea char e[20]=51+73; Care este irul memorat de variabila e dup executarea instruc iunii de mai jos? strcpy(e,e+strlen(e)-1); 5. (6p.)
4.
Scrie i un program C/C++ care cite te de la tastatur un num r natural n (1 n 100) i apoi elementele unui tablou bidimensional cu n linii i n coloane, care memoreaz numere naturale cu cel mult 9 cifre fiecare; programul afi eaz pe ecran acele valori din tablou care sunt strict mai mici dect toate elementele cu care se nvecineaz direct (aflate pe aceea i linie dar pe o coloan al turat sau pe aceea i coloan dar pe o linie al turat ), ca n exemplu. Numerele afi ate vor fi separate prin cte un spa iu. Exemplu: pentru n=4 i tabloul al turat se afi eaz numerele: 2 0 (2 se 5 4 7 9 nvecineaz direct cu 4, 3, 6 i 9, i este mai mic dect acestea, iar 0 se 6 2 3 4 0 9 8 5 nvecineaz direct cu 6, 9 i 1 i este mai mic dect acestea). (10p.)
1 3 8 6
Subiectul III (30 de puncte) - Varianta 100 Pentru itemul 1, scrie i pe foaia de examen litera corespunz toare r spunsului corect. 1. Aplicnd metoda backtracking pentru a genera toate permut rile celor n elemente ale unei mul imi, o solu ie se memoreaz sub forma unui tablou unidimensional x1,x2,,xn. Dac sunt deja generate valori pentru componentele x1,x2,,xk-1, iar pentru componenta curent , xk (1<k<n), a fost g sit o valoare convenabil , atunci se ncearc alegerea (4p.) a. unei noi valori pentru componenta xk-1 b. unei valori pentru componenta xk+1 d. unei noi valori pentru componenta x1 c. unei noi valori pentru componenta xk
Scrie i pe foaia de examen r spunsul pentru fiecare dintre cerin ele urm toare. Ce afi eaz subprogramul F, descris void F(int x) 2. al turat, la apelul F(5);? (6p.) { cout<<x; | printf(%d,x); if(x>=3) F(x-2); } 3. Scrie i defini ia complet a subprogramului divizor, cu trei parametri, prin care prime te 3 numere naturale nenule cu cel mult 9 cifre fiecare i returneaz num rul divizorilor comuni tuturor celor 3 numere. Exemplu: dac numerele primite ca parametri sunt 24, 20 i 12, subprogramul returneaz valoarea 3 (divizorii comuni sunt 1, 2 i 4). (10p.) Fi ierul BAC.TXT con ine 10000 de numere naturale (dintre care cel pu in dou impare) cu cel mult 9 cifre fiecare. Numerele sunt separate prin cte un spa iu. a) Scrie i un program C/C++ care, utiliznd un algoritm eficient din punct de vedere al spa iului de memorare i al timpului de executare, determin i afi eaz pe ecran penultimul num r impar din fi ier precum i num rul de ordine al acestuia. (6p.) Exemplu: dac fi ierul con ine valorile al turate, se vor afi a numerele 49 9998 (penultimul num r impar este 49 i are num rul de ordine 9998. b) Descrie i n limbaj natural metoda utilizat i explica i n ce const eficien a ei. (4p.)
4.
Subiectul III