Sunteți pe pagina 1din 8

Propunere de subiecte pentru examenul de atestare profesionala, 2011 Programare 1. Fiierul note.

in conine pe prima linie un numr natural n (2 < n < 100), iar pe a doua linie sunt n numere naturale cuprinse ntre 1 i 10, reprezentnd note, cel puin 3 note fiind distincte. S se scrie un program care determin i afieaz la ecran media aritmetic a celor n note, tiind c notele cele mai mici i notele cele mai mari nu se iau n considerare la calculul mediei. Exemplu: note.in 5 48497 Se va afia: 7.5 (deoarece notele de 4 i nota 9 se elimin) 2. Fiierul numere.in conine pe prima linie un numr natural n (1 < n < 1000), iar pe a doua linie este un ir de n numere naturale cuprinse ntre 1 i 1.000.000. Se tie c n ir exist cel puin dou valori distincte. S se determine i s se afieze la ecran valoarea maxim i valoarea imediat mai mic dect maximul din ir. Exemplu: numere.in 6 88 123456 7 123456 992292 835 Se va afia: Valoare maxima: 992292 Valoare imediat mai mica: 123456 3. Se citesc de la tastatur dou numere naturale a i b, unde 1 < a < b < 10000. S se afieze n fiierul palin.txt toate numerele palindrom din intervalul [a, b]. Exemplu: a = 90, b = 130 palin.txt 99 101 111 121 4. Fiierul numere.in conine mai multe numere naturale cuprinse ntre 1 i 1.000.000 i care se termin cu 0 (zero) care nu face parte din ir. S se afieze n fiierul numere.out cifra maxim pentru fiecare numr din ir. Exemplu: numere.in 200 4563 5 457736 1996 100972 0 numere.out 2 6 5 7 9 9 5. Scriei un program care citete din fiierul cifre.in un numr natural nenul de maximum 50 de cifre. S se afieze n cifre.out numrul maxim care se poate forma cu cifrele numrului. Exemplu: cifre.in 1928192229 cifre.out 9998222211

6. Se citesc de la tastatur dou numere naturale nenule a i b, unde a i b sunt cuprinse ntre 1 i 2.000.000.000. S se afieze la ecran numitorul i numrtorul fraciei ireductibile a/b. Exemplu: a = 15 b = 12 Se va afia: 5 4 7. Se citesc de la tastatur dou numere naturale nenule a i b, unde a i b sunt cuprinse ntre 1 i 2.000.000.000. S se afieze la ecran cel mai mare divizor comun al numerelor a i b. Exemplu: a = 15 b = 12 se va afia 3 8. Se citete de la tastatur un numr natural n (10 n 10000). S se afieze n fiierul prime.txt toate numerele naturale mai mici dect n i prime cu n. Exemplu: n = 15 Se vor afia: 2 4 6 7 8 11 13 14 9. Se citete de la tastatur un numr natural n (10 n 10000). S se descompun n n factori primi. Se vor afia la ecran factorii i puterile la care apar. Exemplu: n = 120 Se va afia: 2 3 3 1 5 1 10. Se citesc din fiierul numere.in mai multe numere naturale nenule de cel mult 6 cifre pn la ntlnirea numrului 0. S se afieze n fiierul numere.out numerele prime. Exemplu: numere.in 25 31 100 123456 23 0 numere.out 31 23 11. Se citete de la tastatur un numr natural nenul n (2 n 10000). S se afieze la ecran cel mai mic numr prim, strict mai mare dect n. Exemplu: n = 34 Se va afia: Cel mai mic numr prim strict mai mare dect 34 este: 37 12. Fiierul date.in conine pe prima linie un numr natural n (2 n 100), pe a doua linie n numere naturale x1 x2 ... xn cuprinse ntre 2 i 1000, iar pe a treia linie un numr natural p care este prim. S se determine i s se afieze la ecran numrul natural k maxim cu proprietatea c produsul x1*x2*...*xn este divizibil cu pk. Exemplu: date.in 5 512 12 999 23 888 2

Se va afia: k = 14 13. n fiierul numere.in se afl pe prima linie un numr natural n (1 < n < 1.000.000), iar pe a doua linie n naturale de cel mult 2 cifre fiecare. S se determine i s se afieze la ecran numrul care se repet cel mai des. Dac sunt mai multe numere care se repet cel mai des, se va afia numai unul dintre ele. Exemplu: numere.in 10 5 3 17 6 3 1 3 6 1 3 Se va afia: Numrul care apare cel mai des este 3 14. n fiierul nume.in se afl cte unul pe linie un nume. n fiier sunt cel mult 100 de nume, fiecare de lungime maxim 20. S se afieze n fiierul nume.out numele ordonate alfabetic. Exemplu nume.in Popovici Albu Vasilache Dobrescu nume.out Albu Dobrescu Popovici Vasilache 15. Se citete din fiierul text.in un ir de caractere format numai din litere mici. S se afieze la ecran numrul de vocale din text. Exemplu: text.in abcdeusdfoa Se va afia: Numrul de vocale din text este 5 16. Fiierul numere.in conine pe prima linie numrul natural n (2 n 25000), pe a doua linie un ir de n numere naturale cuprinse ntre 1 i 1000, iar pe a treia linie un numr natural x cuprins ntre 1 i 1000. S se memoreze irul ntr-un vector i apoi s se elimine din acest vector toate elementele egale cu x. Vectorul rezultat va fi afiat n fiierul numere.out. Exemplu: numere.in 7 5 3 3 999 3 67 24 3 numere.out 5 999 67 24 17. Fiierul matrice.in conine pe prima linie un numr natural n (3 n 50) reprezentnd numrul de linii i coloane ale unei matrice ptratice, iar pe urmtoarele n linii este dat matricea. S se calculeze i s se afieze la ecran suma elementelor de sub diagonala principal a matricei. Exemplu: matrice.in

