Înapoi la fișa subiectului

Textul subiectului și baremului

Subiect BAC Informatică Științe ale Naturii C/C++ 2012 – varianta 4

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 original

Subiectul · pagina 1

Ministerul Educaţiei, Cercetării, Tineretului şi Sportului
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la Informatică Varianta 4
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
1
Examenul de bacalaureat 2012
Proba E. d)
Proba scrisă la INFORMATICĂ
Limbajul C/C++
Varianta 4
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ă).
• În programele cerute, datele de intrare se consideră corecte, validarea acestora
nefiind necesară.
SUBIECTUL I (30 de puncte)
Pentru itemul 1, scrieţi pe foaia de examen litera corespunzătoare răspunsului corect.
1. Variabila x este de tip întreg şi memorează un număr natural.
Expresia alăturată are valoarea 0 dacă şi numai dacă expresia
x%5 are valoarea: (4p.)
((x%5+1)%5+1)%5
a. 1 b. 2 c. 3 d. 4
2. Se consideră algoritmul alăturat,
reprezentat î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ă dacă se citesc, în
această ordine, numerele 7, 5. (6p.)
b) Scrieţi două seturi de date de intrare,
formate din numere naturale cu cel mult
două cifre fiecare, astfel încât în urma
executării algoritmului, pentru fiecare dintre
acestea, să se afişeze valoarea 28. (4p.)
citeşte n,p (numere naturale nenule)
s←←←←0
┌pentru i←←←←1,n execută
│ j←←←←i
│┌cât timp j%p≠0 execută
││ j←←←←j-1
│└■
│ s←←←←s+j
└■
scrie s
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.)
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 4
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. Variabila x este de tip întreg. O expresie C/C++ care are valoarea 1 dacă şi numai dacă
numărul natural memorat în variabila x este un pătrat perfect este: (4p.)
a. sqrt(x*x)==x b. pow(sqrt(x),2)==x
c. sqrt(x)==x/sqrt(x) d. sqrt(x)==floor(sqrt(x))
2. În secvenţele de mai jos, notate cu A1 şi A2, toate variabilele sunt de tip întreg şi
memorează numere naturale.
//A1
d=1; m=0;
while(d<n)
{ if(n%d==0)
m=m+1;
d=d+1;
}
//A2
d=2; m=0;
while(n>1)
{ while(n%d==0)
{ m=m+1; n=n/d; }
d=d+1;
}
Indicaţi care dintre secvenţele de mai sus determină, în urma executării, memorarea în
variabila m a valorii 1 dacă şi numai dacă numărul n este un număr prim. (4p.)
a. numai secvenţa A1 b. numai secvenţa A2
c. atât secvenţa A1, cât şi secvenţa A2 d. niciuna dintre cele două secvenţe
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
3. Variabilele întregi xA şi yA memorează abscisa, respectiv ordonata unui punct în sistemul
de coordonate xOy, iar variabilele întregi xB şi yB memorează abscisa, respectiv ordonata
unui alt punct în acelaşi sistem de coordonate. Niciunul dintre cele două puncte nu se află
în originea sistemului de coordonate.
Scrieţi o expresie C/C++ care are valoarea 1 dacă şi numai dacă segmentul cu
extremităţile în cele două puncte este paralel cu una dintre axele sistemului de coordonate.
(6p.)
4. Se citesc două numere naturale nenule a şi p şi se cere să se scrie cea mai mare valoare
naturală b cu proprietatea că bp≤a.
Exemplu: dacă a=14 şi p=3 atunci b=2 (23≤14<33), iar dacă a=14 şi p=7 atunci b=1
(17≤14<27).
a) Scrieţi, în pseudocod, algoritmul de rezolvare pentru problema enunţată. (10p.)
b) Menţionaţi rolul tuturor variabilelor care au intervenit în algoritmul 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 4
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. În secvenţa de instrucţiuni de mai jos toate variabilele sunt de tip întreg.
for(i=1;i<=5;i++)
{ for(j=1;j<=5;j++)
cout<<......<<′ ′; | printf(″%d ″,......);
cout<<endl; | printf(″\n″);
}
2 3 4 5 1
3 4 5 6 2
4 5 6 7 3
5 6 7 8 4
1 2 3 4 0
Indicaţi o expresie care poate înlocui punctele de suspensie astfel încât, în urma executării
secvenţei obţinute, să se afişeze pe ecran valorile din figura de mai sus, în această ordine.
(4p.)
a. (i+j)%5 b. i+j%5
c. i%5+j%5 d. i%5+j
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
2. Se consideră un tablou unidimensional în care elementele sunt, în această ordine,
(2,5,7,8,49,50,75). Pentru a verifica dacă în tablou există elementul cu valoarea
x=50, se aplică metoda căutării binare.
Scrieţi succesiunea de elemente cu care se compară valoarea x pe parcursul aplicării
metodei indicate. (6p.)
3. Scrieţi un program C/C++ care citeşte de la tastatură un număr natural n (2<n<50) şi cele
2•n elemente ale unui tablou unidimensional, numere întregi cu cel mult 4 cifre. Numărul
de elemente pare este egal cu numărul de elemente impare. Elementele au indici de la 1
la 2•n.
Programul modifică apoi tabloul astfel încât elementele impare să aibă indici impari, iar
elementele pare să aibă indici pari. Programul afişează pe ecran elementele tabloului
modificat, separate prin câte un spaţiu.
Exemplu: pentru n=5 şi tabloul (4, 5, 0, 9, 10, 7, 15, 3, 8, 10),
unul dintre tablourile care se pot obţine este (5, 4, 9, 0, 15, 10, 7, 8, 3, 10). (10p.)
4. Fişierul bac.txt conţine pe prima linie un număr natural n cu cel mult 3 cifre, iar pe
următoarea linie un şir de n numere naturale cu cel mult nouă cifre. Numerele din şir sunt
separate prin câte un spaţiu.
Se cere să se determine două valori distincte din şir cu proprietatea că în intervalul închis
delimitat de acestea se află toţi termenii şirului. Valorile determinate se afişează pe ecran,
separate printr-un spaţiu.
Dacă în şir nu se află două astfel de valori, pe ecran se afişează mesajul Nu exista.
Pentru determinarea valorilor cerute se utilizează un algoritm eficient din punctul de
vedere al memoriei şi al timpului de executare.
Exemplu: dacă fişierul bac.txt are conţinutul
6
8 34 34 34 5 34
atunci pe ecran se afişează 5 34.
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 original

