Page 74 - MATINF Nr. 4
P. 74
˘
74 PROBLEME DE INFORMATICA PENTRU EXAMENE
a) Scriet¸i valoarea afi¸sat˘a dac˘a se citesc, a ← 0
ˆın aceast˘a ordine, numerele: 62521, k ← 0
nr ← 0
2571, 2, 56, 614. (6p.)
repeta
b) Dat¸i exemplu de un set de date de in-
| citeste x (numar natural)
trare astfel ˆıncˆat, ˆın urma execut˘arii | nr ← nr+1
algoritmului, valoarea variabilei nr s˘a | cat timp x>99 executa
fie 4. (6p.) | |_ x ← [x/10]
c) Scriet¸i programul C/C++ cores- | daca x>9 atunci
punz˘ator algoritmului dat. (10p.) | | a ← a*100+x
| |_ k ← k+1
d) Scriet¸i ˆın pseudocod un algoritm echi-
|_pana cand k=4
valent cu cel dat, ˆınlocuind struc- scrie a,nr
tura repet˘ a.......pˆ an˘ a cˆ and cu o
structur˘a repetitiv˘a de alt tip. (6p.)
ˆ
2. In declar˘arile urm˘atoare, cˆampurile h,m,s ale ˆınregistr˘arii pot memora ora, minutul ¸si
secunda unui interval de timp.
Scriet¸i ˆın limbajul C/C++ instruct¸iunile struct moment
necesare adun˘arii ˆın variabila t a dou˘a in- { int h,m,s;
tervale de timp memorate ˆın variabilele t1 } t1 ,t2 ,t;
¸si t2. (6p.)
3. Variabilele i ¸si j sunt de tip ˆıntreg, iar variabila a memoreaz˘a un tablou bidimensional
cu 5 linii ¸si 5 coloane, numerotate de la 1 la 5, avˆand init¸ial toate elementele nule. F˘ar˘a
a utiliza alte variabile decˆat cele ment¸ionate, scriet¸i secvent¸a de instruct¸iuni de mai jos,
ˆınlocuind punctele de suspensie astfel ˆıncˆat, ˆın urma execut˘arii secvent¸ei obt¸inute, variabila
a s˘a memoreze matricea de mai jos. (6p.)
for(i=1;i <=5;i++)
for(j=1;j <=5;j++) 1 2 3 4 0
............ 2 4 1 3 0
3 1 4 2 0
4 3 2 1 0
0 0 0 0 0
SUBIECTUL al III-lea (30 de puncte)
Scriet¸i pe foaia de examen r˘aspunsul pentru fiecare din cerint¸ele urm˘atoare.
1. Scriet¸i definit¸ia complet˘a a unui subprogram inserare cu doi parametri:
- v, prin care prime¸ste un tablou unidimensional cu n elemente, numere ˆıntregi;
- n, prin care prime¸ste un num˘ar natural (1≤n≤100).
Subprogramul insereaz˘a ˆıntre oricare dou˘a elemente de aceea¸si paritate situate pe pozit¸ii
consecutive, media aritmetic˘a a celor dou˘a numere ¸si furnizeaz˘a tot prin parametrii v ¸si n,
tabloul modificat.
Exemplu: pentru n = 5 ¸si v = 1 21 3 4 8, dup˘a modificare vectorul va cont¸ine: 1 11
21 12 3 4 6 8. (10p.)
2. Un ¸sir cu maximum 255 de caractere cont¸ine cuvinte formate numai din litere mici ale
alfabetului englez. Cuvintele sunt desp˘art¸ite prin unul sau mai multe spat¸ii. Scriet¸i un
program C/C++ care cite¸ste un astfel de ¸sir, construie¸ste ˆın memorie ¸si afi¸seaz˘a ¸sirul
obt¸inut prin eliminarea cuvintelor de lungime impar˘a care cont¸in ca sufix primul cuvˆant