Sunteți pe pagina 1din 10

Subiectul nr.

1
Fiierul atestat.n conine dou linii. Pe prima linie sunt scrise trei numere naturale nenule, separate prin cte un
spaiu: n,(5<n<30), p9, k9 (k<p). Pe cea de-a dou linie a fiierului sunt scrise n numere naturale separate prin cte un
spaiu, reprezentnd un ir de numere formate fiecare din cel mult 4 cifre.
S se scrie un program n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate printr-un spaiu, toate numerele din ir care mprite la p dau restul k;
b) prin intermediul unui subprogram, afieaz pe ecran, separate printr-un spaiu, numrul cifrelor pare din scrierea
numerelor din irul dat;
c) verific dac toate elementele din ir sunt distincte dou cte dou i afieaz n fiierul atestat.out un mesaj
corespunztor: ELEMENTELE SUNT DISTINCTE sau ELEMENTELE NU SUNT DISTINCTE- n caz contrar.
atestat.in
753
2643 541 97 238 242 33 4682

Date de ieire:
a) 2643 238 33
b) 3 1 0 2 3 0 4
Fiierul atestat.out conine:
c) ELEMENTELE SUNT DISTINCTE

Subiectul nr. 2
Fiierul atestat.n conine dou linii. Pe prima linie este scris un numr natural nenul n, (5<n<30). Pe cea de-a dou
linie a fiierului sunt scrise n numere naturale separate prin cte un spaiu, reprezentnd un ir de numere formate fiecare
din cel mult 4 cifre.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate printr-un spaiu, toate cifrele de rang 2 din scrierea numerelor; dac numerele
sunt formate dintr-o singur cifr se va afia valoarea zero;
b) prin intermediul unui subprogram, afieaz pe ecran prima poziie pe care se gsete elementul minim n ir;
c) scrie n fiierul atestat.out, separate prin cte un spaiu, toate numerele prime care au exact 3 cifre, din irul dat.
Un numr natural este prim dac are exact doi divizori: numrul 1 i numrul n sine. Dac nu exist numere
prime cu trei cifre se va scrie pe prima linie a fiierului mesajul NU EXIST NUMERE PRIME DE TREI CIFRE.
atestat.in
7
239 1541 163 8 1531 19 23

Date de ieire:
a) 3 4 6 0 3 1 2
b) 4
Fiierul atestat.out conine:
c) 239 163

Subiectul nr. 3
Fiierul atestat.n conine dou linii. Pe prima linie este scris un numr natural nenul n, (5<n<30). Pe cea de-a dou
linie a fiierului sunt scrise n numere naturale separate prin cte un spaiu, reprezentnd un ir de numere formate fiecare
din cel mult 4 cifre.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate printr-un spaiu, suma divizorilor pozitivi (proprii i improprii ) pentru fiecare
numr ;
b) prin intermediul unui subprogram, afieaz pe ecran, mesajul DA dac numerele sunt n ordine descresctoare
sau NU n caz contrar.
c) scrie n fiierul atestat.out numerele din ir care au proprietatea c sunt dublul elementului urmtor din ir.
Numerele care indeplinesc condiia vor fi afiate cte doua pe linie, cu spaiu, pe linii diferite. Dac nu exist
astfel de numere se va scrie pe prima linie a fiierului mesajul NU EXIST ASTFEL DE NUMERE.
atestat.in
7
139 70 35 27 242 121 23

Date de ieire:
a) 140 144 48 40 399 133 24
b) NU
Fiierul atestat.out conine:
c) a) 70 35
242 121

Subiectul nr. 4
Fiierul atestat.n conine dou linii. Pe prima linie este scris un numr natural nenul n,(5<n<30). Pe cea de-a dou
linie a fiierului sunt scrise n numere naturale distincte separate prin cte un spaiu, reprezentnd un ir de numere
formate fiecare din cel mult 4 cifre. Cel puin unul din cele n numere din ir este numr impar i ocup o poziie par.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate printr-un spaiu, toate numerele impare din ir aflate pe poziii pare;
b) prin intermediul unui subprogram, afieaz pe ecran, separate prin cte un spaiu, elementele irului dup
interschimbarea elementului minim cu cel maxim.
c) scrie n fiierul atestat.out, pe o linie, separate prin cte un spaiu, cifra de control a fiecrui numr din irul iniial:
Cifra de control se obine calculcnd suma cifrelor numrului, apoi suma cifrelor sumei i tot aa pn la
obinerea unei singure cifre.
atestat.in
7
248 326 27 165 7231 546 190

