	SUBIECTE PROPUSE PENTRU ATESTAT
			Matematica-informatica

		

1. Se citesc din fi?ierul pol.in, de pe prima linie, gradele a dou? polinoame. De pe urm?toarele dou? linii se citesc dou? ?iruri de numere reale care reprezint? coeficien?ii celor dou? polinoame, n ordinea cresc?toare a gradelor. S? se scrie un program n care se calculeaz? suma polinoamelor. Rezultatul se va afi?a n fi?ierul pol.out.

2. Se citesc din fi?ierul pol.in, de pe prima linie, gradele a dou? polinoame. De pe urm?toarele dou? linii se citesc dou? ?iruri de numere reale care reprezint? coeficien?ii celor dou? polinoame, n ordinea cresc?toare a gradelor. S? se scrie un program n care se calculeaz? produsul polinoamelor. Rezultatul se va afi?a n fi?ierul pol.out.

3. Se citesc din fi?ierul sort.in, de pe prima linie, 2 numere n ?i m. De pe urm?toarele 2 linii se citesc elementele a dou? ?iruri de lungime n, respectiv m, care sunt ordonate cresc?tor. S? se scrie un program n care se realizeaz? interclasarea ?irurilor. Rezultatul se va afi?a n fi?ierul sort.out.

4. Se citesc din fi?ierul mult.in, de pe prima linie, 2 numere n ?i m. De pe urm?toarele dou? linii se citesc elementele a dou? ?iruri de lungime n, respectiv m, care con?in numai elemente distincte. S? se scrie un program n care se realizeaz? intersec?ia celor dou? ?iruri. Rezultatul se va afi?a n fi?ierul mult.out.

5. Se citesc din fi?ierul mult.in, de pe prima linie, 2 numere n ?i m. De pe urm?toarele dou? linii se citesc elementele a dou? ?iruri de lungime n, respectiv m, care con?in numai elemente distincte. S? se scrie un program n care se realizeaz? diferen?a dintre primul ?ir ?i cel de al doilea ?ir. Rezultatul se va afi?a n fi?ierul mult.out.

6. Se citesc din fi?ierul mult.in, de pe prima linie, 2 numere n ?i m. De pe urm?toarele dou? linii se citesc elementele a dou? ?iruri de lungime n, respectiv  m, care con?in numai elemente distincte. S? se scrie un program n care se realizeaz? reuniunea celor dou? ?iruri. Rezultatul se va afi?a n fi?ierul mult.out.

7. Se cite?te din fi?ierul mult.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s? verifice dac? ?irul citit con?ine numai elemente distincte.


8. Se citesc din fi?ierul sort.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care sorteaz? cresc?tor elementele prime ale sirului, valorile neprime pastrandu-si pozitia initiala . Rezultatul se va afi?a n fi?ierul sort.out.

9. Se cite?te din fi?ierul sort.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s? realizeze sortarea cresc?toare a elementelor ?irului folosind metoda selec?iei. Rezultatul se va afi?a n fi?ierul sort.out.

10. Se cite?te din fi?ierul sort.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s? realizeze sortarea cresc?toare a elementelor ?irului folosind metoda inser?iei. Rezultatul se va afi?a n fi?ierul sort.out.

11. Se cite?te din fi?ierul sort.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s? realizeze sortarea cresc?toare a elementelor ?irului folosind metoda num?r?rii.  Se va ?ine cont de faptul c? n ?ir poate s? apar? un element ?i de mai multe ori. Rezultatul se va afi?a n fi?ierul sort.out.

12. Se cite?te din fi?ierul cmmdc.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s? calculeze cel mai mare divizor comun al elementelor ?irului. Rezultatul se va afi?a n fi?ierul cmmdc.out.

13. Se cite?te din fi?ierul exista.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s?  verifice dac? exist? n ?ir trei elemente consecutive care au acela?i num?r de divizori. 

14. Se cite?te din fi?ierul progresie.in, de pe prima linie, un num?r n. De pe urm?toarea linie se citesc elementele unui ?ir de lungime n. S? se scrie un program care s? verifice dac? elementele ?irului formeaz? o progresie aritmetic? sau o progresie geometric?. n caz afirmativ s? se afi?eze tipul progresiei ?i ra?ia, iar n caz negativ s? se scrie un mesaj corespunz?tor n fi?ierul progresie.out.

15. Se cite?te un text din fi?ierul text.in. Textul are mai multe linii ?i mai multe cuvinte. Pe fiecare linie cuvintele sunt desp?r?ite prin cte un singur spatiu. S? se afi?eze n fi?ierul text.out , pe linii consecutive, toate literele care apar n text mpreun? cu frecven?ele lor de apari?ie. 

16. S?  se afi?eze n fi?ierul prietene.out toate perechile de numere prime prietene mai mici dect un num?r natural n citit de la tastatur?. Dou? numere prime se numesc prietene dac? diferen?a lor n modul este mai mic? sau egal? cu 2. 

