Sunteți pe pagina 1din 4

1.

Să se scrie un program Pascal/C/C++ care citeşte o matrice cu m linii, n


coloane (0<m,n<20) şi elemente numere naturale, elimină toate cifrele 5 din
componenţa elementelor matricei  şi afişează pe ecran matricea obţinută, câte o linie din
matrice pe o linie de ecran, elementele pe o linie find separate câte două printr-un spaţiu.
Dacă în matrice există un element a cărui valoare conţine doar cifra 5, după modificare,
acesta va avea valoarea 0.

Exemplu: Se consideră matricea:


25 678 5951 555
12  456 5551 45
5   455  777     7
Se va afişa:
2    678   91  0
12  46    1    4
0    4     777 7
Barem:
0,5 puncte eliminarea unei cifre dintr-un  element
1 punct eliminare tuturor cifrelor 5 dintr-un element
0,5 puncte realizarea eliminărilor în tot vectorul

2. Precizați ce returnează un apel al funcției următoare cu parametru un număr


natural strict pozitiv:

Alegeţi răspunsul corect din variantele de mai


jos:
a) numărul de cifre ale parametrului;
b) numărul de cifre pare ale parametrului;
c) numărul de cifre impare ale parametrului; *
d) nu se poate preciza exact;

3. Precizați ce returnează un apel f(3) al funcției următoare:

a) 1
b) 3
c) 6
d) nu se poate preciza exact; *

4. Ce va afisa următorul program?


program p1;
var s1,s2,s3:string[50];
    k:integer;
begin
 s1:='imi place '; s2:='ciocolata';
 s3:='scoala';
 s1:=s1+s3;
 writeln(s1);
 delete(s1,11,6);
 s1:=s1+s2;
 writeln(s1);
end.

Raspuns:
imi place scoala
imi place ciocolata

5. Scrieţi un program în C/C++/Pascal care citeşte de la tastatură  n numere naturale şi


afişează pe ecran, în ordine descrescătoare, valorile distincte citite.
Exemplu: n=9 şi numerele citite de la tastatură 2,  3,  5,  2,  8,  8, 0, -2,  -2
pe ecran se va afişa: 8, 5, 3, 2, 0, -2.

Barem:
- declararea corectă a variabilelor simple 0.25p.
- declararea vectorului 0.25p.
-  determinarea valorilor distincte 1p.
- afişarea pe ecran a datelor de ieşire  0.5p.

6. Se citeşte de la tastatură o matrice cu n linii şi m coloane ale cărei elemente sunt numere
reale distincte. Să se formeze un vector în care se vor reţine elementele maxime de pe
fiecare coloană a matricei și să se afișeze în ordine descrescătoare pe ecran elementele
acestui vector.
Exemplu:
n=2, m=3 și matricea
2 3.5 7.80
6 8.75 2.10
se va fișa pe ecran: 8.75  7.80  6

Barem:
1p. declararea variabilelor și citirea datelor
1p. determinarea maximului fiecărei coloane
1p. construirea vectorului
1p. afișarea în ordine descrescătoare a valorilor memorate în vector

7. Se citesc de la tastatură trei numere naturale n, m  şi k iar apoi n*m elemente numere
naturale ce se vor memora într-o matrice cu n linii și m coloane (0<n,m<30). Să se scrie
un program Pascal/C/C++ care afişează în ordine crescătoare pe ecran toate elementele
din matrice mai mari decât k. Dacă în matrice nu există elemente care să îndeplinească
condiţiile anterioare se va afişa 0.
 Exemplu: Pentru n=5, m=3, k=100 şi matricea
 302  21   32
   3   33    82
 54  135  722
 63   24   623
123  45   222
Se va afişa: 123, 135, 222, 623, 722

Barem:
0.5p. declararea variabilelor;
0.25p. citirea datelor;
0.5p. identificarea elementelor din matrice mai mari decât k;
0.75p. afişarea în ordine crescătoare a elementelor ce îndeplinesc condiţiile problemei;

8. Se consideră secvenţa de program Pascal de mai jos:


s:=0;
for i:=1 to m do
   if not((a[i]>=6) or (a[i]<=2))  then s:=s+a[i];
Ce valoare va avea variabila s după executarea secvenţei Pascal de mai sus, pentru m=6 şi
vectorul a de mai jos:
4 3 2 1 9 0
Alegeţi răspunsul corect din variantele de mai jos:
a) 7 *
b) 9
c) 11
d) 0

9. Fie v un vector de numere întregi. Sǎ se construiascǎ un vector w, astfel încât


w[i]=numǎrul de apariţii ale lui v[i] în vectorul v. Sǎ se afişeze cei doi vectori, fiecare pe
câte o linie. Scrieţi programul C/C++/Pascal care respectă cerinţele problemei.

Exemplu: Pentru v=(1, 8, 2, 1, 8, 7, 2, 1, 8) se obţine w=(3, 3, 2, 3, 3, 1, 2, 3, 3).

Barem:
1p. declararea variabilelor şi citirea datelor
2p. construirea vectorului w
1p. afişarea datelor de ieşire

10. Scrieţi un program Pascal/C/C++ care citeşte de la tastatură un număr natural


n (0<n<20) şi cele n elemente ale unui vector, numere naturale de maxim 9 cifre.
Programul va afişa pe ecran suma elementelor vectorului care au cifra unităţilor
egală cu 3.
 Exemplu: Pentru n=4 şi vectorul de mai jos:
322 3 323 324
 Se va afişa  326  (verifică proprietatea numerele:  3, 323).

Barem:
1 punct citirea vectorului;
1 punct calcul cifra unităţilor;
1 punct verificarea pentru fiecare element dacă are cifra unităţilor egală cu 3;
1 punct calcul sumei cerute şi afişarea ei.

11. Considerând declararea de mai jos a tabloului unidimensional P cu maximum 10


elemente de tip Punct, care dintre următoarele secvențe Pascal realizează în mod corect
citirea de la tastatură al celui de-al doilea element al tabloului P ?
type Punct = record
  x, y:real;
end;
var P:array[0..9] of Punct;
Alegeţi răspunsul corect din variantele de mai jos:
a) read(P[2].x, P[2].y);
b) read(P.x[1], P.y[1]);
c) read(P.x[2], P.y[2]);
d) read(P[1].x, P[1].y); *

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