Page 75 - REVISTA MATINF Nr. 5
P. 75
˘
PROBLEME DE INFORMATICA PENTRU EXAMENE 75
a) Scriet , i ce valoare se va afis , a, dac˘a citeste n, d
se citesc, ˆın aceast˘a ordine, valorile m ← 0
5,3,15,54,7,9,27. (6p.) pentru i←1,n executa
| citeste x
b) Dac˘a pentru n s , i d se citesc valorile 4,
| k ← 0
respectiv 2, scriet , i un s , ir de n valori
| cat timp x%d=0 executa
de intrare care s-ar putea citi, astfel
| | k ← k+1
ˆıncˆat, ˆın urma execut˘arii algoritmu-
| |_ x ← [x/d]
lui,s˘a afis , eze valoarea 4. (6p.) | daca k>m atunci
c) Scriet , i un program C/C++ cores- |_ |_ m ← k
punz˘ator algoritmului dat. (10p.) scrie m
d) Scriet , iˆın pseudocod un algoritm, echi-
valent cu cel dat, ˆınlocuind structura
cat timp ... executa cu o alt˘a
structur˘a repetitiv˘a. (6p.)
2. Se consider˘a variabilele A,B,C de tip structur˘a cu eticheta punct2D, structur˘a ce memoreaz˘a
valorile reale ale abscisei s , i ordonatei unui punct din plan. Scriet , i o secvent , ˘a de instruct , iuni
C/C++ pentru afis , area abscisei s , i ordonatei centrului de greutate al triunghiului de vˆarfuri
A,B,C. (6p.)
ˆ
3. In secvent , a de instruct , iuni de mai jos, variabilele i s , i j sunt de tip ˆıntreg. F˘ar˘a a utiliza
alte variabile, scriet , i una sau mai multe instruct , iuni C/C++ ce pot ˆınlocui punctele de
suspensie, astfel ˆıncˆat, ˆın urma execut˘arii secvent , ei obt , inute, s˘a se afis , eze matricea de mai
jos, dreapta. (6p.)
for (i=1;i <=5;i++) { < < < < *
for (j=1;j <=5;j++) < < < * >
< < * > >
...............
< * > > >
printf ("\n");| cout <<endl;
* > > > >
}
SUBIECTUL al III-lea (30 de puncte)
Scriet , i pe foaia de examen r˘aspunsul corect pentru fiecare dintre cerint , ele
urm˘atoare.
1. Scriet , i, ˆın pseudocod, un algoritm care cites , te de la tastatur˘a dou˘a numere naturale n
s , i m de maxim 9 cifre, apoi determin˘a s , i afis , eaz˘a factorii primi care se g˘asesc atˆat ˆın
descompunerea ˆın factori primi a lui n, cˆat s , i ˆın descompunerea ˆın factori primi a lui m,
la aceeas , i putere, iar dac˘a nu exist˘a factori comuni la aceeas , i putere se va afis , a mesajul
Imposibil. (10p.)
2
2
3
2
Exemple: Pentru n=2100 s , i m=600 se afis , eaz˘a 3, 5 (2100 = 2 · 3 · 5 · 7, 600 = 2 · 3 · 5 ),
2
3
3
pentru n=120 s , i m=1400 se afis , eaz˘a 2 (120 = 2 · 3 · 5, 1400 = 2 · 5 · 7), iar pentru n=6 s , i
2
m=9 se afis , eaz˘a Imposibil (6 = 2 · 3, 9 = 3 ).
2. Se citesc de la tastatur˘a trei numere naturale nenule: n, m s , i k. Considerˆand un tablou
unidimensional x cu elementele 1,2,...,n, scriet , i un program C/C++ care elimin˘a ele-
mente din x, ˆıncepˆand cu al m-lea, apoi cele din k ˆın k. (10p.)
Exemplu: Pentru n=15, m=2 s , i k=3, tabloul unidimensional x devine (1,3,4,6,7,
9,10,12,13,15).
6
3. Fis , ierul bac.txt cont , ine pe prima linie valoarea natural˘a nenul˘a a variabilei n (≤ 10 ), iar
pe urm˘atoarea linie un s , ir de n numere naturale de cel mult 2 cifre fiecare, acestea fiind
separate prin spat , ii. Se cere afis , area pe ecran a celui mai mare palindom de 7 cifre impare
care apar ˆın component , a celor n numere de pe linia a doua din fis , ier (dac˘a nu se poate
contrui un astfel de palindrom, se va afis , a pe ecran valoarea 0).