Sunteți pe pagina 1din 9

SUBIECTE PROPUSE PENTRU

EXAMENUL DE ATESTAT PROFESIONAL LA INFORMATIC - 2014


Programare Pascal/C/C++
Matematic informatic, intensiv informatic
1. Se citesc din fiierul numere.in, de pe 2 linii consecutive, 2 numere mari scrise n baza 10,
fiecare avnd cel mult 50 de cifre. S se scrie un program care s calculeze suma lor, folosind
iruri n care se memoreaz cifrele numerelor. Rezultatul se va afia n fiierul numere.out.
Exemplu:
numere.in
1000000000099999
200001

numere.out
1000000000300000

2. Se citesc din fiierul pol.in, de pe prima linie, gradele a dou polinoame n,m (0n,m50). De
pe urmtoarele dou linii se citesc dou iruri de numere reale care reprezint coeficienii celor
dou polinoame, n ordinea cresctoare a gradelor. S se scrie un program care s construiasc n
memorie i s afieze n fiierul pol.out suma polinoamelor. Coeficienii sumei se vor afia cu
dou zecimale separai printr-un singur spaiu.
Exemplu:
pol.in
2 3
7 -1 1
5 3 -4 1

pol.out
3
12 2 -3 1

3. Se citesc din fiierul pol.in, de pe prima linie, gradele a dou polinoame n,m (0n,m50). De
pe urmtoarele dou linii se citesc dou iruri de numere reale care reprezint coeficienii celor
dou polinoame, n ordinea cresctoare a gradelor. S se scrie un program care s construiasc n
memorie i s afieze n fiierul pol.out produsul polinoamelor. Coeficienii produsului se vor
afia cu dou zecimale separai printr-un singur spaiu .
Exemplu:
pol.in
3 1
1 5 -2 1
2 1

pol.out
4
2 11 1 0 1

4. Se citesc din fiierul sort.in, de pe prima linie, 2 numere n i m (1n,m50). De pe urmtoarele


2 linii se citesc elementele a dou iruri de lungime n, respectiv m, , numere ntregi, de maxim 9
cifre, care sunt ordonate cresctor. S se scrie un program care s construiasc n memorie un ir
care conine rezultatul interclasrii celor dou iruri. irul rezultat se va afia n fiierul
sort.out.
Exemplu:
sort.in
5 4
1 3 4 7 8
1 2 3 6

sort.out
1 1 2 3 3 4 6 7 8

1/ 9

5. Se citesc din fiierul mult.in, de pe prima linie, 2 numere n i m (1n,m50). De pe


urmtoarele dou linii se citesc elementele a dou iruri de lungime n, respectiv m, numere
ntregi, de maxim 9 cifre. Elementele irurilor sunt distincte dou cate dou. Scriei un program,
care s construiasc n memorie un ir ce va conine intersecia celor dou iruri. Rezultatul se va
afia n fiierul mult.out.
Exemplu:
mult.in
5 4
1 3 4 7 8
1 2 3 6

mult.out
1 3

6. Se citesc din fiierul mult.in, de pe prima linie, 2 numere n i m (1n,m50). De pe


urmtoarele dou linii se citesc elementele a dou iruri de lungime n, respectiv m, numere
ntregi, de maxim 9 cifre. Elementele irurilor sunt distincte dou cate dou. S se scrie un
program care s construiasc n memorie un ir ce va conine diferena dintre primul ir i cel deal doilea ir. Rezultatul se va afia n fiierul mult.out.
Exemplu:
mult.in
5 4
1 3 4 7 8
1 2 3 6

mult.out
4 7 8

7. Se citesc din fiierul mult.in, de pe prima linie, 2 numere n i m (1n,m50). De pe


urmtoarele dou linii se citesc elementele a dou iruri de lungime n, respectiv m, numere
ntregi, de maxim 9 cifre. Elementele irurilor sunt distincte dou cate dou. S se scrie un
program, care s construiasc n memorie un ir ce va conine reuniunea celor dou iruri.
Rezultatul se va afia n fiierul mult.out.
Exemplu:
mult.in
5 4
1 3 4 7 8
1 2 3 6