Date de ieire:
a) 165
b) 248 326 7231 165 27 546 190
Fiierul atestat.out conine:
c) 5 2 9 3 4 6 1

Subiectul nr. 5
Fiierul atestat.n conine dou linii. Pe prima linie este scris un numr natural nenul n, (5<n<30). Pe cea de-a dou
linie a fiierului sunt scrise n numere naturale separate prin cte un spaiu, reprezentnd un ir de numere formate fiecare
din cel mult 4 cifre. Cel puin unul din cele n numere din ir ndeplinete condiia.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate printr-un spaiu, toate numerele cu proprietatea c sunt impare i divizibile cu
3;
b) prin intermediul unui subprogram, afieaz pe ecran suma cifrelor elementului maxim din ir;
c) scrie n fiierul atestat.out, pe o linie, separate printr-un spaiu numerele care au proprietatea c au toate cifrele
in ordine strict crescatoare. Dac nu exist astfel de numere se va scrie pe prima linie a fiierului mesajul NU
EXIST NUMERE CU TOATE CIFRELE IN ORDINE STRICT CRESCATOARE.
atestat.in
7
561 162 35 28 9306 321 33

Date de ieire:
a) 561 321 33
b) 18
Fiierul atestat.out conine:
c) 35 28

Subiectul nr. 6
Fiierul atestat.in conine pe prima linie dou numere naturale nenule: n i c
(5<n<100,c<10). Pe a doua linie sunt scrise n numere naturale separate prin cte un spaiu, avnd fiecare cel mult 8
cifre.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe ecran, n linie, separate printr-un spaiu, toate numerele de pe linia a doua a fiierului, care au ultima
cifr (cifra unitilor) egal cu c.
b) prin intermediul subprogramului rast care inverseaz (rstoarn) si returneaz un numr avnd cel mult 8 cifre
(ex: 1234 devine 4321), afieaz rsturnatele tuturor numerelor impare de pe a doua linie a fiierului.
c) scrie n fiierul atestat.out, separate prin cte un spaiu, toate numerele
palindrom din irul dat, care au exact 3 cifre. Un numr este palindrom dac citit de la stnga la dreapta sau de la
dreapta la stnga are aceiai valoare (ex.151). Dac nu exist astfel de numere n ir, se va scrie n fiier mesajul
"NU EXIST NUMERE PALINDROM DE TREI CIFRE".
atestat.in
10 3
13 797 25 303 482 12321 72 46 282 31

Date de ieire:
a)
13 303
b)
31 797 52 303 12321 13
Fisierul atestat.out conine:
c)
797 303 282

Subiectul nr.7
Fiierul atestat.in conine cel mult 100 de numere naturale, separate prin cte un spaiu, avnd fiecare cel mult 8 cifre.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe ecran, n linie, separate prin cte un spaiu, numerele pare din ir, aflate pe poziii impare. Dac nu exist
astfel de numere n ir, se va scrie pe ecran mesajul "NU EXIST ".
b) prin intermediul subprogramului cifre verific dac un numr natural cu cel
mult 8 cifre, primit ca parametru, are prima cifr egal cu ultima, scrie pe ecran, toate numerele din ir care au
prima cifr egal cu ultima cifr. Dac nu exist astfel de numere n ir se va afia mesajul "NU EXIST".
c) scrie n fiierul atestat.out media aritmetic dintre cel mai mic i cel mai
mare numr din ir.
atestat.in
7 11 8 16 5 37 21 4714 64 222

Date de ieire:
a)
8 64
b)
7 11 8 5 4714 222
Fisierul atestat.out conine:
c)
2359.5