4 1 2 3 4 2 3 4 5 3 4 5 6 7 8 9 1 Se va afia mesajul: Suma elementelor de sub diagonala principal este 33 18. Fiierul matrice.in conine pe prima linie un numr natural n (3 n 50) reprezentnd numrul de linii i coloane ale unei matrice ptratice, iar pe urmtoarele n linii este dat matricea. S se calculeze i s se afieze la ecran suma elementelor de sub diagonala secundar a matricei. Exemplu: matrice.in 4 1 2 3 4 2 3 4 5 3 4 5 6 7 8 9 1 Se va afia mesajul: Suma elementelor de sub diagonala secundar este 34 19. Fiierul mat1.in conine pe prima linie dou numere naturale L1 i C1 reprezentnd numrul de linii i numrul de coloane ale unei matrice, iar pe urmtoarele L1 linii se gsesc cte C1 numere reprezentnd elementele matricei. Fiierul mat2.in conine pe prima linie dou numere naturale L2 C2 reprezentnd numrul de linii i numrul de coloane ale unei matrice, iar pe urmtoarele L2 linii se gsesc cte C2 numere reprezentnd elementele celei de-a doua matrice. L1, L2, C1, C2 sunt cuprinse ntre 2 i 20, iar elementele matricelor sunt numere ntre 0 i 100. S se scrie un program s afieze n fiierul mat.out rezultatul adunrii celor dou matrice. Dac matricele nu se pot aduna, se va scrie n fiier mesajul Imposibil de adunat matricele. Exemplu mat1.in 2 3 111 222 mat2.in 2 3 123 567 mat.out 2 3 4 7 8 9 20. Fiierul mat1.in conine pe prima linie dou numere naturale L1 i C1 reprezentnd numrul de linii i numrul de coloane ale unei matrice, iar pe urmtoarele L1 linii se gsesc cte C1 numere reprezentnd elementele matricei. Fiierul mat2.in conine pe prima linie dou numere naturale L2 C2 reprezentnd numrul de linii i numrul de coloane ale unei matrice, iar pe urmtoarele L2 linii se gsesc cte C2 numere reprezentnd elementele celei de-a doua matrice. L1, L2, C1, C2 sunt cuprinse ntre 2 i 20, iar elementele matricelor sunt numere ntre 0 i 100. S se scrie un program s afieze n fiierul mat.out rezultatul nmulirii celor dou matrice. Dac matricele nu se pot nmuli, se va scrie n fiier mesajul Imposibil de nmulit matricele. Exemplu mat1.in 2 3

101 020 mat2.in 32 12 04 50 mat.out 6 2 0 8 21. Se citete din fiierul cuvant.in un ir de caractere format din litere mari i mici. S se verifice dac irul citit este sau nu palindrom. Se va afia la ecran cuvntul DA sau NU dup cum irul este sau nu este palindrom. Exemplu: cuvant.in capac Se va afia: DA 22. Fiierul numere.in conine pe prima linie numrul natural n (2 n 5000), iar pe a doua linie un ir de n numere naturale x1 x2 ... xn cuprinse ntre 1 i 1000. S se determine cea mai lung secven de elemente egale aflate pe poziii consecutive n ir. Se va afia la ecran poziia de nceput a secvenei i lungimea sa. Exemplu: numere.in 10 2442223333 Se va afia: Poziia de nceput este 7 iar lungimea este 4 23. Din fiierul numere.in se citete o succesiune de numere naturale (cuprinse ntre 2 i 1000) pn la ntlnirea numrului 0 (zero). S se afieze n fiierul numere.out numerele perfecte. Un numr este perfect dac este egal cu suma divizorilor si strict mai mici dect el. De exemplu 6 este perfect, pentru c 6 = 1 + 2 + 3. Exemplu: numere.in 12 6 8 0 numere.out 6 24. Fiierul iruri.in conine pe prima linie dou numere naturale m i n (1 m, n 1000), pe a doua linie un ir de m numere ntregi x1 x2 ... xm, iar pe a treia linie n numere ntregi y1 y2 ... yn. Cele dou iruri sunt ordonate cresctor. Se cere s se interclaseze cele dou iruri. Rezultatul se va scrie n fiierul siruri.out. Exemplu siruri.in 3 5 4 7 12 1 5 5 6 6 siruri.out 1 4 5 5 6 6 7 12