mult.out
1 2 3 4 6 7 8

8. Se citete din fiierul mult.in, de pe prima linie, un numr n (1n50). De pe urmtoarea linie
se citesc elementele unui ir de lungime n, numere ntregi, de maxim 9 cifre. S se scrie un
program care s verifice dac irul citit conine numai elemente distincte.
Exemplu:
mult.in
5
1 3 4 7 8

da

9. Se citete din fiierul sort.in, de pe prima linie, un numr n (1n50). De pe urmtoarea linie
se citesc elementele unui ir de lungime n, numere ntregi, de maxim 9 cifre. S se scrie un
program care s realizeze sortarea cresctoare a elementelor irului folosind metoda seleciei.
Rezultatul se va afia n fiierul sort.out.
Exemplu:
sort.in
7
3 8 4 1 9 2 4

sort.out
1 2 3 4 4 8 9
2/ 9

10. Se citete din fiierul sort.in, de pe prima linie, un numr n (1n50). De pe urmtoarea linie
se citesc elementele unui ir de lungime n, numere ntregi, de maxim 9 cifre. S se scrie un
program care s realizeze sortarea cresctoare a elementelor irului folosind metoda inseriei.
Rezultatul se va afia n fiierul sort.out.
Exemplu:
sort.in
7
3 8 4 1 9 2 4

sort.out
1 2 3 4 4 8 9

11. Se citete din fiierul sort.in, de pe prima linie, un numr n (1n50). De pe urmtoarea linie
se citesc elementele unui ir de lungime n, numere ntregi, de maxim 9 cifre. S se scrie un
program care s realizeze sortarea cresctoare a elementelor irului folosind metoda numrrii.
Se va ine cont de faptul c n ir poate s apar un element i de mai multe ori. Rezultatul se va
afia n fiierul sort.out.
Exemplu:
sort.in
7
3 8 4 1 9 2 4

sort.out
1 2 3 4 4 8 9

12. Se citete din fiierul cmmdc.in, de pe prima linie, un numr natural n (1n50). De pe
urmtoarea linie se citesc n numere naturale de maxim 9 cifre.. S se scrie un program care s
calculeze cel mai mare divizor comun al celor n numere de pe linia a doua a fiierului. Rezultatul
se va afia n fiierul cmmdc.out.
Exemplu:
cmmdc.in
5
14 8 22 4 32

cmmdc.out
2

13. Se citete din fiierul exista.in, de pe prima linie, un numr n (1n50). De pe urmtoarea linie
se citesc n numere naturale de maxim 9 cifre reprezentnd elementele unui ir. S se scrie un
program care s verifice dac exist n ir trei elemente alturate care au acelai numr de
divizori.
Exemplu:
exista.in
8
9 4 15 6 22 12 3 14

Da

14. Se citete din fiierul progresie.in, de pe prima linie, un numr n (1n50). De pe urmtoarea
linie se citesc elementele unui ir de lungime n, numere ntregi, de maxim 9 cifre.. S se scrie un
program care s verifice dac elementele irului formeaz o progresie aritmetic sau o progresie
geometric. n caz afirmativ s se afieze tipul progresiei i raia, iar n caz negativ s se scrie un
mesaj corespunztor n fiierul progresie.out.
Exemplu:
progresie.in
5
2 6 18 54 162

progresie.out
elementele irului formeaz o progresie
geometric cu raia 3

3/ 9

15. Se citete un text din fiierul text.in. Textul are mai multe linii i mai multe cuvinte. Pe fiecare
linie cuvintele sunt desprite prin cte un singur spaiu sau prin semne de punctuaie. S se
afieze n fiierul text.out, pe linii consecutive, toate literele care apar n text, mpreun cu
frecvenele lor de apariie.
Exemplu:
text.in
Mama are un mar.
Ce mare e marul!