Subiectul nr. 8
Fiierul atestat.in conine pe prima linie numrul natural nenul n,(5<n<100). Pe a doua linie sunt scrise n numere
naturale separate prin cte un spaiu, avnd fiecare cel mult 8 cifre.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz cifra care apare cel mai frecvent n scrierea tuturor termenilor irului;
Dac sunt mai multe astfel de cifre, se vor scrie toate pe ecran, separate prin virgul;
b) folosind subprogramul ndiv, care primete ca parametru un numr cu cel mult
8 cifre i returneaz numrul divizorilor proprii ai acestuia, afieaz numrul din ir care are cei mai muli divizori
proprii. Dac exist mai multe astfel de numere, se va afia primul dintre ele;
c) cu ajutorul subprogramului definit la b), scrie n fiierul atestat.out, pe o linie, separate prin cte un spaiu, toate
numerele prime din ir.
atestat.in
10
13 797 25 303 482 12321 72 46 282 31

Date de ieire:
a)
2
b)
72
Fisierul atestat.out conine:
c)
13 797 31

Subiectul nr.9
Fiierul atestat.in conine pe prima linie un numr natural n,(5<n<100), iar pe urmtoarele linii ale fiierului sunt scrise n
numere reale, avnd cel mult 6 zecimale, separate prin cte un spaiu.
S se scrie un program n limbajul Pascal/C/C++, care:
a) scrie pe ecran, n linie, separate prin cte un spaiu, partea fracionar a tuturor numerelor din ir al cror modul
este strict mai mic dect 10 (irul conine cel puin dou astfel de numere).
b) prin intermediul subprogramului sort, care ordoneaz descresctor un vector, scrie pe ecran, separate printr-un
spaiu, toate cele n numere ale irului, sortate descresctor.
c) scrie n fiierul atestat.out, cu exact trei zecimale, media aritmetic a numerelor din irul iniial, al cror modul
este strict mai mic dect 10.
atestat.in
10
12.52 1.76 0.12 4.51 18.1 22.2 6.3
11.1 3.35 33.65

Date de ieire:
a)
0.76 0.12 0.51 0.3 0.35
b)
33.65 22.2 18.1 12.52 11.1 6.3 4.51
3.35 1.76 0.12
c)
Fiierul atestat.out conine:
3.206

Subiectul nr.10
Fiierul atestat.in conine dou linii. Pe prima linie este scris un numr natural nenul n, (5<n<20). Pe cea de-a doua linie
a fiierului sunt scrise n numere naturale separate prin cte un spaiu, formate fiecare din cel mult 4 cifre, reprezentnd
un ir de n numere naturale. Cel puin unul din cele n numere din ir este divizibil cu 5.
S se scrie un program n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate prin cte un spaiu, toate numerele din ir divizibile cu 5;
b) prin intermediul unui subprogram afieaz pe urmtoarea linie a ecranului, pentru fiecare element din ir,
valoarea 1 dac numrul cifrelor sale pare este egal cu numrul cifrelor sale impare sau valoarea 0 n caz contrar;
valorile de 1 sau 0 fiind separate prin cte un spaiu;
c) scrie n fiierul atestat.out, separate prin cte un spaiu, valoarea elementului minim i poziia acestuia; dac
exist mai multe numere egale cu minimul atunci se va afia poziia primului.
atestat.in
6
1234 45 42 845 2332 101

Date de ieire:
a)
45 845
b)
110010
Fiierul atestat.out conine:
c)
42 3

Subiectul nr.11
Fiierul atestat.in conine pe prima linie numrul n, natural nenul (2<n<20), ce reprezint numrul de linii ale unei matrice
ptratice A. Pe fiecare din urmtoarele n linii, sunt scrise cte n numere naturale, formate din cel mult 4 cifre, separate
prin cte un spaiu, reprezentnd valorile elementelor matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate prin cte un spaiu, elementele de pe ultima linie a matricei A;
b) prin intermediul unui subprogram afieaz pe urmtoarea linie a ecranului numrul elementelor impare situate
deasupra diagonalei principale a matricei;
c) nlocuiete fiecare element din matricea A cu numrul su de divizori i scrie n fiierul atestat.out matricea nou
format.
atestat.in
4
45 13 21 1024
7 5 56 33
12 765 2 89
431 67 12 50

Date de ieire:
a)
431 67 12 50
b)
4
Fiierul atestat.out conine:
c)
6 2 4 11
2 2 8 4
6 12 2 2
2 2 6 6