25. Fiierul numere.in conine pe prima linie numrul natural n (2 n 10.000), iar pe a doua linie un ir de n numere ntregi x1 x2 ... xn cuprinse ntre 1 i 1000. S se afieze la ecran valoarea minim din ir, prima poziie pe care apare, precum i numrul de apariii ale valorii minime. Exemplu: numere.in 10 7 56 4 7 4 100 4 23 4 200 Se va afia: Valoarea minim: 4 Prima poziie pe care apare: 3 Numrul de apariii: 4 26. Fiierul numere.in conine pe prima linie numrul natural n (2 n 1000), pe a doua linie un ir de n numere reale ordonat strict cresctor, iar pe a treia linie un numr real x. Folosind cutarea binar, s se decid dac x apare sau nu n ir. Dac x apare, se va afia poziia, iar dac x nu apare se va tipri mesajul x nu apare n ir. Exemplu: numere.in 6 2 5.5 9.1 10 14.7 23 14.7 Se va afia: 14.7 apare la poziia 5 27. Fiierul numere.in conine un ir de cel mult 100.000 numere naturale cuprinse ntre 1 i 30.000 care se termin cu 0 (zero). Scriei un program care creaz dou fiiere: fiierul pare.out va conine numerele pare din ir, iar impare.out va conine numerele impare din ir. Exemplu: numere.in 22 1 11 46 22 56 15 1001 0 pare.out 22 46 22 56 impare.out 1 11 15 1001 28. Fiierul interval.in conine pe prima linie dou numere ntregi a i b (1.000.000.000 < a < b < 1.000.000.000), pe a doua linie un numr natural n (1 < n < 1.000.000), iar pe a treia linie un ir de n numere naturale din intervalul (2.000.000.000 < a < b < 2.000.000.000). Scriei un program care determin i afieaz la ecran cte numere din ir sunt n afara intervalului nchis [a, b]. Exemplu: interval.in 10 20 6 12 45 25 8 0 11 Se va afia: Sunt 2 numere n afara intervalului [10,20] 29. Din fiierul date.txt se citesc numerele naturale n i m (0 < m < n < 5000) de pe prima linie, apoi n numere naturale a1, a2, , an de pe linia a doua i apoi m numere naturale b1, b2, , bm de pe linia a treia a fiierului. S se verifice dac irul b citit de pe a treia linie a fiierului se poate obine din irul a (aflat pe a doua linie a fiierului) prin eliminarea unora dintre componentele irului a. Se va afia la ecran mesajul DA sau NU. Exemple:

date.txt
5 3 1 6 3 1 3 6 1 3

Se va afia: DA date.txt 4 2 2 9 7 3 3 9 Se va afia: NU 30. Se citete de la tastatur un numr natural k (1 k 1.000.000.000). Scriei un program care verific dac n este termen al irului Fibonacci (acest ir se construiete prin recurena: f1=1, f2=1, fn=fn-1+fn-2, pentru n>2). Se va afia la ecran un mesaj. Exemplu: k = 13 Se va afia: 13 este termen al sirului Fibonacci 31. n fiierul multimi.in se dau pe prima linie dou numere naturale n i m separate printr-un spaiu, 2 n, m 100, pe linia a doua n numere naturale din intervalul 0..10000 ordonate strict crescator, iar pe a doua linie m numere naturale de asemenea din intervalul 0..10000 i ordonate strict cresctor. Cele dou iruri reprezint dou mulimi de numere. Se cere s scrie n fiierul multimi.out, n ordine strict cresctoare, elementele reuniunii celor dou mulimi. Exemplu: mulimi.in 64 1 3 4 7 10 43 3 5 10 37 multimi.out 1 3 4 5 7 10 37 43 32. Se citete de la tastatur un numr natural n (1 < n < 1.000.000). Se cere s se scrie n ca sum de puteri ale lui 2. Se vor afia la ecran exponenii din descompunere. Exemplu: n = 100 Se va afia: 6 5 2 (pentru c 100 = 26 + 25 + 22) 33. Fiierul siruri.in conine pe prima linie trei numere naturale m, n, p (2 m, n, p 1000), pe a doua linie un ir de m numere naturale, pe a treia linie un ir de n numere naturale, iar pe ultima linie un ir de p numere naturale. Se tie c cele trei iruri sunt scrise n ordine strict cresctoare n fiier i c au cel puin un numr comun. Scriei un program care afieaz la ecran un numr comun celor 3 iruri i poziiile pe care apare acesta. Exemplu: siruri.in 325 2 7 20 7 45 1 2 5 7 20 Se va afia: Valoare comuna: 7

Pozitiile pe care apare in cele trei siruri: 2 1 4 34. Fiierul numere.in conine un ir de numere naturale din intervalul 1..10000 care se termin cu 0 (zero). S se afieze n fiierul numere.out cte numerele naturale din intervalul 1..10000 nu apar n fiierul de intrare. Exemplu: numere.in 20 1 450 20 1 333 1 20 0 numere.out 9996

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