Sunteți pe pagina 1din 4

Concursul de ocupare

a posturilor didactice/catedrelor rămase vacante/rezervate


4 septembrie 2019
Bilet. 1

SUBIECTUL I
1. 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 care se afişează, în urma executării algoritmului, dacă se citeşte pentru n valoarea 23456
şi pentru k valoarea 3. (1p.)
b) Scrieţi două seturi distincte de date de intrare, astfel încât, pentru fiecare dintre ele, în urma executării
algoritmului, să se afişeze valoarea 234. (2p.)
c) Scrieţi în pseudocod un algoritm echivalent cu cel dat în care să se înlocuiască structura cât
timp ... execută cu o structură repetitivă cu test final. (1p.)
d) Scrieţi programul C/C++ corespunzător algoritmului dat. (1p.)

citeşte n,k
(numere naturale nenule)
nr←0
p←1
┌cât timp n≠0 şi k≠0 execută
│┌dacă n%2≠0 atunci
││ nr←nr + [n/10]%10*p
││ p←p*10
││altfel
││ k←k-1
│└■
│ n← [n/10]
└■
scrie nr

SUBIECTUL II

1. a) Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare a apelului f (121, 1);?
b) Dar pentru f(121,10); ? (2p.)

void f(long n, int i)


{if (n==0) cout<<i;
if(n%3>0) f(n/3,i+1);}

2. Se consideră subprogramul, f, definit alăturat.


a) Ce valoare are f(30)? (1p.)
b) Scrieţi toate valorile de două cifre pe care le poate avea x astfel încât f(x)=1. (2p.)

int f(int n)
{ if (n==0) return 0;
return n%2+f(n/2);
}
Concursul de ocupare
a posturilor didactice/catedrelor rămase vacante/rezervate
4 septembrie 2019
Bilet. 2

SUBIECTUL I
1. 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ă, în urma executării algoritmului, dacă se citeşte pentru n valoarea 232493. (1p.)
b) Scrieţi două valori naturale distincte care pot fi citite pentru n astfel încât, în urma executării algoritmului
să se afişeze numărul 9654. (2p.)
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. (1p.)
d) Scrieţi programul C/C++ corespunzător algoritmului dat. (1p.)

citeşte n (număr natural nenul)


nr←0
┌pentru a←9,0,-1 execută
│ m←n
│┌cât timp m≠0 şi m%10≠a execută
││ m← [m/10]
│└■
│┌dacă m≠0 atunci
││ nr←nr*10+m%10
│└■
└■
scrie nr

SUBIECTUL II

1. a) Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare a apelului f (121, 1);?
b) Dar pentru f(121,10); ? (2p.)

void f(long n, int i)


{if (n==0) cout<<i;
if(n%3>0) f(n/3,i+1);}

2. Se consideră subprogramul, f, definit alăturat.


a) Ce valoare are f(30)? (1p.)
b) Scrieţi toate valorile de două cifre pe care le poate avea x astfel încât f(x)=1. (2p.)

int f(int n)
{ if (n==0) return 0;
return n%2+f(n/2);
}
Concursul de ocupare
a posturilor didactice/catedrelor rămase vacante/rezervate
4 septembrie 2019
Bilet. 3

SUBIECTUL I
1. 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 care se afişează, în urma executării algoritmului, dacă se citeşte pentru n valoarea 23456
şi pentru k valoarea 3. (1p.)
b) Scrieţi două seturi distincte de date de intrare, astfel încât, pentru fiecare dintre ele, în urma executării
algoritmului, să se afişeze valoarea 234. (2p.)
c) Scrieţi în pseudocod un algoritm echivalent cu cel dat în care să se înlocuiască structura cât
timp ... execută cu o structură repetitivă cu test final. (1p.)
d) Scrieţi programul C/C++ corespunzător algoritmului dat. (1p.)

citeşte n,k
(numere naturale nenule)
nr←0
p←1
┌cât timp n≠0 şi k≠0 execută
│┌dacă n%2≠0 atunci
││ nr←nr + [n/10]%10*p
││ p←p*10
││altfel
││ k←k-1
│└■
│ n← [n/10]
└■
scrie nr

SUBIECTUL II

1. a) Pentru definiţia de mai jos a subprogramului f, ce se afişează ca urmare a apelului f (15, 2);?
b) Dar pentru f(15,3); ? (2p.)

void f (int n, int x)


{ if(x>n) cout<<’*’;
else
{ f(n,x+4);cout<<x%10; }
}

2. Se consideră subprogramul, f, definit alăturat.


a) Ce valoare are f(30)? (1p.)
b) Scrieţi toate valorile de două cifre pe care le poate avea x astfel încât f(x)=1. (2p.)

int f(int n)
{ if (n==0) return 0;
return n%2+f(n/2);
}
Proba orala la INFORMATICĂ
BAREM DE EVALUARE SI DE NOTARE
Limbajul C++

SUBIECTUL I (5 puncte)

1 Bilet 1 Bilet 2 Bilet 3


a. 24 94232 24
b. Rezolvarea corecta Rezolvarea corecta Rezolvarea corecta
- echivalenţa prelucrării - echivalenţa prelucrării realizate, - echivalenţa prelucrării realizate,
c.
realizate, conform cerinţei conform cerinţei conform cerinţei
d. Rezolvarea corecta Rezolvarea corecta Rezolvarea corecta

SUBIECTUL II (5 puncte)

Bilet 1 Bilet 2 Bilet 3


1. a 6 6 *4062
2. b 15 15 *5173
2. a 4 4 4
2. b 16, 32, etc. 16, 32, etc. 16, 32, etc.

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