text.out
A6
C1
E4
M5
N1
R4
U-2

16. S se afieze n fiierul prietene.out toate perechile de numere prime prietene mai mici dect
un numr natural n citit de la tastatur (1n30000). Dou numere prime se numesc prietene
dac diferena lor n modul este mai mic sau egal cu 2.
Exemplu:
20

prietene.out
(2 3), (3 5), (5 7), (11 13), (17 19)

17. Se citete un numr natural n de la tastatur (1n30000). S se verifice dac n este numr
puternic. Un numr este puternic dac are mai muli divizori dect orice numr mai mic dect el.
Exemplu:
6
10

DA
NU

18. Se citete de la tastatur un numr natural k (1k50). S se determine cel mai mic numr natural
care are exact k divizori.
Exemplu:
5

16

19. Se citete din fiierul mat.in, de pe prima linie, un numr natural n (1n50) i de pe
urmtoarele n linii o matrice ptratic de numere ntregi, de maxim 9 cifre. S se verifice dac
matricea este ptrat magic (sumele elementelor pe linii, coloane i de pe cele dou diagonale, este
aceeai).
Exemplu
mat.in
3
4 3 8
9 5 1
2 7 6

da

20. Se citete din fiierul mat.in , de pe prima linie, un numr natural n (1n50), i de pe
urmtoarele n linii o matrice ptratic ce conine numere naturale de maxim 4 cifre. S se numere
elementele cu numr par de cifre aflate n triunghiul de sub diagonala principal a matricei i s
se afieze rezultatul pe ecran.
4/ 9

Exemplu
mat.in
4
1
4
13 3
14 22
222 11

4
12 3
22 5
2 34
3 31

21. Se citete din fiierul mat.in, de pe prima linie, un numr natural n (1n50), i de pe
urmtoarele n linii o matrice ptratic ce conine numere naturale de maxim 4 cifre. S se
calculeze suma elementelor prime aflate n triunghiul de deasupra diagonalei principale a
matricei i s se afieze rezultatul pe ecran.
Exemplu
mat.in
4
2
4
15 3
16 22
222 11

8
12 3
22 5
2 34
3 31

22. Se citete din fiierul mat.in, de pe prima linie, un numr natural n (1n50), i de pe
urmtoarele n linii o matrice ptratic ce conine numere naturale de maxim 4 cifre. S se verifice
dac exist elemente cu suma cifrelor par n triunghiul de sub diagonala secundar a matricei i
s se afieze rezultatul pe ecran.
Exemplu
mat.in
4
7 11 5 8
9 5 1 12
3 4 31 15
3 2 23 14

Da

23. Se citete din fiierul mat.in, de pe prima linie, un numr natural n, (1n50) i de pe
urmtoarele n linii o matrice ptratic ce conine numere naturale de maxim 4 cifre. S se verifice
dac toate elementele aflate n triunghiul de deasupra diagonalei secundare a matricei au aceeai
paritate i s se afieze rezultatul pe ecran.
Exemplu
mat.in
4
7 11 5 8
9 5 1 12
3 4 31 15
3 2 23 14

Da

24. Se citesc din fiierul mat1.in de pe prima linie, dou numere naturale n1(1n150) i m1
(1m1 50) i de pe urmtoarele n1 linii o matrice cu n1 linii i m1 coloane. Analog, se citesc
din fiierul mat2.in, de pe prima linie, dou numere naturale n2 (1n250) i m2 (1n50) i
de pe urmtoarele n2 linii o matrice cu n2 linii i m2 coloane. Elementele celor 2 matrice sunt
numere reale. S se scrie un program n care se calculeaz produsul celor dou matrice. Dac
produsul se poate calcula atunci se va afia matricea rezultat n fiierul mat.out, iar n caz
contrar se va afia un mesaj corespunztor.
5/ 9

Exemplu
mat1.in
2 3
3 1 2
5 2 3

mat2.in
3 2
5 1
0 2
1 1

mat.out
17 7
28 12

