Sunteți pe pagina 1din 3

Ministerul Educaiei, Cercetrii, Tineretului i Sportului Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat 2011 Proba E. d) Proba scris la INFORMATIC Limbajul C/C++ Varianta 3
Filiera teoretic, profilul real, specializrile: matematic informatic matematic informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic informatic Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. n rezolvrile cerute, identificatorii utilizai trebuie s respecte precizrile din enun (bold), iar n lipsa unor precizri explicite, notaiile trebuie s corespund cu semnificaiile asociate acestora (eventual n form prescurtat).

SUBIECTUL I (30 de puncte) Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Expresia C/C++ !(-20>=x) && (x<=-10) || (x>=-5) && !(x>5) are valoarea 1 dac i numai dac valoarea memorat de variabila real x aparine reuniunii de intervale: (4p.) b. [-20,-10] (-5,5) d. (-20,-10] [-5,5] (-20,-10) (-5,5)

a. (-,-10] [5, ) c.

2. Se consider algoritmul alturat, descris n pseudocod. S-a notat cu x%y restul mpririi numrului natural x la numrul natural nenul y i cu [z] partea ntreag a numrului real z. a. Scriei numrul care se afieaz n urma executrii algoritmului dac pentru variabila n se citete valoarea 1034, iar pentru variabila m valoarea 1234. (6p.) b. Scriei toate perechile distincte de valori naturale, de cte dou cifre fiecare, valori care pot fi citite pentru variabilele n i m astfel nct, n urma executrii algoritmului, pentru fiecare dintre acestea, numrul afiat s fie 86. (6p.)

citete n,m (numere naturale) dac n<m atunci x n n m m x p 1 ct timp m>0 execut c m%10 m [m/10] n n-p*c p p*10 scrie n

c. Scriei n pseudocod un algoritm care s nu foloseasc structuri repetitive i care s fie echivalent cu cel dat. (4p.) d. Scriei programul C/C++ corespunztor algoritmului dat. (10p.)

Prob scris la Informatic Limbajul C/C++ 1

Varianta 3

Filiera teoretic, profilul real, specializrile matematic informatic, matematic informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic informatic

Ministerul Educaiei, Cercetrii, Tineretului i Sportului Centrul Naional de Evaluare i Examinare

SUBIECTUL al II-lea (30 de puncte) Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider graful orientat cu 6 vrfuri, numerotate de la 1 la 6, reprezentat prin listele de adiacen alturate. Dou drumuri sunt distincte dac difer prin cel puin un arc. Numrul de drumuri elementare distincte de la vrful 2 la vrful 3 este: (4p.) 0 b. 1 c. 2 d. 1: 2: 3: 4: 5: 6: 3 3 1, 5, 6 list vid 3 list vid 4, 5

a. 2. a.

Frunzele arborelui cu rdcin, avnd 8 noduri, numerotate de la 1 la 8, reprezentat prin vectorul de tai (6,6,5,0,6,4,4,7) sunt: (4p.) 1,2,3,8 b. 1,2,8 c. 3,7 d. 4,6,7

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 3. Structura cu numele CARTE permite memorarea unui numr real, reprezentnd valoarea exprimat n euro a unei cri, a unui numr ntreg, reprezentnd numrul de pagini ale crii, i a unui ir de caractere reprezentnd titlul crii, format din cel mult 50 de caractere. Scriei n limbajul C/C++ o definiie a structurii menionate i declarai o variabil x de acest tip. Denumii sugestiv cmpurile acestei structuri. (6p.) n secvena de program alturat variabila a memoreaz un ir cu cel mult 100 de caractere, iar variabilele i i k sunt de tip ntreg. Scriei irul afiat pe ecran n urma executrii secvenei. (6p.) k=a-A; strcpy(a,bacalaureat); for(i=0;i<strlen(a);i++) if(strchr(aeiou,a[i])!=NULL) a[i]=a[i]-k; cout<<a; | printf(%s,a);

4.

5.

Scriei un program C/C++ care citete de la tastatur dou numere naturale n i m (2<n24, 2<m24) i construiete n memorie un tablou bidimensional cu n linii i m coloane, n care orice element aflat pe ultima linie sau pe ultima coloan are valoarea 1 i oricare alt element este egal cu ultima cifr a sumei celor dou elemente alturate lui, aflate pe aceeai linie i pe coloana din dreapta, respectiv pe aceeai coloan i pe linia urmtoare, ca n exemplu. Programul afieaz pe ecran tabloul obinut, cte o linie a tabloului pe cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un spaiu. (10p.) Exemplu: pentru n=4 i m=5 se afieaz tabloul alturat. 5 5 5 1 0 0 4 1 0 6 3 1 4 3 2 1 1 1 1 1

Prob scris la Informatic Limbajul C/C++ 2

Varianta 3

Filiera teoretic, profilul real, specializrile matematic informatic, matematic informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic informatic

Ministerul Educaiei, Cercetrii, Tineretului i Sportului Centrul Naional de Evaluare i Examinare

SUBIECTUL al III-lea (30 de puncte) Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine cresctoare numere naturale de cte patru cifre din mulimea A={1,2,3,4,5}, numere care nu conin dou cifre impare alturate. Primele opt numere generate sunt, n aceast ordine, 1212, 1214, 1221, 1222, 1223, 1224, 1225, 1232. Numrul de valori generate care au cifra miilor egal cu 2 i cifra unitilor egal cu 4 este: (4p.) 20 b. 16 c. 12 d. 9

a.

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Scriei ce se afieaz n urma apelului de void f (int x) mai jos pentru subprogramul f, definit { cout<<*; | printf(*); if(x>0) { alturat. cout<<x; | printf(%d,x); f(12345); f(x/100); (6p.) cout<<*; | printf(*); } } Subprogramul inter are patru parametri: na, nb prin care primete cte un numr natural (0<na<100, 0<nb<100); a, b prin care primete cte un tablou unidimensional care memoreaz cte o mulime de na, respectiv nb numere naturale, fiecare avnd cel mult patru cifre. Subprogramul returneaz numrul de elemente aparinnd interseciei celor dou mulimi menionate. Scriei n limbajul C/C++ definiia complet a subprogramului inter. Exemplu: pentru na=4, a=(35,149,72,3798), nb=5, b=(72,151,149,9,623), n urma apelului, subprogramul returneaz valoarea 2. (10p.) Fiierul BAC.TXT conine un ir de cel puin 11 i cel mult un milion de numere naturale, desprite prin cte un spaiu. Fiecare numr are cel puin dou i cel mult nou cifre. Primul termen al irului are numrul de ordine 1, al doilea are numrul de ordine 2 etc. Se citete irul din fiier i se cere ca, utiliznd un algoritm eficient din punct de vedere al timpului de executare, s se determine i s se afieze pe ecran numrul de ordine al unui termen al irului care este precedat n fiier de un numr maxim de valori care au cifra zecilor egal cu a sa. Dac sunt mai muli termeni cu aceast proprietate, se afieaz numrul de ordine doar al unuia dintre ei. Exemplu: dac fiierul BAC.TXT conine numerele 12 36 265 18 139 19 32 34 112 14 68 pe ecran se afieaz 10 (numrul de ordine al termenului 14). a) Descriei n limbaj natural algoritmul utilizat, justificnd eficiena acestuia. (4p.) b) Scriei programul C/C++ corespunztor algoritmului descris. (6p.)

3.

4.

Prob scris la Informatic Limbajul C/C++ 3

Varianta 3

Filiera teoretic, profilul real, specializrile matematic informatic, matematic informatic intensiv informatic Filiera vocaional, profilul militar, specializarea matematic informatic

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