Page 80 - REVISTA MATINF Nr. 5
P. 80
˘
80 PROBLEME DE INFORMATICA PENTRU EXAMENE
a) Scriet , i valoarea afis , at˘a dac˘a num˘arul citeste n
citit este 91. (6p.) x ← 1
y ← 2
b) Care sunt cea mai mic˘a, respectiv
cat timp x6=0 si y*y≤n executa
cea mai mare valoare pe care o poate
| k ← n
lua n ˆın intervalul [1..300] astfel | cat timp k≥y executa
ˆıncˆat algoritmul s˘a afis , eze valoarea | |_ k ← k-y
11? (6p.) | x ← k
c) Scriet , i programul C/C++ cores- |_ y ← y+1
punz˘ator algoritmului dat. (10p.) y ← y-1
scrie y
d) Scriet , iˆın pseudocod un algoritm, echi-
valent cu cel dat, care s˘a foloseasc˘a o
singur˘a structur˘a repetitiv˘a. (6p.)
2. Variabila e memoreaz˘a informat , ii pentru fiecare dintre cei 25 de elevi ai unei clase. S¸tiind
c˘a: e[0].nume reprezint˘a numele (un s , ir de maxim 30 de caractere), e[0].medie repre-
zint˘a media (un num˘ar real), iar e[0].datan.zi, e[0].datan.luna, e[0].datan.an
reprezint˘a ziua, luna, respectiv anul nas , terii (numere naturale) ale primului elev, scriet , i
definit , ia unei structuri cu eticheta elev, declarat , i corespunz˘ator variabila e s , i scriet , i o
expresie care va avea valoarea 1 dac˘a ultimul elev este n˘ascut ˆın primele zece zile ale lunii
iulie. (6p.)
3. Variabilele i s , i j sunt de tip ˆıntreg, iar variabila a memoreaz˘a un tablou bidimensional cu 8
linii s , i 8 coloane, numerotate de la 0 la 7, avˆand init , ial toate elementele egale cu caracterul
@. F˘ar˘a a utiliza alte variabile, 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 tabloul al˘aturat. (6p.)
for(i=0;i<8;i++) $ ( ( ( ) ) ) $
for(j=0;j<8;j++) [ $ ( ( ) ) $ ]
............ [ [ $ ( ) $ ] ]
[ [ [ $ $ ] ] ]
] ] ] $ $ [ [ [
] ] $ ( ) $ [ [
] $ ( ( ) ) $ [
$ ( ( ( ) ) ) $
SUBIECTUL al III-lea (30 de puncte)
Scriet , i pe foaia de examen r˘aspunsul pentru fiecare din cerint , ele urm˘atoare.
2
1. Subprogramul modifica primes , te un num˘ar natural n ∈ [2, 10 ], apoi cele n elemente
2
2
ale unui tablou unidimensional v, numere ˆıntregi din intervalul [−10 , 10 ], dintre care
cel put , in unul este pozitiv s , i cel put , in unul este negativ. Subprogramul transform˘a ˆın
memorie tabloul, eliminˆand din component , a sa toate numerele negative, apoi insereaz˘a
ˆıntre oricare dou˘a elemente aflate pe pozit , ii consecutive cel mai mare divizor comun al lor.
Tabloul modificat este transmis tot prin parametrul v.
Exemplu: pentru n = 10 s , i tabloul unidimensional (2, 5, 2, 4, -3, 4, -2, -7, -2, 9), se
obt , ine tabloul unidimensional (2, 1, 5, 1, 2, 2, 4, 4, 4, 1, 9). (10p.)
ˆ
2. Intr-un text cu cel mult 200 de caractere, cuvintele sunt formate din litere mici ale
alfabetului englez s , i sunt separate prin cˆate un spat , iu. Scriet , i un program C/C++ care
cites , te de la tastatur˘a un text de tipul ment , ionat s , i afis , eaz˘a pe ecran, separate de cˆate o