Professional Documents
Culture Documents
Variabila x este de tip real. Care dintre urmtoarele expresii C/C++ are valoarea 1 dac i
numai dac numrul real memorat n variabila x aparine intervalului (5,8]?
(4p.)
b. (x<=8) || (x>5)
c. (x>8) || (x<=5)
c)
Scriei 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.)
d)
(10p.)
Subiectul I
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.)
c. (x<=y) || (y<=x)
d. x*x==y*y
(4p.)
c)
d)
(10p.)
Subiectul I
Care dintre urmtoarele expresii C/C++ are valoarea 1 dac i numai dac numrul real
memorat n variabila x se afl n intervalul (-2,2)?
(4p.)
a. x*x-4<=0
b. 4-x*x>0
c. (2<x)&&(x<-2)
d. (x-2)*(x+2)>0
citete
y (numr natural)
numrul ntreg nenul y.
dac z<y-x atunci
a)
Scriei ce se va afia dac se citesc, n aceast scrie x%10
ordine, numerele: 2 5 16 9 12 13 5 0?
(6p.) altfel
scrie y%10
b)
Scriei un ir de date de intrare, format doar din
numere naturale cu o singur cifr fiecare, care s xy
determine afiarea valorii 7310.
(4p.)
c)
d)
(10p.)
Subiectul I
a. 0
b. 10
c. 1.11
(4p.)
10*2/3*3/2
d. 9
a)
Scriei ce se afieaz pentru a=5 i b=17.
(6p.) pentru xa,b,-1 execut
Scriei toate perechile de valori care pot fi citite dac x%2=0 atunci
b)
scrie x,
pentru variabilele a i b, astfel nct s se afieze, n
acest ordine, numerele: 0 -2 -4 -6 -8 -10.
(4p.)
c)
d)
(10p.)
Subiectul I
Variabila x este de tip real. Care dintre urmtoarele expresii C/C++ are valoarea 1 dac i
numai dac numrul real memorat n variabila x nu aparine intervalului (2,9]?
(4p.)
c. (x<=2) || (x>9)
d. (x<2) || (x>9)
d)
(10p.)
Subiectul I
b. x+y-abs(x-y)/2
c. (x+y+abs(x-y))/2
d. (x+y+abs(x+y))/2
(10p.)
Subiectul I
b. x*(y-5)!=0
c. x*(y-5)>=0
d. !(x*(y-5)<=0)
mn
real c, iar cu a%b restul mpririi numrului
ct timp m0 i m%10a execut
ntreg a la numrul ntreg nenul b.
m[m/10]
a)
Scriei valoarea afiat, n urma
executrii algoritmului, dac se citete
dac m0 atunci
pentru n valoarea 232493.
(4p.)
nrnr*10+m%10
b)
Scriei dou valori naturale distincte care
pot fi citite pentru n astfel nct, n urma
scrie nr
executrii algoritmului s se afieze
numrul 9654.
(6p.)
c)
d)
(10p.)
Subiectul I
Care dintre urmtoarele expresii C/C++, are ca valoare cel mai mare dintre numerele
naturale nenule memorate n variabilele ntregi a i b?
(4p.)
a. (a+b+abs(a-b))/2
b. a+b+abs(a-b)/2
c. (a+b-abs(a-b))/2
d. (a+b-abs(a+b))/2
d)
(10p.)
Subiectul I
b)
c)
d)
Subiectul I
a. 3
b. 4
c. -3
d. -3.75
9/2*2-5
(10p.)
Subiectul I
1.
b)
Dac se citete pentru k valoarea 4, scriei o scrie p
valoare nenul care poate fi citit pentru n
astfel nct numrul afiat n urma executrii
algoritmului s fie 1.
(4p.)
c)
d)
(10p.)
Subiectul I
1.
algoritmul
alturat,
descris
c)
d)
(10p.)
Subiectul I
1.
algoritmul
alturat,
descris
b)
c)
d)
citete a,b
(numere naturale, ab)
k0
pentru ia,b execut
ni; c0
ct timp n>0 execut
dac n%2=1 atunci
cc+1
n[n/10]
dac c>0 atunci
kk+1
scrie k
Subiectul I
a. a=1003 i b=3
c. a=1100 i b=10
b. a=35 i b=35
d. a=1234 i b=12
algoritmul
alturat,
descris
b)
c)
d)
citete x
(numr natural)
n0
ct timp x0 execut
yx; c0
ct timp y>0 execut
dac y%10>c atunci
cy%10
y[y/10]
nn*10+c
citete x
scrie n
Subiectul I
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.)
a. x-y!=0
b. x+y>x%y+1
c. x-2*y==0
d. !(x==2*y)
citete a,n
(numere naturale)
pentru i1,n execut
dac i%2=0 atunci
aa-i*i
altfel
aa+i*i
scrie a
a)
b)
c)
Dac pentru variabila a se citete valoarea 18, scriei valoarea care trebuie citit pentru
variabila n, astfel nct s se afieze numrul 8.
(6p.)
d)
Subiectul I
Care dintre urmtoarele instruciuni C/C++ determin inserarea cifrei 7 n faa ultimei cifre a
unui numr natural, cu mai mult de 2 cifre, memorat n variabila x?
(4p.)
a. x=(x/10*10+7)*10+x%10;
b. x=x/10+7+x%10;
c. x=(x%10*10+7)*10+x/10;
d. x=(x/10+7)*10+x%10;
b)
(6p.)
c)
Scriei
programul
algoritmului dat.
d)
C/C++
corespunztor
(10p.)
Subiectul I
a. 300
b. 5000
c. 120
d. 0
b)
c)
d)
citete x,y
(numere naturale)
dac x<y atunci
xx-y
yx+y
xy-x
ct timp xy execut
scrie A
xx-y
scrie B
Subiectul I
Care dintre urmtoarele instruciuni C/C++ determin eliminarea cifrei din mijloc a unui
numr natural, cu exact 5 cifre, memorat n variabila x?
(4p.)
a. x=x/1000*100+x%100;
b. x=x%1000*100+x/100;
c. x=x/100*100+x%100;
d. x=x/1000+x%100;
d)
Subiectul I
a. 4
b. 6
c. 2
d. 8
b)
c)
Scriei
programul
algoritmului dat.
d)
C/C++
corespunztor
(10p.)
Subiectul I
a. 5
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
Subiectul I
valorile 1 i 2:
. Se noteaz cu AD(x) operaia prin care se adaug elementul cu
valoarea x n coad i cu EL operaia prin care se elimin un element din coad. Cte
elemente va conine coada n urma executrii secvenei de operaii:
AD(4);EL;EL;AD(5);EL;AD(3)?
(4p.)
a.
2.
Care este numrul maxim de componente conexe pe care le poate avea un graf neorientat
cu 20 noduri i 12 muchii?
(4p.)
a.
b.
b.
12
c.
c.
10
d.
d.
15
4.
Pentru arborele reprezentat prin vectorul de tai T=(6,6,5,0,6,4,4,7), scriei care este
nodul cu cei mai muli fii i care sunt frunzele arborelui.
(6p.)
5.
Scriei un program C/C++ care citete de la tastatur dou numere naturale nenule n i m
(2m10, 2n10) i care construiete n memorie i apoi afieaz 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 (1in, 1jm).
Matricea se va afia pe ecran, cte o linie a matricei pe cte o linie a ecranului, elementele
fiecrei linii fiind separate prin cte un spaiu.
1 1 1 1 1
Exemplu: pentru n=4 i m=5 se va afia matricea alturat.
1 2 2 2 2
1 2 3 3 3
1 2 3 4 4
(10p.)
Subiectul II
Cte grafuri neorientate, distincte, cu 3 vrfuri se pot construi? Dou grafuri se consider
distincte dac matricele lor de adiacen sunt diferite.
(4p.)
a.
23
2.
a.
p.d=2*(d.a+d.b);
b.
p.d=2*a.d+2*b.d;
c.
d.p=2*d.a+2*d.b;
d.
d.p==2*d.a+2*d.b;
b.
c.
32
d.
16
vrf
2
1
baza
4.
5.
Scriei un program C/C++ care citete de la tastatur un cuvnt format din cel mult 20 de
caractere, doar litere ale alfabetului englez. Programul determin transformarea cuvntului
citit prin nlocuirea fiecrei litere mici a cuvntului cu litera mare corespunztoare, restul
literelor nemodificndu-se, ca n exemplu. Programul afieaz pe ecran cuvntul obinut.
Exemplu: pentru cuvntul: bACAlaUrEaT se va afia pe ecran: BACALAUREAT
(10p.)
Subiectul II
a.
2.
Cte frunze are arborele cu rdcin descris prin urmtorul vector de tai:
(6,5,5,2,0,3,3,3,8,7,7)?
(4p.)
a.
b.
b.
c.
c.
d.
d.
4.
5.
Subiectul II
a.
2.
a.
b.
b.
c.
c.
d.
d.
vrf
2
1
baza
4.
5.
i=0;
while (i<strlen(s))
{
...............
}
printf("%s",s);| cout<<s;
Subiectul II
ntr-un graf neorientat cu 10 muchii, fiecare nod are gradul un numr nenul. Doar trei dintre
noduri au gradul un numr par, restul nodurilor avnd gradele numere impare. Care este
numrul maxim de noduri pe care poate s le aib graful?
(4p.)
a.
14
2.
b.
17
c.
10
d.
16
struct dreptunghi
{
float a,b,aria;
}d;
a.
d.aria==d.a*d.b;
b.
aria.d=a.d*b.d;
c.
aria.d=d.a*d.b;
d.
d.aria=d.a*d.b;
4.
5.
(10p.) 2 2 3 4 5
3 3 3 4 5
4 4 4 4 5
Subiectul II
a.
b.
c.
x.b=y.b;
d.
b.x=b.y;
2.
a.
b.
c.
d.
10
4.
5.
Se consider un text cu maximum 255 de caractere n care cuvintele sunt separate prin
unul sau mai multe spaii. Primul caracter din textul citit este o liter, iar cuvintele sunt
formate numai din litere mici ale alfabetului englez. Scriei un program C/C++ care citete
de la tastatur textul i l transform nlocuind prima liter a fiecrui cuvnt cu litera mare
corespunztoare, restul caracterelor rmnnd nemodificate. Textul astfel transformat va fi
afiat pe ecran.
Exemplu: dac de la tastatur se introduce textul: mare
frig rosu
se va afia pe ecran: Mare
Frig Rosu
(10p.)
(6p.)
Subiectul II
a.
b.
c.
d.
2.
Care dintre urmtoarele valori pot reprezenta gradele nodurilor unui graf neorientat cu 6
noduri?
(4p.)
a.
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
4.
5.
Se consider un text cu maximum 255 de caractere, format din litere mici ale alfabetului
englez i spaii. Textul conine cel puin o consoan. Scriei un program C/C++ care citete
de la tastatur textul i afieaz pe ecran numai ultima consoan care apare n text.
Exemplu: dac de la tastatur se introduce textul mare frig saci
pe ecran se va afia: c
(10p.)
Subiectul II
0
1
0
1
0
0
0
0
a.
d.
2.
Care este numrul maxim de vrfuri de grad 0 pe care le poate avea un graf neorientat cu
10 noduri i 7 muchii?
(4p.)
a.
b.
b.
c.
c.
d.
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
4.
(6p.)
5.
Subiectul II
a.
cin>>x;
scanf(%d, &x);
b.
cin>>a.x>>b.x;
c.
cin>>x.a>>x.b;
d.
cin>>a->x>>b->x;
2.
a.
b.
c.
d.
(4p.)
4.
5.
Subiectul II
a.
b.
cout<<a.x<< <<b.x;
c.
cout<<x;
printf(%d, x);
d.
cout<<a->x<< <<b->x;
2.
a.
aace
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 reine variabila s dup executarea secvenei de
}
instruciuni alturate?
(4p.)
else i=i+1;
b.
ace
c.
ce
d.
acde
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?
(6p.)
4.
Se consider graful neorientat cu 80 de noduri i 3160 muchii. Care este numrul de muchii
ce pot fi eliminate astfel nct graful parial obinut s devin arbore?
(6p.)
5.
Subiectul II
0
0
0
0
1
1
a.
d.
2.
a.
struct e{
string nume; float media;}
b.
char e.nume[40];
float e.media;
c.
float e;
d.
b.
c.
1
0
0
0
1
0
1
0
0
1
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
1
0
strcpy(s,abracadabra);
3.
Ce se afieaz pe ecran n
i=0;
urma executrii secvenei de
cout<<strlen(s); | printf("%d",strlen(s));
program alturate, n care
while (i<strlen(s))
variabila s memoreaz un ir cu
if (s[i]=='a')
cel mult 12 caractere, iar i este
strcpy(s+i,s+i+1);
de tip ntreg?
else
i++;
(6p.)
cout<<" "<<s; | printf(" %s",s);
4.
Cte grafuri neorientate distincte, fr bucle, cu 4 vrfuri, se pot construi? Dou grafuri sunt
distincte dac matricele lor de adiacen difer.
(4p.)
5.
Scriei un program C/C++ care citete de la tastatur dou valori naturale nenule m i n
(m10, n10) 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 afieaz pe o linie a ecranului separate prin cte un spaiu.
3 6 5 4 7
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.)
Subiectul II
0
1
1
0
1
1
a.
d.
2.
Pentru care dintre urmtorii arbori cu rdcin, memorai cu ajutorul vectorilor de tai,
nodurile 4, 6 i 9 sunt singurii descendeni direci (fii) ai nodului 3?
(6p.)
a.
tata=(2,0,2,3,2,3,4,4,3)
b.
tata=(3,3,4,0,2,3,4,4,4)
c.
tata=(6,4,9,0,3,3,3,3,3)
d.
tata=(0,3,1,3,2,3,4,4,3)
b.
2, 4
c.
0
0
0
1
0
1
0
1
0
1
1
0
1, 3, 6
O variabil e este folosit pentru a memora simultan numele unui elev precum i cele 3 note
obinute de acesta la un concurs de atletism. tiind c notele sunt numere ntregi cu
maximum dou cifre, numele este un ir cu maximum 30 de caractere, iar punctajul total al
elevului se calculeaz folosind atribuirea:
total=e.nota1+e.nota2+e.nota3;
scriei declararea variabilei e.
(6p.)
4.
5.
Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<50) i apoi
construiete n memorie o matrice cu n linii i n coloane, numerotate de la 1 la n, ale crei
elemente primesc valori dup cum urmeaz:
- elementele aflate pe diagonala secundar sunt toate nule;
- elementele de pe linia i (1in), aflate deasupra diagonalei secundare, au valoarea egal
cu i;
- elementele de pe coloana n-i+1 (1in), aflate sub diagonala secundar, au valoarea
egal cu i.
Programul va afia matricea astfel construit pe ecran, cte o linie a 1 1 1 0
matricei pe cte o linie a ecranului, elementele fiecrei linii fiind separate 2 2 0 1
3 0 2 1
prin cte un spaiu.
Exemplu: pentru n=4 se va afia matricea alturat.
(10p.) 0 3 2 1
Subiectul II
a.
0 0 5 7 6 5 1
b.
1 0 0 7 6 5 0
c.
7 4 5 0 4 5 4
d.
7 4 5 0 4 5 7
2.
a.
32
b.
256
c.
15
d.
24
(4p.)
4.
5.
Scriei un program C/C++ care citete de la tastatur un numr natural n (2<n<50) i apoi
construiete n memorie o matrice cu n linii i n coloane, numerotare de la 1 la n, ale crei
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 afieaz pe ecran matricea construit, cte o linie a matricei pe 1 1 1 0
cte o linie a ecranului, elementele fiecrei linii fiind separate prin cte un 1 1 0 2
spaiu.
1 0 2 2
Exemplu: pentru n=4 se va afia matricea alturat.
(10p.) 0 2 2 2
Subiectul II
a.
12
2.
b.
c.
b.
c.
d.
(6p.)
d.
3.
Ce se afieaz pe ecran n
urma executrii secvenei de
program alturate, n care
variabila s memoreaz un ir
cu cel mult 10 caractere, iar
variabilele i, j i k sunt de
tip ntreg?
(4p.)
4.
Care sunt etichetele nodurilor de tip frunz ale arborelui cu rdcin, avnd 7 noduri,
numerotate de la 1 la 7, i urmtorul vector de tai: (5,1,5,1,0,7,5)?
(6p.)
5.
Scriei un program C/C++ care citete de la tastatur un numr natural nenul cu exact 4
cifre, construiete n memorie i afieaz 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
unitilor numrului dat, elementele de pe a doua coloan a matricei vor fi toate egale cu
cifra zecilor numrului dat, elementele de pe a treia coloan a matricei vor fi toate egale cu
cifra sutelor numrului dat, iar elementele de pe a patra coloan a matricei vor fi toate egale
cu cifra miilor numrului dat.
Matricea va fi afiat pe ecran, cte o linie a matricei pe cte o linie a
ecranului, iar elementele fiecrei linii vor fi separate prin cte un spaiu.
Exemplu: dac se citete numrul 1359, matricea construit va fi cea
alturat.
(10p.)
Subiectul II
a.
2.
a.
b.
c.
b.
c.
d.
3
(4p.)
4.
5.
Scriei un program C/C++ care citete de la tastatur un numr natural cu exact 5 cifre i
construiete 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 unitilor numrului citit;
- elementele de pe linia 2, au toate valoarea egal cu cifra zecilor numrului 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 afieaz pe ecran matricea astfel construit, cte o linie a 1 1 1 1 1
matricei pe cte o linie a ecranului, elementele de pe aceeai linie fiind 3 3 3 3 3
7 7 7 7 7
separate prin cte un spaiu.
Exemplu: dac se citete numrul 28731 matricea construit va fi cea 8 8 8 8 8
alturat.
(10p.) 2 2 2 2 2
Subiectul II
Numrul de muchii ale unui graf neorientat cu 12 noduri, n care fiecare nod este adiacent
cu exact 11 noduri, este :
(4p.)
a.
144
2.
Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan vrsta n ani mplinii i media la bacalaureat a unui elev?
(4p.)
a.
b.
c.
float x.media;
int x.varsta;
d.
b.
66
c.
78
d.
11
4.
(6p.)
5.
Subiectul II
Care este gradul maxim posibil i care este gradul minim posibil pentru un nod dintr-un graf
cu n noduri, care este arbore?
(4p.)
a.
n-1 i 1
b.
n i 1
c.
n i 0
d.
n-1 i 0
2.
Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan codul de identificare al unui candidat la un examen, exprimat ca un
numr natural de cel mult 4 cifre i media obinut de acesta la examen, exprimat ca un
numr real?
(4p.)
a.
b.
c.
int x.cod ;
float x.media;
d.
4.
Ce va afia secvena
program,
tiind
c
memoreaz un ir cu cel
caractere, iar variabila i
ntreg?
5.
alturat 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]);
Subiectul II
Un arbore binar este un arbore cu rdcin n care fiecare nod are cel mult 2 descendeni
direci (fii), iar nlimea arborelui este reprezentat de numrul maxim de muchii ale unui
lan elementar ce unete rdcina cu un vrf terminal (frunz). Pentru un arbore binar cu
exact 8 noduri, precizai care este nlimea minim posibil?
(4p.)
a.
2.
Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan coordonatele reale (abscisa i ordonata) ale unui punct n planul
xOy?
(4p.)
a.
b.
char x[2];
c.
d.
float x;
b.
c.
d.
Care va fi valoarea elementului aflat n vrful unei stive iniial vid i care este numrul de
elemente rmase n stiv, dup efectuarea, n aceast ordine, a urmtoarelor operaii:
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.
5.
Subiectul II
Un graf neorientat este complet dac oricare dou noduri distincte ale sale sunt adiacente.
Care este numrul de muchii care trebuie eliminate dintr-un graf neorientat, complet, cu 7
noduri, astfel nct graful parial obinut s fie arbore?
(4p.)
a.
15
2.
Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan partea real i partea imaginar a unui numr complex?
(4p.)
a.
b.
char x[2];
c.
struct complex{
d.
float x;
b.
c.
d.
21
4.
Care vor fi valorile primului i ultimului element extras dintr-o coad iniial vid, dac se
efectueaz urmtoarele operaii, 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.)
5.
Subiectul II
Suma gradelor interne ale tuturor vrfurilor unui graf orientat este ntotdeauna egal cu:
(4p.)
a.
c.
suma gradelor
vrfurilor grafului
2.
Care dintre urmtoarele variante reprezint o declarare corect pentru o variabil x care
memoreaz simultan numrtorul i numitorul unei fracii ireductibile:
(4p.)
a.
b.
char x[2];
c.
d.
float x;
externe
ale
tuturor
Care vor fi valorile primului i ultimului element ale unei cozi iniial vide, dac se
efectueaz urmtoarele operaii, 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.)
4.
5.
Subiectul II
//C++
3.
Fiierul text bac.txt conine, pe o singur linie, cel mult 1000 de numere naturale nenule
cu cel mult 4 cifre fiecare, numerele fiind separate prin cte un spaiu. Scriei un program
C/C++ care citete de la tastatur un numr natural nenul n (n999) i numerele din fiierul
bac.txt i care afieaz pe ecran, separate prin cte un spaiu, toate numerele din fiier
care sunt divizibile cu n. Dac fiierul nu conine niciun astfel de numr, atunci se va afia
pe ecran mesajul NU EXISTA.
Exemplu: dac fiierul bac.txt conine numerele: 3 100 40 70 25 5 80 6 3798,
pentru n=10 atunci pe ecran se va afia: 100 40 70 80
(10p.)
4.
(4p.)
Subiectul III
1.
Fiierul text NR.TXT conine pe o singur linie, separate prin cte un singur spaiu, cel mult
100 de numere ntregi, fiecare numr avnd cel mult 4 cifre. Scriei un program C/C++ care
citete numerele din fiierul NR.TXT i afieaz pe ecran, separate prin cte un spaiu, n
ordine cresctoare, toate numerele naturale nenule din fiier. Dac nu exist astfel de
numere se va afia pe ecran mesajul NU EXISTA.
Exemplu: dac fiierul NR.TXT conine numerele: -3 -10 0 7 -5 7 51 -800 6 3798,
atunci pe ecran se va afia: 6 7 7 51 3798
(10p.)
4.
Un numr n se numete extraprim dac att el, ct i orice numr obinut prin permutarea
cifrelor lui n, sunt numere prime. De exemplu, numrul 113 este un numr extraprim
deoarece 113, 311, 131 sunt numere prime.
a) Scriei definiia complet a unui subprogram f, cu un parametru, subprogram care:
- primete prin intermediul parametrului a un numr natural cu cel mult 2 cifre (a>1)
- returneaz suma exponenilor divizorilor primi 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) Scriei un program C/C++ care citete de la tastatur un numr natural n, 2n99, i
care determin i afieaz pe ecran, folosind apeluri utile ale subprogramului f, mesajul DA
dac n este un numr extraprim, iar altfel afieaz mesajul NU.
(6p.)
Subiectul III
1.
Fiierului text NR.TXT conine pe o singur linie, separate prin cte un singur spaiu, cel
mult 100 de numere naturale, fiecare numr avnd cel mult 4 cifre. S se scrie un program
C/C++ care citete toate numerele din fiier i scrie pe ecran, pe o singur linie, separate
prin cte un spaiu, n ordine cresctoare, toate numerele din fiier care au cel puin 3 cifre.
Dac fiierul nu conine astfel de numere se va afia pe ecran mesajul NU EXISTA. (10p.)
4.
(4p.)
b) Scriei un program C/C++ care citete de la tastatur un numr natural n cu cel mult 8
cifre, dintre care cel puin una impar, i care determin i afieaz pe ecran, folosind
apeluri utile ale subprogramului cif, cel mai mare numr natural care poate fi obinut
utiliznd toate cifrele impare ale numrului n.
Exemplu: dac n=2152331 atunci se va afia pe ecran numrul 53311.
(6p.)
Subiectul III
Fiierul text NR.TXT conine pe o singur linie, separate prin cte un singur spaiu, cel mult
100 de numere naturale, fiecare numr avnd cel mult 4 cifre. Scriei un program C/C++
care citete numerele din fiierul NR.TXT i afieaz pe ecran, separate prin cte un spaiu,
n ordine descresctoare, toate numerele din fiier care au cel mult 2 cifre. Dac fiierul nu
conine astfel de numere se va afia pe ecran mesajul NU EXISTA.
(10p.)
4.
(4p.)
b) Scriei un program C/C++ care citete de la tastatur un numr natural n cu cel mult 8
cifre, dintre care cel puin una impar, i care determin i afieaz pe ecran, folosind
apeluri utile ale subprogramului cif, cel mai mic numr natural care poate fi obinut
utiliznd toate cifrele impare ale numrului n.
Exemplu: dac n=2152331 atunci se va afia pe ecran numrul 11335.
(6p.)
Subiectul III
Folosind modelul combinrilor se genereaz numerele naturale cu cte trei cifre distincte din
mulimea {1,2,3,4}, numere cu cifrele n ordine strict cresctoare, obinndu-se, n ordine:
123, 124, 134, 234. Dac se utilizeaz exact aceeai tehnic pentru a genera numerele
naturale cu cte patru cifre distincte din mulimea {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
3.
Scriei un program C/C++ care citete de la tastatur un numr natural n cu cel mult 8 cifre
(n10) i care creeaz fiierul text NR.TXT ce conine numrul n i toate prefixele nenule
ale acestuia, pe o singur linie, separate prin cte un spaiu, n ordine descresctoare a
valorii lor.
Exemplu: pentru n=10305 fiierul NR.TXT va conine numerele:
10305 1030 103 10 1
4.
(10p.)
Subprogramul f, cu un parametru:
- primete prin intermediul parametrului a un numr 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 su este 3.
a) Scriei definiia complet a subprogramului f.
(4p.)
(6p.)
Subiectul III
a. 11002
b. 20011
Utiliznd metoda backtracking sunt generate numerele de 3 cifre, avnd toate cifrele
distincte i cu proprietatea c cifrele aflate pe poziii consecutive sunt de paritate diferit.
tiind c primele ase soluii generate, sunt n aceast ordine, 103, 105, 107, 109, 123,
125 care este a noua soluie generat?
(6p.)
3.
(6p.)
(10p.)
Subiectul III
Folosind tehnica bactracking un elev a scris un program care genereaz toate numerele de
cte n cifre (0<n9), cifrele fiind n ordine strict cresctoare. Dac n este egal cu 5, cte
numere vor fi generate de program?
(6p.)
3.
Scriei un program C/C++ care citete de la tastatur un numr natural n (0<n100)i cele
3*n elemente ale tabloului unidimensional v, numere naturale cu cel mult patru cifre fiecare.
Tabloul este mprit n trei zone, cu cte n elemente fiecare: prima zon conine primele n
elemente din tablou, a doua zon conine urmtoarele n elemente din tablou, restul
elementelor fiind n zona a treia. Programul va interschimba elementele zonei unu cu
elementele zonei trei i va afia pe ecran toate elementele tabloului, astfel transformat,
separate prin cte un spaiu.
De exemplu, pentru n=3 i v=(1 2 3 4 5 6 7 8 9), se va afia pe ecran :
7 8 9 4 5 6 1 2 3
(10p.)
4.
(4p.)
Subiectul III
a. 135
24
b. 135
c. 531
42
24
d. 531
42
Utiliznd metoda backtracking sunt generate numerele de 3 cifre, avnd toate cifrele
distincte i cu proprietatea c cifrele aflate pe poziii consecutive sunt de paritate diferit.
tiind c primele trei soluii generate sunt, n aceast ordine, 103, 105, 107, cte dintre
numerele generate au suma cifrelor egal cu 6?
(6p.)
3.
Scriei un program C/C++ care citete de la tastatur un numr natural n (n50) i care
afieaz pe prima linie a fiierului BAC.TXT primele n numere pare, pe a doua linie primele
n-1 numere pare, ..., pe linia n primul numr par. Numerele vor fi afiate pe fiecare linie n
ordine cresctoare i vor fi separate prin cte un spaiu.
(10p.)
Exemplu: dac n=3 fiierul BAC.TXT va 0 2 4
0 2
avea coninutul alturat:
0
4.
(4p.)
b) Scriei un program C/C++ care citete de la tastatur un numr natural nenul n cu cel
mult 8 cifre i determin, prin apeluri utile ale subprogramelor p1 i p2, fr a accesa
cifrele numrului n, numrul de cifre egale cu 0 din scrierea lui n. Programul va afia pe
ecran numrul obinut.
Exemplu: dac n este 102030, programul va afia valoarea 3.
(6p.)
Subiectul III
Utiliznd metoda backtracking sunt generate toate numerele de 3 cifre, avnd cifrele n
ordine cresctoare, iar cifrele aflate pe poziii consecutive sunt de paritate diferit. tiind c
primele cinci soluii generate sunt, n aceast ordine, 123, 125, 127, 129, 145, care este
cel de al 8-lea numr generat?
(6p.)
3.
(4p.)
(6p.)
Subiectul III
Folosind tehnica bactracking un elev a scris un program care genereaz toate numerele de
cte n cifre(0<n9), cifrele fiind n ordine strict cresctoare. Dac n este egal cu 5, cte
numere care au prima cifr 4 vor fi generate de program?
(6p.)
3.
Scriei un program C/C++ care citete de la tastatur un numr natural n (n100) i apoi
cele n elemente, numere naturale cu cel mult 4 cifre fiecare, ale unui tablou unidimensional
a. Programul determin i afieaz pe prima linie a ecranului suma celor n elemente ale
tabloului, pe a doua linie a ecranului suma primelor n-1 elemente i aa mai departe astfel
nct pe linia n-1 se va afia suma primelor 2 elemente, iar pe linia n primul element al
tabloului.
10
Exemplu: dac n=4, iar tabloul are elementele
6
a=(1,2,3,4) programul va afia valorile
3
alturate:
(10p.)
1
4.
Subiectul III
1.
else
if (n%2==0)
return n%10+f(n/10);
else return f(n/10);
3.
4.
Scriei un program C/C++ care citete de la tastatur un numr natural nenul n i apoi n
numere naturale, cu maximum 9 cifre fiecare. Programul calculeaz i afieaz pe ecran, cte
numere prime conine irul citit.
Exemplu: pentru n=5 i valorile 12 3 9 7 1 se va afia pe ecran valoarea 2 (n irul dat
exist dou numere prime i anume 3 i 7).
(10p.)
Subiectul III
1.
3.
Se citesc de la tastatur dou valori naturale m i n (m<=100, n<=100), iar apoi m+n numere
ntregi de cel mult 9 cifre fiecare. Dintre cele m+n numere citite, primele m sunt ordonate
strict cresctor, iar urmtoarele n sunt, de asemenea, ordonate strict cresctor. Se cere s
se afieze pe ecran cte din cele m+n numere au fost citite o singur dat.
Exemplu: pentru m=6 i n=9 i valorile 1, 2, 3, 4, 7, 20, 3, 5, 7, 8, 9, 10, 12, 20, 24, se va
afia valoarea 9 (numerele care au fost citite o singur dat sunt 1 2 4 5 8 9 10 12 24).
a) Descriei un algoritm de rezolvare a acestei probleme, eficient din punct de vedere al
timpului de executare i al spaiului de memorie utilizat, explicnd n ce const eficiena
acestuia.
(4p.)
b) Scriei programul C/C++ corespunztor algoritmului descris.
(6p.)
4.
(3p.)
b) Scriei programul C/C++ care citete de la tastatur un numr natural n, cu cel mult 8 cifre,
i afieaz pe ecran numrul de cifre distincte ale numrului n. Se vor folosi apeluri utile ale
funciei nr.
(7p.)
Exemplu: pentru n=15356 se va afia valoarea 4 deoarece numrul conine 4 cifre distincte
i anume 1, 3, 5 i 6.
Subiectul III
1.
Trei biei, 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 conin cel puin o fat i cel puin un biat). 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?
(6p.)
3.
4.
(10p.)
Subiectul III
1.
else
if (n%10==0)
return f(n/10);
else
return (n%10) * f(n/10);
3.
Fiierul text BAC.TXT conine mai multe numere naturale cu cel mult 6 cifre fiecare, cte un
numr pe fiecare linie a fiierului. Scriei un program C/C++ care afieaz pe ecran toate
numerele din fiier, cte 5 numere pe fiecare linie, separate prin cte un spaiu, cu excepia
ultimei linii care poate conine mai puin de 5 numere.
(10p.)
4.
(4p.)
b) Scriei programul C/C++ care, utiliznd apeluri utile ale subprogramului prim, afieaz
pe ecran toate numerele prime de dou cifre care, citite invers (de la dreapta la stnga),
sunt tot prime. Un astfel de numr este de exemplu 13 pentru c att 13 ct i 31 sunt
numere prime.
(6p.)
Subiectul III
Cte numere de trei cifre pot fi construite folosind doar cifre pare?
a. 125
b. 100
c. 64
(4p.)
d. 128
3.
S se scrie un program C/C++ care citete de la tastatur mai multe numere naturale de cel
mult 9 cifre fiecare. Citirea se termin la ntlnirea valorii 0. Programul determin i afieaz
pe ecran de cte ori apare cifra 5 n scrierea tuturor numerelor citite.
Exemplu: dac se citesc numerele 12 5 6535 1 86 573 0, se va afia valoarea 4.
(10p.)
4.
n fiierul text BAC.IN se gsesc, pe o singur linie, separate prin cte un spaiu, mai multe
numere naturale de cel mult 6 cifre fiecare. Se cere s se determine i s se afieze pe
ecran ultimul numr impar din fiierul BAC.IN. Dac n fiier nu exist niciun numr impar
se va scrie pe ecran mesajul Nu exist numere impare.
Exemplu: dac fiierul BAC.IN conine valorile: 12 6 25 68 13 8 24 31 42 se va
afia 31.
a) Descriei n limbaj natural un algoritm eficient, din punct de vedere al spaiului de
memorie i al timpului de executare, pentru rezolvarea acestei probleme, explicnd n ce
const eficiena acestuia.
(4p.)
b) Scriei programul C/C++ corespunztor algoritmului descris.
(6p.)
Subiectul III
1.
Un algoritm genereaz n ordine cresctoare toate numerele de n cifre, folosind doar cifrele
3, 5 i 7. Dac pentru n=5, primele 5 soluii generate sunt 33333, 33335, 33337,
33353, 33355, precizai care sunt ultimele 3 soluii generate, n ordinea generrii.
(6p.)
3.
Scriei programul C/C++ care citete de la tastatur elementele unui tablou unidimensional
cu exact 10 numere naturale, mai mici dect 1000, determin i afieaz pe ecran,
separate prin cte un spaiu, numrul de elemente din ir care sunt multipli ai numrului 13
i, n continuare, poziiile pe care acestea se gsesc 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 afia numerele 4 3
5 9 10.
(10p.)
4.
Subprogramul cifrak are 2 parametri, n, prin care primete un numr natural cu maximum
9 cifre, i k, prin care primete un numr natural (k9). Subprogramul returneaz numrul
de cifre ale numrului n care sunt egale cu valoarea k.
Exemplu: dac n=233433, iar k=3, subprogramul va returna valoarea 4.
a) Scriei definiia complet a subprogramului cifrak.
(4p.)
b) n fiierul numere.txt sunt memorate mai multe numere naturale (maximum 1000 de
numere cu maximum 9 cifre fiecare). Fiecare linie a fiierului conine cte un numr. Scriei
programul C/C++ care, folosind apeluri ale subprogramului cifrak, afieaz pe ecran,
separate prin cte un spaiu, toate numerele din fiier care conin exact 3 cifre de 0.
Exemplu: dac fiierul numere.txt conine
260070
39008
70009
se vor afia numerele 260070 70009.
(6p.)
Subiectul III
Un algoritm genereaz n ordine descresctoare toate numerele de 5 cifre, fiecare dintre ele
avnd cifrele n ordine strict cresctoare. tiind c primele 5 soluii generate sunt 56789,
46789, 45789, 45689, 45679, precizai care sunt ultimele 3 soluii generate, n ordinea
generrii.
(6p.)
3.
Scriei definiia complet a subprogramului interval care are 2 parametri prin care
primete un tablou unidimensional cu maximum 100 de numere naturale mai mici dect
1000 i numrul de elemente din tabloul unidimensional. Subprogramul returneaz
numrul de elemente din tabloul unidimensional care aparin 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.
(10p.)
4.
Pe prima linie a fiierului numere.txt sunt memorate cel mult 90 de numere naturale, mai
mici dect 1000 fiecare, separate prin cte un spaiu. Se cere s se determine, apelnd
subprogramul interval definit la punctul anterior, numrul de elemente din fiier care sunt
mai mici sau egale cu ultimul numr din fiier. Numrul determinat se afieaz pe ecran.
Exemplu: dac fiierul numere.txt conine, n aceast ordine, numerele 6 267 13 45
628 7 79 101 se va afia 6.
a) Descriei succint, n limbaj natural, strategia de rezolvare.
(4p.)
(6p.)
Subiectul III
1.
Un algoritm genereaz, n ordine lexicografic, toate irurile alctuite din cte n cifre binare
(0 i 1). tiind c pentru n=5, primele 4 soluii generate sunt 00000, 00001, 00010, 00011,
precizai care sunt ultimele 3 soluii generate, n ordinea obinerii lor.
(6p.)
3.
4.
n fiierul numere.txt sunt memorate cel mult 90 de numere reale, separate prin cte un
spaiu. Se cere s se determine, folosind subprogramul count definit la punctul anterior, i
s se afieze pe ecran, numrul de elemente din ir care sunt mai mari sau cel puin egale
cu jumtate din valoarea ultimului element al irului.
Exemplu: dac fiierul numere.txt conine, n aceast ordine, numerele 6 12.5 5
12.5 11.2 45 25 se va afia 4.
a) Descriei succinct, n limbaj natural, strategia de rezolvare.
(4p.)
(6p.)
Subiectul III
1.
3.
4.
n fiierul text nr1.txt sunt memorate pe prima linie dou valori, n i m, de cel mult 2 cifre
fiecare, separate prin spaiu, iar pe fiecare dintre urmtoarele n linii sunt memorate cte m
numere reale, separate prin cte un spaiu. Se cere scrierea n fiierul text nr2.txt a
numerelor de pe fiecare dintre cele n linii ale fiierului nr1.txt, numerele de pe fiecare linie
fiind aranjate astfel nct valorile pozitive s se afle la nceput i cele negative la sfrit.
Ordinea n cadrul secvenei de valori pozitive, respectiv n cadrul secvenei de valori
negative, poate fi oricare. Cele m numere de pe o linie a fiierului nr1.txt se vor afia pe
cte o linie a fiierului nr2.txt, separate prin cte un spaiu. Se vor folosi apeluri utile ale
subprogramului aranjare, definit la punctul anterior.
Exemplu: pentru fiierul: nr1.txt se poate obine fiierul nr2.txt
3 5
3 -6 -1 9 2
3 9 2 -6 -1
5 -3 -8 -4 7
5 7 -3 -8 -4
-7 6 9 3 -2
6 9 3 -7 -2
a) Descriei succint, n limbaj natural, strategia de rezolvare.
(4p.)
(6p.)
Subiectul III
1.
3.
4.
n fiierul nr1.txt sunt memorate pe prima linie dou valori, n i m, de cel mult 3 cifre
fiecare, separate prin spaiu, iar pe fiecare dintre urmtoarele n linii ale fiierului sunt
memorate cte m numere ntregi, cu cel mult 4 cifre fiecare, separate prin cte un spaiu. Se
cere scrierea n fiierul nr2.txt a numerelor de pe fiecare dintre cele n linii ale fiierului
nr1.txt, numerele de pe fiecare linie fiind aranjate astfel nct valorile nule s se afle la
nceputul irului i cele nenule la sfrit. . Ordinea n cadrul secvenei de elemente nenule
poate fi oricare. Cele m numere de pe o linie a fiierului nr1.txt se vor scrie pe cte o linie
a fiierului nr2.txt, separate prin cte un spaiu. Se vor folosi apeluri ale subprogramului
nule, definit la punctul anterior.
Exemplu: pentru fiierul: nr1.txt se poate obine fiierul nr2.txt
3 5
3 0 0 9 2
0 0 3 9 2
5 0 0 0 7
0 0 0 5 7
0 6 9 3 0
0 0 6 9 3
a) Descriei succint, n limbaj natural, strategia de rezolvare.
(4p.)
(6p.)
Subiectul III