25. Se citesc din fiierul mat.in, de pe prima linie, dou numere naturale n i m (1n,m50) i de
pe urmtoarele n linii o matrice cu n linii i m coloane cu elemente numere ntregi, de maxim 9
cifre. S se scrie un program care afieaz n fiierul mat.out, cte unul pe linie, numerele din
matrice care sunt n acelai timp maxime pe linia i minime pe coloana pe care se afl. Dac nu
exist astfel de numere se va afia un mesaj corespunztor.
Exemplu
Mat.in
4
1
2
4

3
3
7
8

2
8
5

mat.out
3

2
1
2

26. Se citesc din fiierul mat.in , de pe prima linie, dou numere naturale n i m (1n,m50) i de
pe urmtoarele n linii o matrice cu n linii i m coloane cu elemente numere naturale, de maxim 9
cifre. S se scrie un program care afieaz n fiierul mat.out, cte unul pe linie, numerele din
matrice care au numr maxim de divizori
Exemplu
Mat.in
1 4
9 3 14 10
8 5 6 21
11 3 15 17

mat.out
14
10
8
6
21
15

27. Se citesc din fiierul mat.in , de pe prima linie, patru numere naturale n, m, l i c (1n,m50 ,
1l n, 1c m) i de pe urmtoarele n linii o matrice cu n linii i m coloane, cu elemente
numere ntregi, de maxim 9 cifre. S se scrie un program care s tearg din matrice linia l i
coloana c i afieaz matricea rezultat n fiierul mat.out.
Exemplu
Mat.in
1 4 2 3
1 2 3 4
5 6 7 8
9 10 11 12

mat.out
1 2 4
9 10 12

28. Se citete un numr natural n (1n15). S se afieze n fiierul Pascal.out triunghiul lui Pascal
care are n + 1 linii i n + 1 coloane. Regulile dup care se construiete triunghiul lui Pascal sunt:
a. Pe coloana 0 i pe diagonala principal se pune 1.
b. Restul elementelor din triunghi se obin adunnd elementul aflat pe linia anterioar
pe aceeai coloan cu el cu elementul aflat pe linia anterioar i pe coloana
anterioar.
6/ 9

Exemplu
3

Pascal.out
1
11
121
1331

29. Se citesc de la tastatur numitorii i numrtorii (numere ntregi de maxim 9 cifre) a dou fracii.
S se scrie un program care simplific suma celor dou fracii i afieaz pe ecran numitorul i
numrtorul fraciei rezultate.
Exemplu
1213

56

30. Se citesc de la tastatur dou cuvinte de maxim 20 de litere. S se scrie un program care verific
dac unul este anagrama celuilalt. Un cuvnt este anagram pentru altul dac cele dou cuvinte
conin aceleai litere de acelai numr de ori, dar nu neaprat n aceeai ordine.
Exemplu
mare
rame
mare
mere

Da
Nu

31. Se citete din fiierul sir.in, de pe prima linie, un numr natural n (1n50). De pe urmtoarea
linie se citesc n numere naturale de maxim 9 cifre. S se scrie un program care s afi eze pe
ecran cte din elementele irului sunt termeni ai irului lui Fibonacci. (irul lui Fibonacci
1,1,2,3,5,8,13,).
Exemplu
sir.in
7
10 2 17 8 1 9 1

32. Se citesc din fiierul numere.in doua numere naturale de maxim 9 cifre. Se cere s se afieze pe
ecran mesajul DA, dac cele dou numere sunt termeni consecutivi ai irului lui Fibonacci,
respectiv mesajul NU, daca cele dou numere nu sunt termeni consecutivi ai irului lui
Fibonacci. (irul lui Fibonacci 1,1,2,3,5,8,13,).
Exemplu
numere.in
8 5
21 13
21 10

DA
DA
NU

33. Se citete din fiierul sir.in, de pe prima linie, un numr natural n (1n50). De pe urmtoarea
linie se citesc n numere naturale de maxim 9 cifre. S se afieze toate perechile de elemente egal
deprtate de mijloc, care au aceeai suma a cifrelor.
Exemplu
sir.in
9
72123 34 45 1000 456 10 326 234 456
7/ 9