Subiectul nr.12
Fiierul atestat.in conine pe prima linie numrul n, natural nenul (2<n<20), ce reprezint numrul de linii ale unei matrice
ptratice A. Pe fiecare din urmtoarele n linii, sunt scrise cte n numere naturale, formate din cel mult 4 cifre, separate
prin cte un spaiu, reprezentnd valorile elementelor matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate prin cte un spaiu, elementele de pe ultima coloan a matricei A;
b) prin intermediul unui subprogram afieaz pe urmtoarea linie a ecranului numrul elementelor pare situate
deasupra diagonalei secundare a matricei;
c) nlocuiete fiecare element din matricea A cu suma cifrelor sale i scrie n fiierul atestat.out matricea nou
format.
atestat.in
4
12 45 7 991
3 46 783 5
114 13 21 76
65 17 195 1234

Date de ieire:
a)
991 5 76 1234
b)
3
Fiierul atestat.out conine:
c)
3 9 7 19
3 10 18 5
6 4 3 13

11 8 15 10
Subiectul nr.13
Fiierul atestat.in conine pe prima linie numerele naturale nenule m i n (2<m,n<20), care reprezint numrul de
linii, respectiv numrul de coloane ale unei matrice A. Pe fiecare din urmtoarele m linii, sunt scrise cte n numere
naturale, formate din cel mult 4 cifre i cel puin 2 cifre, separate prin cte un spaiu, reprezentnd valorile elementelor
matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz pe ecran, n linie, separate prin cte un spaiu, elementele impare din matricea A;
b) prin intermediul unui subprogram afieaz pe ecran mesajul DA dac un numr natural k, de cel mult 4 cifre,
introdus de la tastatur, se gsete n matricea A sau mesajul NU n caz contrar;
c) nlocuiete fiecare element din matricea A cu produsul cifrelor sale i scrie n fiierul atestat.out matricea nou
format.
atestat.in
34
22 13 77 991
311 15 784 50
9456 1234 428 23
Se citete de la tastatur k=15

Date de ieire:
a)
13 77 991 311 15 23
b)
DA
Fiierul atestat.out conine:
c)
4 3 49 81
3 5 224 0
1080 24 64 6

Subiectul nr. 14
Fiierul atestat.in conine pe prima linie numerele naturale nenule m i n (2<m,n<20), care reprezint numrul de
linii, respectiv numrul de coloane ale unei matrice A. Pe fiecare din urmtoarele m linii, sunt scrise cte n numere ntregi,
formate din cel mult 4 cifre, separate prin cte un spaiu, reprezentnd valorile elementelor matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe ecran, pe aceeai linie, elementele penultimei coloane a matricei A, separate prin cte un spaiu;
b) prin intermediul unui subprogram scrie pe ecran, pe rndul urmtor numrul elementelor pozitive din matricea A;
c) scrie n fiierul atestat.out, numrul obinut prin adunarea cifrei unitilor fiecrui numr din matricea A.
atestat.in
34
-9 234 2 -37
567 -88 123 234
34 9 -5 67

Date de ieire:
a)
2 123 -5
b)
8
Fiierul atestat.out conine:
c)
69

Subiectul nr. 15
Fiierul atestat.in conine pe prima linie numerele naturale nenule m i n (2<m,n<20), care reprezint numrul de
linii, respectiv numrul de coloane ale unei matrice A. Pe fiecare din urmtoarele m linii, sunt scrise cte n numere reale
pozitive, formate din cel mult 6 cifre, separate prin cte un spaiu, reprezentnd valorile elementelor matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe ecran, pe aceeai linie, elementele penultimei linii a matricei A, separate prin cte un spaiu; toate
elementele vor fi scrise cu exact dou zecimale.
b) prin intermediul unui subprogram scrie pe ecran media aritmetic a tuturor numerelor din matricea A cu exact
dou zecimale.
c) scrie n fiierul atestat.out, pe prima linie, suma dintre partea ntreag a elementului maxim i partea ntreag
a elementului minim din matricea A.
atestat.in
4 3
678.92 12.34 44.5678
9.1 5.5 32.1
34.997 11.2 79.22
0.2 94.0 23.3234

Date de ieire:
a) 34.99 11.20 79.22
b) 85.49
Fiierul atestat.out conine:
c) 678