17. Se cite?te un num?r natural n de la tastatur?. S? se verifice dac? n este num?r puternic. Un num?r este puternic dac? are mai mul?i divizori dect orice num?r mai mic dect el.

18. Se cite?te de la tastur? un num?r natural k. S? se determine cel mai mic num?r natural care are exact k divizori.

19. Se cite?te din fi?ierul mat.in , de pe prima linie un num?r natural n ?i de pe urm?toarele n linii o matrice p?tratic?. S? se verifice dac? matricea este p?trat magic (sumele elementelor pe linii, coloane ?i de pe cele 2 diagonale, este aceea?i).

20. Se cite?te din fi?ierul mat.in , de pe prima linie un num?r natural n ?i de pe urm?toarele n linii o matrice p?tratic?. S? se numere elementele cu num?r par de cifre aflate n triunghiul de sub diagonala principal? a matricei ?i s? se afi?eze rezultatul pe ecran.

21. Se cite?te din fi?ierul mat.in , de pe prima linie un num?r natural n ?i de pe urm?toarele n linii o matrice p?tratic?. S? se calculeze suma elementelor prime aflate n triunghiul de deasupra diagonalei principale a matricei ?i s? se afi?eze rezultatul pe ecran.

22. Se cite?te din fi?ierul mat.in , de pe prima linie un num?r natural n ?i de pe urm?toarele n linii o matrice p?tratic?. S? se verifice dac? exist? elemente cu suma cifrelor par? n triunghiul de sub diagonala secundar? a matricei ?i s? se afi?eze rezultatul pe ecran.

23. Se cite?te din fi?ierul mat.in , de pe prima linie un num?r natural n ?i de pe urm?toarele n linii o matrice p?tratic?. S? se verifice dac? toate elementele aflate n triunghiul de deasupra diagonalei secundare a matricei au aceea?i paritate ?i s? se afi?eze rezultatul pe ecran.

24. Se citesc din fi?ierul mat1.in , de pe prima linie, dou? numere naturale n1 ?i m1 ?i de pe urm?toarele n1 linii o matrice cu n1 linii ?i m1 coloane. Analog, se citesc din fi?ierul mat2.in , de pe prima linie, dou? numere naturale n2 ?i m2 ?i de pe urm?toarele n2 linii o matrice cu n2 linii ?i m2 coloane.  S? se scrie un program n care se calculeaz? produsul celor dou? matrici. Dac? produsul se poate face atunci se va afi?a matricea rezultat? n fi?ierul mat.out, iar n caz contrar se va afi?a un mesaj corespunz?tor.

25. Se citesc din fi?ierul mat.in , de pe prima linie, dou? numere naturale n ?i m ?i de pe urm?toarele n linii o matrice cu n linii ?i m coloane.  S? se scrie un program care afi?eaz? n fi?ierul mat.out, cte unul pe linie, numerele din matrice care sunt n acela?i timp maxime pe linia ?i minime pe coloana pe care se afl?. Dac? nu exist? astfel de numere se va afi?a un mesaj corespunz?tor.

26. Se citesc din fi?ierul mat.in , de pe prima linie, dou? numere naturale n ?i m ?i de pe urm?toarele n linii o matrice cu n linii ?i m coloane.  S? se scrie un program care afi?eaz? n fi?ierul mat.out, cte unul pe linie, numerele din matrice care au num?r maxim de divizori.

27. Se citesc din fi?ierul mat.in , de pe prima linie, patru numere naturale n,  m, l ?i c ?i de pe urm?toarele n linii o matrice cu n linii ?i m coloane.  S? se scrie un program n care sa se ?tearg? din matrice linia l ?i coloana c ?i afi?eaz? matricea rezultat? n fi?ierul mat.out.

28. Se cite?te un num?r natural n. Sa se afi?eze n fi?ierul Pascal.out trunghiul lui Pascal care are n linii ?i m coloane. Regulile dup? care se construie?te triunghiul lui Pascal sunt:
a. Pe coloana 0 ?i pe diagonala principal? se pune 1. 
b. Restul elementelor din triunghi se ob?in adunnd elementul aflat  pe linia anterioar? si pe aceea?i coloan? cu el cu elementul aflat  pe linia anterioar? ?i pe coloana anterioar?.
            Exemplu: 
            n=3
            1
            1 1
            1 2 1
            1 3 3 1	     	

29. Se citesc de la tastatur? numitorii ?i num?r?torii (numere ntregi) a dou? frac?ii. Sa se scrie un program care simplifica suma celor dou? frac?ii ?i afi?eaz? pe ecran numitorul ?i num?r?torul frac?iei rezultate.


30. Se citesc de la tastatur? dou? cuvinte. S? se scrie un program care verific? dac? unul este anagrama celuilalt. Un cuvnt este anagram? pentru altul dac? cele dou? cuvinte con?in acelea?i litere de acela?i num?r de ori, dar nu neap?rat n aceea?i ordine.


