Page 125 - MATINF Nr. 1
P. 125
˘
PROBLEME DE INFORMATICA PENTRU EXAMENE 125
x[j][i] = c;
a = b; b = c;}
5. Scriet , i un program ˆın C/C++ care cites , te un text de maxim 250 de caractere litere ale
alfabetului englez sau spat , ii s , i determin˘a s , i afis , eaz˘a pe ecran num˘arul total de cuvinte din
text, iar pe urm˘atorul rˆand, separate prin cˆate un spat , iu, cuvintele din text ˆın care primul
s , i ultimul caracter sunt ambele vocale sau ambele consoane. (10p.)
Exemplu: pentru textul La bacalaureat la proba de Informatica a fost un su-
biect cu un sir de caractere
se va afis , a:
15
bacalaureat Informatica a fost subiect sir
SUBIECTUL al III-lea (30 de puncte)
1. Utilizˆand metoda backtracking, sunt generate ˆın ordine lexicografic˘a toate anagramele
cuvˆantului ecran. S˘a se precizeze care sunt cuvintele generate imediat ˆınainte s , i dup˘a
secvent , a urm˘atoare: ernac, ernca, nacer. (4p.)
a) ercan, b) ercna, c) ercna, d) ercan,
nacre narce nacre narce
2. Fie urm˘atorul subprogram recursiv:
void bac (int x, int d)
{ if(d<=x/d)
{
if(x%d==0) cout <<d<<" ";
bac(x, d+1);
if(x%d==0) cout <<x/d<<" ";
}
}
Ce va afis , a subprogramul ˆın urma apelurilor bac(13, 1) s , i bac(56, 1)? (6p.)
3. a) Scriet , i definit , ia complet˘a a subprogramului bac cu doi parametri, care primes , te prin
intermediul primului parametru x un num˘ar natural nenul de minim 2 cifre s , i maxim
9 cifre nenule s , i returneaz˘a prin intermediul celui de-al doilea parametru, y, num˘arul
obt , inut din x prin eliminarea primei s , i a ultimei cifre. Subprogramul returneaz˘a
valoarea 1 dac˘a num˘arul x ˆıncepe s , i se termin˘a cu aceeas , i cifr˘a. (6p.)
Exemplu: dac˘a x=12341, subprogramul returneaz˘a valoarea 1 deoarece num˘arul x
ˆıncepe s , i se termin˘a cu aceeas , i cifr˘a, iar y=234.
b) Scriet , i un program C/C++ care cites , te de la tastatur˘a n numere naturale nenule
(1≤n≤100) de minim 2 cifre s , i maxim 9 cifre nenule s , i folosind apeluri utile ale
subprogramului de la punctul a) determin˘a s , i afis , eaz˘a pe ecran cˆate dintre cele n
ˆ
numere sunt palindrom. In cazul ˆın care nu exist˘a ˆın s , ir numere palindrom se va
afis , a un mesaj corespunz˘ator. (4p.)
Exemplu: pentru n=5 s , i numerele 12341, 454, 11, 89, 4567, se va afis , a 2
(numerele 454 s , i 11).
4. Fis , ierul text bac.in cont , ine cel mult 100000 de numere naturale.
a) Folosind un algoritm eficient din punct de vedere al memoriei utilizate s , i al timpului