Subiectul nr. 16
Fiierul atestat.in conine pe prima linie numrul n, natural nenul (2<n<20), ce reprezint numrul de linii ale unei
matrice ptratice A. Pe fiecare din urmtoarele n linii, sunt scrise cte n numere naturale, formate din cel mult 4 cifre,
separate prin cte un spaiu, reprezentnd valorile elementelor matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe ecran, pe aceeai linie, elementele de pe diagonala principal a matricei A;
b) prin intermediul unui subprogram scrie, pe urmtoarea linie a ecranului, suma elementelor de sub diagonala
secundar a matricei A;
c) scrie n fiierul atestat.out, pe prima linie, separate prin cte un spaiu, toate numerele ptrate perfecte din
matricea A. Un numr natural a se numete ptrat perfect dac exist un alt numr ntreg b astfel nct a=b2, de
exemplu 25=52. Dac nu exist numere ptrate perfecte se va scrie pe prima linie a fiierului mesajul NU
EXISTA NUMERE PATRATE PERFECTE.
Exemplu:
atestat.in
4
645 345 21
7 25 567
12 765 2
43 678 812

1024
33
89
7921

Date de ieire:
a) 645 25 2 7921
b) 9535
Fiierul atestat.out conine:
c) 1024 25 7921

Subiectul nr. 17
Fiierul atestat.in conine pe prima linie numrul n, natural nenul (2<n<20), ce reprezint numrul de linii ale unei
matrice ptratice A. Pe fiecare din urmtoarele n linii, sunt scrise cte n numere naturale, formate din cel mult 4 cifre,
separate prin cte un spaiu, reprezentnd valorile elementelor matricei A.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe ecran, pe aceeai linie, elementele de pe diagonala secundar a matricei A, separate prin cte un spaiu;
b)prin intermediul unui subprogram scrie pe urmtoarea linie a ecranului, numrul elementelor impare de sub
diagonala principal a matricei A;
c)
scrie n fiierul atestat.out, pe prima linie, separate prin cte un spaiu, toate numerele din matricea A care
au suma cifrelor un numr prim. Dac nu exist astfel de numere se va scrie pe prima linie a fiierului mesajul NU
EXISTA ASTFEL DE NUMERE.
Exemplu:
atestat.in
4
456 345 5832 1024
343 25 567 33
24 765 12 121
43 678 812 1728

Date de ieire:
a) 1024 567 765 43
b) 3
Fiierul atestat.out conine:
c) 1024 25 12 43 812

Subiectul nr.18
Fiierul atestat.in conine o singur linie pe care se afl scris un text format din cel mult 70 de caractere, primul i ultimul
caracter fiind liter, iar cuvintele din text sunt separate prin unul sau mai multe spaii. Fiecare cuvnt este format doar din
litere mici ale alfabetului limbii engleze.
S se scrie un program n limbajul Pascal/C/C++, care:
a) afieaz textul pe o singur linie a ecranului, transformnd prima liter a fiecarui cuvnt n majuscul;
b) prin intermediul unui subprogram, afieaz pe ecran pe urmtoarea linie, cuvintele din textul iniial, care ncep i
se termin cu o consoan, separate printr-un spaiu;
c) scrie n fiierul atestat.out, pe prima linie, numrul cuvintelor din text care sunt formate din exact patru caractere.
Dac nu exist astfel de cuvinte, se va scrie pe prima linie a fiierului mesajul NU EXIST ASTFEL DE
CUVINTE.

Exemplu:
atestat.in
sara pe deal buciumul suna cu jale
Date de ieire:
a) Sara Pe Deal Buciumul Suna Cu Jale
b) deal buciumul
Fiierul atestat.out conine:
c) 6

Subiectul nr.19
Fiierul atestat.in conine o singur linie pe care se afl scris un text format din cel mult 70 de caractere, primul i
ultimul caracter fiind liter, iar cuvintele din text sunt separate prin unul sau mai multe spaii. Fiecare cuvnt este format
doar din litere mari ale alfabetului limbii engleze.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) afieaz textul pe o singur linie a ecranului, transformnd ultima litera a fiecarui cuvant n liter mica;
b) prin intermediul unui subprogram, afieaz pe ecran pe urmtoarea linie, textul iniial din care au fost terse toate
vocalele;
c) scrie n fiierul atestat.out, pe prima linie, toate cuvintele din textul iniial care au a doua liter vocal, separate
printr-un spaiu. Dac nu exist astfel de cuvinte, se va scrie pe prima linie a fiierului mesajul NU EXIST
ASTFEL DE CUVINTE.
Exemplu:
atestat.in
CLOPOTUL VECHI UMPLE CU GLASUL LUI SARA