72123 456
1000 10

34. Se citete din fiierul text.in un ir cu maxim 255 de caractere, format doar din litere mici i
spaii. Se consider cuvnt orice secven format doar din litere adiacente. Cuvintele sunt
separate prin exact un spaiu. S se afieze cuvintele palindrom din text. Dac nu exist cuvinte
palindrom atunci se va afia mesajul NU EXIST.
Exemplu
text.in
aerisirea este blocata de un cojoc

aerisirea
cojoc

35. Se citete din fiierul text.in un ir cu maxim 255 de caractere, format doar din litere mici i
spaii. Se consider cuvnt orice secven format doar din litere adiacente. Cuvintele sunt
separate prin exact un spaiu. S se afieze n fiierul rime.out toate perechile de cuvinte care
rimeaz. Dou cuvinte rimeaz dac au ultimele dou litere identice.
Exemplu
text.in
zic cei de la sate ca soarele puternic ne arde

rime.out
zic puternic
de arde

36. Se citete din fiierul text.in un ir de maxim 255 de caractere. S se determine cea mai lung
secven de cifre alturate din ir. Secvena gsit se va afia pe ecran.
Exemplu
text.in
A12abac12223defg895

12223

37. Se citete din fiierul text.in un ir cu maxim 255 de caractere, format doar din litere (mici i
mari) i spaii. Se consider cuvnt orice secven format doar din litere adiacente. Cuvintele
sunt separate prin exact un spaiu. S se afieze cuvintele irului dat, n ordine alfabetic.
Exemplu
text.in
anul trecut aveam alte prioritati

alte anul aveam prioritati trecut

38. Se citete din fiierul text.in un ir cu maxim 255 de caractere, format doar din litere (mici i
mari) i spaii. Se consider cuvnt orice secven format doar din litere adiacente. Cuvintele
sunt separate prin exact un spaiu. S se afieze cuvintele irului dat, n ordinea cresctoare a
lungimilor lor, cte un cuvnt pe fiecare linie a ecranului.
Exemplu
text.in
examen de atestat profesional la informatica

de
la
examen
atestat
profesional
informatica

39. Fiierele X.txt si Y.txt conin fiecare numele a 7 persoane, cte un nume pe fiecare linie avnd cel
mult 25 caractere. tiind c, n fiecare fiier numele sunt memorate n ordine alfabetic, scriei
un program care s citeasc din cele dou fiiere numele i s afieze pe ecran toate numele din
cele dou fiiere n ordine alfabetic, separate printr-un singur spaiu. Dac un nume se afl n
ambele fiiere, atunci el se va afia o singur dat.
8/ 9

Exemplu
X.txt
Ana
Dana
Daniel
Ene
Mara
Nae
Paul

Y.txt
Angi
Cora
Dora
Horia
Oana
Paul
Tibi

Ana Angi Cora Dana Daniel Dora Ene Horia Mara Nae
Oana Paul Tibi

40. Se citesc dou triplete de numere naturale (d1,m1,y1), respectiv (d2,m2,y2). S se verifice dac
cele dou triplete reprezint dou date calendaristice valide, n care d1,d2 = ziua (day), m1,m2 =
luna (month), y1,y2 = anul (year). Se consider an bisect orice an care fie este divizibil cu 400,
fie este divizibil cu 4 dar nu i cu 100.
Dac cele dou triplete reprezint dou date calendaristice valide, atunci n ipoteza c prima dat
reprezint ziua de natere a unei persoane, iar a doua dintre ele reprezint data curent, s se
determine, n ani mplinii, vrsta persoanei la data curent.
Se garanteaz c prima dintre date este anterioar celei de-a doua.
Exemplu
29 2 2001
30 5 2013
25 4 1995
20 5 2013
25 6 1995
10 5 2013

data invalida
18 ani
17 ani

9/ 9

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