Baremul · pagina 1

Ministerul Educaţiei, Cercetării, Tineretului şi Sportului
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la Informatică Varianta 4
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
Barem de evaluare şi de notare
1
Examenul de bacalaureat 2012
Proba E. d)
Proba scrisă la INFORMATICĂ
BAREM DE EVALUARE ŞI DE NOTARE
(comun pentru limbajele C/C++ şi Pascal)
Varianta 4
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.
• 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. c 4p.
2. a) Răspuns corect: 15 6p.
b) Pentru răspuns corect 4p. Se acordă câte 2p. pentru fiecare dintre
cele două seturi de date de intrare corecte.
Seturile de date de intrare corecte pot fi:
n=7,p=1
n=10,p=7
n=15,p=14
n=28,p=28
c) Pentru algoritm pseudocod corect
-echivalenţa prelucrării realizate,
conform cerinţei (*)
- corectitudinea globală a algoritmului1)
6p.
5p.
1p.
(*) Se acordă numai 2p. dacă structura
pentru ... execută a fost înlocuită cu
o structură de tipul indicat, dar prelucrarea
realizată nu este echivalentă cu cea dată.
Se va puncta orice formă de structură
repetitivă corectă, de exemplu:
repetă...până când, repetă...cât
timp, execută...cât timp,
do...while etc.
d) Pentru program corect
-declarare corectă a tuturor variabilelor
(*)
-citire corectă
-afişare corectă
-instrucţiuni repetitive corecte
-atribuiri corecte
-corectitudinea globală a programului1)
10p.
2p.
1p.
1p.
2x2p.
1p.
1p.
(*) Se acordă numai 1p. dacă doar o parte
dintre variabile este declarată corect.
SUBIECTUL al II - lea (30 de puncte)
1. d 4p.
2. c 4p.

Baremul · pagina 2

Ministerul Educaţiei, Cercetării, Tineretului şi Sportului
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la Informatică Varianta 4
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
Barem de evaluare şi de notare
2
3. Pentru rezolvare corectă
-condiţie corectă pentru abscise
-condiţie corectă pentru ordonate
-operatori logici utilizaţi corect
6p.
2p.
2p.
2p.
4. a) Pentru rezolvare corectă
-citirea datelor
-determinarea unui număr cu
proprietatea cerută (*, **)
-scrierea principial corectă a structurilor
de control (***)
-scrierea rezultatului
10p.
1p.
6p.
2p.
1p.
(*) Se acordă numai 3p. dacă algoritmul este
principial corect, dar nu se obţine cel mai
mare număr.
(**) Se consideră corectă şi utilizarea în
algoritm a unor formule matematice, cum ar
fi bp, p a    
     etc.
(***) 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.), decizională etc.
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-a identificat
doar o parte dintre variabilele utilizate sau
dacă nu pentru toate variabilele este corect
menționat rolul acestora.
SUBIECTUL al III - lea (30 de puncte)
1. c 4p.
2. Răspuns corect:
8,50
6p. Se acordă câte 3p. pentru fiecare valoare
indicată, în ordinea corectă.
3. Pentru program corect
-declararea corectă a variabilelor (de
tip simplu şi tablou)
-citirea datelor
-plasarea pe poziţii impare a valorilor
impare (*)
-plasarea pe poziţii pare a valorilor pare
(*)
-afişarea datelor
-corectitudinea globală a programului1)
10p.
2x1p.
1p.
2p.
2p.
2p.
1p.
(*) Se acordă numai 1p. dacă plasarea
elementelor în tablou se face pe măsura
citirii datelor.
a) Pentru răspuns corect
-coerenţa explicării metodei (*)
-explicarea unor elemente de eficienţă
4p.
2p.
2p.
(*) Se acordă punctajul chiar dacă metoda
aleasă nu este eficientă.
4.
b) Pentru program corect
-operaţii cu fişiere: declarare, pregătire
în vederea citirii, citire din fişier
-determinarea valorilor cu proprietatea
cerută (*, **)
-afişarea datelor şi tratarea cazului Nu
exista
-utilizarea unui algoritm eficient (***)
6p.
1p.
3p.
1p.
1p.
(*) Se acordă punctajul chiar dacă soluţia
propusă nu prezintă elemente de eficienţă.
(**) Se acordă numai 2p. dacă se determină
doar una dintre cele două valori.
(***) Se acordă punctajul numai pentru un
algoritm liniar (de complexitate O(n)), care
utilizează eficient memoria.
O soluţie posibilă parcurge datele din fişier
determinând atât valoarea minimă, cât şi
valoarea maximă, care reprezintă capetele
intervalului cerut.
1) Corectitudinea globală vizează structura, sintaxa, alte greşeli neprecizate în barem.