Page 118 - MATINF Nr. 1
P. 118
˘
118 PROBLEME DE INFORMATICA PENTRU EXAMENE
4. Pentru un num˘ar natural, cifra de ordin 1 este cifra unit˘at , ilor, cifra de ordin 2 este cifra
zecilor, cifra de ordin 3 este cifra sutelor, s , .a.m.d. Rotunjirea unui num˘ar la cifra de ordin
k se realizeaz˘a ˆın funct , ie de valoarea cifrei imediat din dreapta. De exemplu, pentru
n=27432 rotunjirea la cifra de ordin k=2 (cifra zecilor) conduce la num˘arul 27430 pentru
c˘a cifra unit˘at , ilor este mai mic˘a decˆat 5, iar pentru n=27472 rotunjire la cifra de ordin
k=3 (cifra sutelor) conduce la 27500 pentru c˘a cifra zecilor este mai mare sau egal˘a decˆat
5.
a) Scriet , i un algoritm ˆın pseudocod care cites , te dou˘a numere naturale n s , i k (n≥1,
k≥1) s , i determin˘a num˘arul natural obt , inut prin rotunjirea lui n la ordinul k dac˘a
variabila k are valoarea mai mic˘a decˆat num˘arul de cifre ale lui n, iar ˆın caz contrar
afis , eaz˘a mesajul ,,Eroare”. (10p.)
b) Ment , ionat , i rolul fiec˘arei variabile s , i specificat , i care sunt datele de intrare s , i care sunt
datele de ies , ire ale problemei. (6p.)
SUBIECTUL al III-lea (30 de puncte)
Pentru itemul 1 scriet , i pe foaia de examen litera corespunz˘atoare r˘aspunsului
corect.
1. Indicat , i expresia care poate ˆınlocui punctele de suspensie astfel ˆıncˆat, ˆın urma execut˘arii
secvent , ei obt , inute, s˘a se afis , eze matricea de mai jos. (4p.)
for i:=1 to 4 do 0 0 0 0
begin for j:=1 to 4 do 0 1 2 3
write (......);
0 1 3 4
writeln;
0 2 4 6
end;
a) i*j div 2 c) (i-1)*j div 2
b) i*(j-1) div 2 d) (i-1)*(j-1) div 2
ˆ
ˆ
2. In secvent , a de mai jos, toate variabilele sunt de tip ˆıntreg. Inlocuit , i punctele de suspensie
astfel ˆıncˆat, ˆın urma execut˘arii secvent , ei obt , inute, valoarea variabilei ok s˘a fie true dac˘a
exist˘a cel put , in un num˘ar par ˆıntre cele 10 numere citite, sau valoarea false ˆın caz contrar.
(6p.)
ok := ......;
for i:=1 to 10 do
begin
read(k);
......;
end;
3. Se citesc de la tastatur˘a valorile a dou˘a variabile ˆıntregi, n (2<n<100) s , i k (1<k<n),
apoi un s , ir de n elemente, numere ˆıntregi. Scriet , i un program Pascal care determin˘a
modificarea s , irului init , ial, astfel ˆıncˆat primele k elemente s˘a fie ordonate descresc˘ator, iar
ultimele n-k elemente s˘a fie ordonate cresc˘ator. Elementele s , irului modificat vor fi afis , ate
pe ecran, pe o singur˘a linie, desp˘art , ite prin cˆate un spat , iu. (10p.)
Exemplu: Pentru n = 8, k=3 s , i elementele 4 7 3 8 9 16 10 6, se va afis , a 7 4 3 6 8
9 10 16.
4. Fis , ierul bac.txt cont , ine pe prima linie valoarea natural˘a nenul˘a a variabilei n, iar pe
urm˘atoarea linie un s , ir de n numere naturale, desp˘art , ite prin spat , ii. Afis , at , i pe ecran
valoarea par˘a cea mai mare s , i num˘arul/numerele de ordine din s , ir al/ale valorii pare