Sunteți pe pagina 1din 10

1

SUBIECTE PROPUSE PENTRU ATESTAT INFORMATICA Programare Pascal/C/C++ Matematic informatic, intensiv informatic 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. numere.out 1000000000300000

1.

Exemplu: numere.in 1000000000099999 200001


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. pol.out 3 12 2 -3 1

Exemplu: pol.in 2 3 7 -1 1 5 3 -4 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. pol.out 4 2 11 1 0 1

Exemplu: pol.in 3 1 1 5 -2 1 2 1

2 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
5.

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

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. mult.out 1 3

Exemplu: mult.in 5 4 1 3 4 7 8 1 2 3 6
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 de-al doilea ir. Rezultatul se va afia n fiierul mult.out. mult.out 4 7 8

Exemplu: mult.in 5 4 1 3 4 7 8 1 2 3 6
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. mult.out 1 2 3 4 6 7 8

Exemplu: mult.in 5 4 1 3 4 7 8 1 2 3 6

3 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 citesc din fiierul mult.in, de pe prima linie, elementele unui liste simplu nlnuite, numere ntregi, de maxim 9 cifre. S se scrie un program care s verifice dac lista citit conine numai elemente distincte. Exemplu: mult.in 1 3 1 7 8 nu

10. Se citesc din fiierul sort.in, de pe prima linie, elementele unei liste simplu nlnuite, numere ntregi, de maxim 9 cifre. S se scrie un program care sorteaz cresctor elementele listei folosind metoda bulelor. Rezultatul se va afia n fiierul sort.out. Exemplu: sort.in 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 seleciei. Rezultatul se va afia n fiierul sort.out. Exemplu: sort.in 7 3 8 4 1 9 2 4
12.

sort.out 1 2 3 4 4 8 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 inseriei. Rezultatul se va afia n fiierul sort.out. sort.out 1 2 3 4 4 8 9

Exemplu: sort.in 7 3 8 4 1 9 2 4
13.

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 3

4 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

14. 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
15.

cmmdc.out 2

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. Da

Exemplu: exista.in 8 9 4 15 6 22 12 3 14

16. Se citete din fiierul frecv.in, de pe prima linie, un numr n (1n 50). 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 introduc ntr-o list simplu nlnuit elementele distincte ale irului, mpreun cu frecvena lor de apariie, i afieaz rezultatul n fiierul frecv.out. Exemplu: frecv.in 11 9 4 15 6 12 12 3 15 1 12 4 frecv.out 9 apare de 1 ori 4 apare de 2 ori 15 apare de 2 ori 6 apare de 1 ori 12 apare de 3 ori 3 apare de 1 ori 1 apare de 1 ori

17.

Se citete din fiierul progres.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 progres.out. 4

5 Exemplu: progres.in 5 2 6 18 54 162 progres.out elementele irului formeaz o progresie geometric cu raia 3

18. 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 L-1 M5 N1 R4 U-2

19.

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: prietene.out (2 2), (2 3), (3 2), (3 3), (3 5), (5 3), (5 5), (5 7), (7 5), (7 7), (11 11), (11 13), (13 11), (13 13), (17 17), (17 19), (19 17), (19 19) 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 decat orice numr mai mic dect el. Exemplu: DA NU

20

20.

6 10

21. 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 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 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, sunt aceleai). 5

6 Exemplu mat.in 3 4 3 8 9 5 1 2 7 6 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 numere elementele cu numr par de cifre aflate n triunghiul de sub diagonala principal a matricei i s se afieze rezultatul pe ecran. Exemplu mat.in 4 1 4 12 3 13 3 22 5 14 22 2 34 222 11 3 31 4

24. 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 12 3 15 3 22 5 16 22 2 34 222 11 3 31 8

25. 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

7 26. 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
27.

Da

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 (1m250) i de pe urmtoarele n2 linii o matrice cu n2 linii i m2 coloane. Elementele celor 2 matrici sunt numere reale. S se scrie un program n care se calculeaz produsul celor dou matrici. 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. mat.out 17 7 28 12

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

28. 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 34 1 3 2 2 2 7 8 1 4 8 5 2 mat.out 3

29. 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. 7

8 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 mat.out 3 4 14 9 3 14 10 10 8 5 6 21 8 11 3 15 17 6 21 15 30. 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 3 4 2 3 1 2 3 4 5 6 7 8 9 10 11 12 mat.out 1 2 4 9 10 12

31. Se citete un numr natural n (1n15). S se afieze n fiierul Pascal.out trunghiul lui Pascal care are n + 1 linii i n + 1 coloane. Regulile dup care se construiete triunghiul lui Pascal sunt: a. Pe prima coloana 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. Exemplu 3 pascal.out 1 11 121 1331 32. 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

33. Se citesc din fiierul lista.in numere ntregi de maxim 9 cifre, pn la ntlnirea sfritului de fiier. S se scrie un program care pune ntr-o lista dublu nlnuit elementele nenule i apoi sterge din list elementele pare. Listele rezultate se vor afia n fiierul lista.out. Exemplu 12 0 3 1 4 0 11 12 3 1 4 11 3 1 11 8

9 34. Se citete de la tastatur un numr natural n (1n10). S se afieze n fiierul permut.out, cte una pe linie, toate permutrile numerelor de la 1 la n. Exemplu 3 permut.out 123 132 213 231 312 321

35. Se citesc de la tastatur dou numere naturale n i p (1pn10). S se afieze n fiierul aranj.out, cte una pe linie, toate aranjamentele numerelor de la 1 la n, luate cte p. Exemplu: 32 aranj.out 12 13 21 23 31 32 36. Se citesc de la tastatur dou numere naturale n i p (1pn10). S se afieze n fiierul comb.out, cte una pe linie, toate combinrile numerelor de la 1 la n, luate cte p. Exemplu 32 comb.out 12 13 23 Se citete de la tastatur un numr natural n (1n10). S se afieze n fiierul dame.out toate posibilitile de aezere a n dame pe tabla de ah, considerat de dimensiune n, astfel nct s nu se atace. Soluiile vor fi afiate sub forma unor matrici ptratice de dimensiune n, n care fiecare dama e reprezentat printr-un D, iar pe poziiile neocupate de dame apare caracterul *. Exemplu 4 dame.out *D** ***D D*** **D* **D* D*** ***D *D** 9

37.

10
38.

Se citete de la tastatur un numr natural n (1n10). S se afieze n fiierul regi.out toate posibilitile de aezere a n regi pe tabla de ah, considerat de dimensiune n, astfel nct s nu se atace i s existe exact cte un rege pe fiecare linie. Soluiile vor fi afiate sub forma unor matrici ptratice de dimensiune n, n care fiecare rege e reprezentat printr-un R, iar pe poziiile neocupate de regi apare caracterul *. Exemplu regi.out R** **R R** **R R** **R

39. Se citesc de pe prima linie a fiierului monede.in dou numere naturale s (de maxim 9 cifre) i n (1n10) i de pe urmtoarea linie se citete un ir de n numere naturale de maxim 5 cifre. Se cere s se afieze n fiierul monede.out toate posibilitile de plat a sumei s folosind n tipuri de monede ale cror valori sunt memorate n irul citit. Exemplu monede.in 10 3 235 monede.out 10 = 5 de 2 10 = 2 de 2 si 2 de 3 10 = 1 de 2 si 1 de 3 si 1 de 5 10 = 2 de 5

40. 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

10

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