Textul subiectului și baremului
Subiect BAC Informatică Științe ale Naturii C/C++ 2011 – varianta 3
Acesta este textul selectabil extras automat din documentele PDF ale acestei variante. Pentru formule, tabele, pseudocod sau grafice, verifică pagina originală din PDF înainte de a rezolva exercițiile.
Subiectul
Deschide PDF-ul originalSubiectul · pagina 1
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului Centrul NaŃional de Evaluare şi Examinare Probă scrisă la Informatică Varianta 3 Limbajul C/C++ Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii 1 Examenul de bacalaureat 2011 Proba E. d) Proba scrisă la INFORMATICĂ Limbajul C/C++ Varianta 3 Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii • 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) Pentru itemul 1, scrieŃi pe foaia de examen litera corespunzătoare răspunsului 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 aparŃine reuniunii de intervale: (4p.) a. (-∞∞∞∞,-10] ∪∪∪∪ [5, ∞∞∞∞) b. [-20,-10] ∪∪∪∪ (-5,5) c. (-20,-10) ∪∪∪∪ (-5,5) d. (-20,-10] ∪∪∪∪ [-5,5] 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 numărul care se afişează în urma executării algoritmului dacă pentru variabila n se citeşte valoarea 1034, iar pentru variabila m valoarea 1234. (6p.) b. ScrieŃi toate perechile distincte de valori naturale, de câte două cifre fiecare, valori care pot fi citite pentru variabilele n şi m astfel încât, în urma executării algoritmului, pentru fiecare dintre acestea, numărul afişat să fie 86. (6p.) citeşte n,m (numere naturale) ┌dacă n<m atunci │ xn │ nm │ mx └■ p1 ┌cât timp m>0 execută │ cm%10 │ m[m/10] │ nn-p*c │ pp*10 └■ scrie n c. ScrieŃi în pseudocod un algoritm care să nu folosească structuri repetitive şi care să fie echivalent cu cel dat. (4p.) d. ScrieŃi programul C/C++ corespunzător algoritmului dat. (10p.)
Subiectul · pagina 2
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului Centrul NaŃional de Evaluare şi Examinare Probă scrisă la Informatică Varianta 3 Limbajul C/C++ Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii 2 SUBIECTUL al II-lea (30 de puncte) Pentru fiecare dintre itemii 1 şi 2 scrieŃi pe foaia de examen litera corespunzătoare răspunsului corect. 1. Dintre expresiile C/C++ de mai jos, cea care are valoarea 1 dacă şi numai dacă numărul natural memorat în variabila întreagă x aparŃine intervalului [-3,3] este: (4p.) a. abs(x)<=3 b. !(abs(x)>=3) c. abs(x-3)>=0 d. 3*abs(x)>0 2. Variabilele E, x, y şi z sunt de tip float. InstrucŃiunea prin care i se atribuie variabilei E rezultatul evaluării expresiei aritmetice alăturate este: (4p.) 2 5 zyx 2 ++++⋅⋅⋅⋅ a. E=(x*y+z*z)/(5/2); b. E=x*y+z*z/(5/2); c. E=x*y+z*z/5/2; d. E=(x*(y+z)*z)/(5/2); ScrieŃi pe foaia de examen răspunsul pentru fiecare dintre cerinŃele următoare. 3. Se consideră variabilele a, b, c, de tip int, unde a şi b memorează lungimea şi, respectiv, lăŃimea unui dreptunghi, iar c memorează lungimea laturii unui pătrat, toate exprimate în metri. ScrieŃi o secvenŃă de instrucŃiuni C/C++ care, în urma executării, afişează mesajul DA, dacă pătratul are aria strict mai mică decât a dreptunghiului, şi mesajul NU în caz contrar. (6p.) 4. Se citesc trei numere naturale nenule, a, b, şi c, şi se cere să se afişeze două valori naturale, separate printr-un spaŃiu, reprezentând cel mai mare divizor comun şi cel mai mic multiplu comun al acestor numere. Exemplu: pentru a=12, b=18 şi c=30 se afişează 6 180 (deoarece a=22·3, b=2·32, c=2·3·5) a) ScrieŃi, în pseudocod, algoritmul de rezolvare pentru problema enunŃată. (10p.) b) MenŃionaŃi rolul tuturor variabilelor care au intervenit în prelucrarea realizată la punctul a) şi indicaŃi datele de intrare, respectiv datele de ieşire ale problemei enunŃate. (6p.)
Subiectul · pagina 3
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului
Centrul NaŃional de Evaluare şi Examinare
Probă scrisă la Informatică Varianta 3
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii
3
SUBIECTUL al III-lea (30 de puncte)
Pentru itemul 1, scrieŃi pe foaia de examen litera corespunzătoare răspunsului corect.
1. Se consideră şirurile de numere S1, S2 şi
S3, scrise alăturat. Pentru a aplica direct,
fără alte prelucrări prealabile, algoritmul de
interclasare a elementelor a două dintre
şirurile de mai sus, acestea pot fi: (4p.)
S1: 1,13,27,48,52;
S2: 98,85,70,59,27,11;
S3: 22,63,36,25,15.
a. oricare două dintre şirurile de mai sus b. numai S1 şi S2
c. numai S1 şi S3 d. niciunele dintre şirurile de mai sus
ScrieŃi pe foaia de examen răspunsul pentru fiecare dintre cerinŃele următoare.
2. În secvenŃa de program
alăturată variabilele x şi y sunt
de tip char, iar celelalte
variabile sunt de tip int. ScrieŃi
ce se afişează în urma
executării secvenŃei date. (6p.)
k=’a’-’A’; x=’a’;
for(m=1;m<=3;m++)
{
y=x-k+m;
cout<<x<<y; | printf(”%c%c”,x,y);
x=x+1;
}
3. ScrieŃi un program C/C++ care citeşte de la tastatură două numere naturale na şi nb
(0<na<100, 0<nb<100) şi elementele a două tablouri unidimensionale a şi b cu na,
respectiv nb elemente. Tablourile memorează elementele câte unei mulŃimi de numere
naturale, fiecare având cel mult patru cifre. Programul afişează pe ecran numărul de
elemente aparŃinând intersecŃiei celor două mulŃimi menŃionate.
Exemplu: pentru na=4, a=(35,149,72,3798), nb=5, b=(72,151,149,9,623),
programul afişează pe ecran valoarea 2. (10p.)
4. Fişierul BAC.TXT conŃine un şir de cel mult un milion de numere naturale, despărŃite prin
câte un spaŃiu, fiecare număr având cel puŃin două cifre şi cel mult 9 cifre.
Se citesc numerele din fişier şi se cere ca, utilizând un algoritm eficient din punct de
vedere al timpului de executare, să se determine şi să se afişeze pe ecran numărul maxim
de termeni ai şirului care au aceeaşi cifră a zecilor.
Exemplu: dacă fişierul BAC.TXT conŃine numerele
12 36 265 18 139 19 32 34 112 14 68
pe ecran se afişează 5 (pentru că sunt 5 termeni cu cifra zecilor 1).
a) DescrieŃi în limbaj natural algoritmul utilizat, justificând eficienŃa acestuia. (4p.)
b) ScrieŃi programul C/C++ corespunzător algoritmului descris. (6p.)Baremul
Deschide PDF-ul originalBaremul · pagina 1
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului Centrul NaŃional de Evaluare şi Examinare Probă scrisă la Informatică Varianta 3 Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii Barem de evaluare şi de notare 1 Examenul de bacalaureat 2011 Proba E. d) Proba scrisă la INFORMATICĂ BAREM DE EVALUARE ŞI DE NOTARE (comun pentru limbajele C/C++ şi Pascal) Varianta 3 Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii • Se punctează oricare alte modalităŃi de rezolvare corectă a cerinŃelor. • Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin barem. Nu se acordă fracŃiuni de punct. • Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărŃirea punctajului total acordat pentru lucrare la 10. • În programele cerute, datele de intrare se consideră corecte, validarea acestora nefiind necesară. • Utilizarea unui tip de date care depăşeşte domeniul de valori precizat în enunŃ este acceptată dacă acest lucru nu afectează corectitudinea în funcŃionarea programului. • Se vor lua în considerare atât implementările concepute pentru compilatoare pe 16 biŃi, cât şi cele pentru compilatoare pe 32 de biŃi. SUBIECTUL I (30 de puncte) 1. d 4p. 2. a. 200 6p. b. (10,96), (96,10), (11,97), (97,11), (12,98), (98,12), (13,99), (99,13) 6p. Se acordă -numai 2p. dacă a fost menŃionată o singură pereche corectă; -numai 3p. dacă au fost menŃionate doar două sau trei perechi corecte; -numai 4p. dacă au fost menŃionate doar patru sau cinci perechi corecte; -numai 5p. dacă au fost menŃionate doar şase sau şapte perechi corecte. c. Pentru algoritm pseudocod corect -echivalenŃa prelucrării realizate prin structura repetitivă, conform cerinŃei -corectitudine globală 4p. 3p. 1p. Dintre soluŃiile posibile, propunem: citeşte n,m ┌dacă n<m atunci n↔↔↔↔m └■ scrie n-m sau citeşte n,m scrie |n-m| d. Pentru program corect -declararea corectă a tuturor variabilelor -citire corectă -scriere corectă -instrucŃiune de decizie corectă -instrucŃiune repetitivă cu test iniŃial corectă -atribuiri corecte -corectitudinea globală a programului1) 10p. 1p. 1p. 1p. 2p. 2p. 2p. 1p.
Baremul · pagina 2
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului Centrul NaŃional de Evaluare şi Examinare Probă scrisă la Informatică Varianta 3 Filiera teoretică, profilul real, specializarea ştiinŃe ale naturii Barem de evaluare şi de notare 2 SUBIECTUL al II-lea (30 de puncte) 1. a 4p. 2. a 4p. 3. Pentru rezolvare corectă -expresii corecte pentru calculul ariilor -structură de decizie corectă -afişare corectă a mesajelor 6p. 2x2p. 1p. 1p. a. Pentru rezolvare corectă -citirea datelor -determinarea celui mai mare divizor comun (*) -determinarea celui mai mic multiplu comun (*) -scrierea principial corectă a structurilor de control (**) -scrierea rezultatului 10p. 1p. 3p. 3p. 2p. 1p. (*) Pentru algoritm principial corect de determinare a datelor, dar fără obŃinerea rezultatului final, se acordă numai 2p. (**) Se va puncta orice formă corectă de structură repetitivă (de exemplu execută…cât timp, execută… până când, repetă…până când, do...while etc.) sau decizională. 4. b. Pentru răspuns corect -menŃionarea rolului variabilelor utilizate (*) -date de intrare identificate corect -date de ieşire identificate corect 6p. 2p. 2p. 2p. (*) Se acordă numai 1p. dacă s-au identificat doar o parte din variabilele utilizate sau dacă nu pentru toate variabilele este corect menŃionat rolul acestora. SUBIECTUL al III-lea (30 de puncte) 1. b 4p. 2. Răspuns corect: aBbDcF 6p. Se acordă câte 1p. pentru fiecare literă afişată corect. 3. Pentru program corect -declarare corectă a variabilelor (de tip tablou şi tipuri simple) -citirea datelor (*) -algoritm principial corect de determinare a unui element al intersecŃiei -determinarea numărului de valori ale intersecŃiei -afişarea rezultatului -corectitudinea globală a programului1) 10p. 2x1p. 2p. 2p. 2p. 1p. 1p. (*) Pentru citire parŃial corectă se acordă numai 1p. a. Pentru răspuns corect -coerenŃa explicării algoritmului (*) -explicarea unor elemente de eficienŃă din punct de vedere al timpului de executare 4p. 2p. 2p. (*) Se acordă punctajul chiar dacă algoritmul ales nu este eficient. 4. b. Pentru program corect -operaŃii cu fişiere: declarare, pregătire în vederea citirii, citire din fişier -determinarea numărului de apariŃii ale unei cifre a zecilor conform cerinŃei -determinarea şi afişarea valorii maxime (*) -utilizarea unui algoritm eficient (**) 6p. 1p. 2p. 2p. 1p. (*) Se acordă punctajul chiar dacă soluŃia propusă nu prezintă elemente de eficienŃă. (**) Punctajul se acordă numai pentru un algoritm liniar. O soluŃie posibilă utilizează un tablou nr cu 10 elemente, iniŃial nule, în care pe măsura citirii datelor din fişier, se contorizează în nri numărul de apariŃii ale cifrei zecilor i. Se va afişa valoarea maximă din tabloul nr. 1) Corectitudinea globală vizează structura, sintaxa şi alte greşeli neprecizate în barem.