Subiectul nr.20
Fiierul atestat.in conine o singur linie pe care se afl scris un text format din cel mult 70 de caractere, primul i
ultimul caracter fiind liter, iar cuvintele din text sunt separate prin unul sau mai multe spaii. Fiecare cuvnt este format
doar din litere mici ale alfabetului limbii engleze.
S se scrie un program n limbajul Pascal/C/C++, care:
a) afieaz textul pe o singur linie a ecranului, transformnd prima i ultima liter, din fiecare cuvnt n majuscul;
b) prin intermediul unui subprogram, afieaz pe ecran pe urmtoarea linie, toate cuvintele din textul iniial, care
ncep cu o consoan i se termin cu o vocal, separate printr-un spatiu. ;
c) scrie n fiierul atestat.out, pe prima linie, primul cuvnt din care se sterge pe rnd cte o consoan, afindu-se
cuvintele obinute, separate printr-un spatiu;
Exemplu:
atestat.in
stelele nasc umezi pe bolta senina
Date de ieire:
b) StelelE NasC UmezI PE BoltA SeninA
c) stelele pe bolta senina
Fiierul atestat.out conine:
d) telele elele eele eee

Subiectul nr.21
Fiierul atestat.in conine o singur linie pe care se afl scris un text format din cel mult 70 de caractere, primul si
ultimul caracter fiind liter, iar cuvintele din text sunt separate printr-un singur spaiu. Fiecare cuvnt este format din litere
mari ale alfabetului limbii engleze.
S se scrie un program n limbajul Pascal/C/C++, care:
a) afieaz toate cuvintele din text, pe ecran, cte un cuvnt pe o linie, numai cu litere mici;
b) prin intermediul unui subprogram, afieaz textul inial dup tergerea ultimului caracter din fiecare cuvnt;
c) scrie pe prima linie a fiierului atestat.out primul cuvnt de lungime maxim, din textul iniial;.
Exemplu:
atestat.in
SI SURAZAND VOM ADORMI SUB INALTUL

Date de ieire:
a) si
surazand
vom
adormi
sub
inaltul
b) S SURAZAN VO ADORM SU INALTU
Fiierul atestat.out conine:
c)SURAZAND

Subiectul nr.22
Fiierul atestat.in conine o singur linie pe care se afl scris un text format din cel mult 70 de caractere, primul i
ultimul caracter fiind litere, iar cuvintele din text sunt separate prin unul sau mai multe spaii. Fiecare cuvnt este format
doar din litere ale alfabetului limbii engleze.
S se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie textul pe ecran, pe o singur linie, transformat astfel: ultima liter a
fiecrui cuvnt, dac este consoan, va fi scris cu liter mare, iar dac este
vocal, va fi scris cu liter mic;
b) prin intermediul unui subprogram, scrie pe ecran pe urmtoarea linie, textul
inial dup eliminarea spaiilor n plus ;
c) scrie n fiierului atestat.out pe prima linie, separate printr-un spaiu, toate
cuvintele din fiierul atestat.in care conin minim patru caractere i ncep i se
termin cu aceeai liter (indiferent dac este liter mare sau mic) Dac nu
exist astfel de cuvinte, se va scrie pe prima linie a fiierului mesajul NU
EXISTA ASTFEL DE CUVINTE.
Exemplu:
atestat.in
ExamenuL

penTru ObtinereA atestatuLUI prOfesIonal Este

sImplU

Date de ieire:
a) ExamenuL penTru Obtinerea atestatuLUi prOfesIonaL Este sImplu
b) ExamenuL penTru ObtinereA atestatuLUI prOfesIonal Este sImplU
Fiierul atestat.out conine:
c)Este

Subiectul nr. 23
Fiierul atestat.in conine pe prima linie numrul natural nenul n (2<n<30)reprezentnd numrul de sportivi
participani la proba de contratimp din cadrul Campionatelor de ciclism ale Romniei. Pe urmtoarele n linii sunt scrise
cte dou numere naturale m i s , reprezentnd minutele i secundele timpilor obinui de cicliti. Cele dou numere
naturale m i s sunt separate printr-un spaiu.
Utiliznd structuri de date tip nregistrare s se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie pe cte o linie a ecranului, cele n rezultate msurate n secunde;
b) prin intermediul unui subprogram, scrie, pe ecran, numrul de sportivi care au obinut rezultate la mai puin de un
minut de lider;
c) scrie n fiierul atestat.out, pe prima linie, numrul intrrii n concurs i timpul obinut pentru lider i pe linia
urmtoare, aceleai informaii dar pentru cel mai slab clasat ciclist.
Exemplu:
Atestat.in
4
41 39
45 20
41 42
39 10

Date de ieire:
a) 2499
2720
2502
2350
b) 0
Fiierul atestat.out conine:
c) 4 39 minute 10 secunde
2 45 minute 20 secunde

Subiectul nr. 24
Fiierul atestat.in conine pe prima linie numrul natural nenul n (2<n<50)reprezentnd numrul de sportivi
participani la Campionatul Naional de Haltere. Pe urmtoarele n linii sunt scrise cte dou numere naturale nenule s i
a, reprezentnd greutatea maxim ridicat la stilul smuls i greutatea maxim ridicat la stilul aruncat de ctre fiecare
sportiv participant. Cele dou numere s i a sunt separate printr-un spaiu.
Utiliznd structuri de date tip nregistrare s se scrie un program, n limbajul Pascal/C/C++, care:
a) scrie n linie, pe ecran, separate prin cte un spaiu, rezultatele sportivilor care au ridicat cel puin 80 de kilograme
la fiecare proba, sub forma (s,a) (greutate smuls, greutate aruncat);
b) prin intermediul unui subprogram, afieaz, pe linii distincte ale ecranului, cele mai bune trei rezultate la categoria
total (smuls plus aruncat);
c) scrie n fiierul atestat.out, pe cte un rnd, numrul intrrii n concurs al celui mai bun sportiv pentru categoriile
smuls, respectiv, aruncat.
Exemplu:
atestat.in
6
80 120
85 110
70 90
85 100
90 120
65 90

Date de ieire:
a)
(80,120) (85,110) (85,100) (90,120) (90,120)
b)
(80,120)
(85, 110)
Fiierul atestat.out conine:
c)
5
15

Subiectul nr. 25
Fiierul atestat.in conine pe prima linie numrul natural nenul n (2<n<10). Pe fiecare dintre urmtoarele n linii sunt
scrise cte dou numere ntregi x i y, reprezentnd coordonatele carteziene ale unui punct din planul xOy. Cele dou
numere x i y sunt separate printr-un spaiu.
Utiliznd structuri de date tip nregistrare s se scrie un program, n limbajul Pascal/C/C++, care:
a) afiez punctele din planul xOy care nu sunt situate pe prima bisectoare, sub forma (x,y) (abscis,ordonat)
cte unul pe linie;
b) prin intermediul unui subprogram scrie pe o linie a ecranului, separate prin cte un spaiu, sub forma (x,y), toate
punctele care au prima coordonat (abscisa) un numr par i sunt situate n primul cadran;

c) scrie n fiierul atestat.out, pe linii distincte, coordonatele celui mai ndepartat i ale celui mai apropiat punct de
punctul de intersecie a axelor, sub forma (x,y) (abscis, ordonat) cte unul pe linie;
Exemplu:
Atestat.in
5
13
44
25
-3 -3
62

Date de ieire:
a)
(1,3)
(2,5)
(6,2)
b)
(4,4) (2,5) (6,2)
Fiierul atestat.out conine:
c)
(6,2)
(1,3)

Colectivul de autori:
prof. Valiana Petrior
prof. Luminia Ciocaru
prof. Simona Popa
prof. Gilda Gebil
prof. Dan Rdulescu
prof. Iuliana Dumitrescu

Colegiul Naional Bilingv George Cobuc

Liceul Teoretic Dante Alighieri


Colegiul Naional Gheorghe Lazr
Colegiul Naional Mihai Viteazul
Colegiul Naional Octav Onicescu
Colegiul Naional I.L. Caragiale

Coordonator:
prof.tefania Penea inspector colar de specialitate Informatic i
Tehnologia Informatiei i a Comunicaiilor, Inspectoratul colar al
Municipiului Bucureti

10

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