Page 94 - MATINF Nr. 7
P. 94
˘
94 PROBLEME DE INFORMATICA PENTRU EXAMENE
dup˘a fiecare num˘ar impar adaug˘a valoarea 1. Tabloul modificat este transmis tot prin
parametru v. (10p.)
2. Scriet , i un program C/C++ care cites , te de la tastatur˘a un num˘ar natural n ∈ [3, 10] s , i
construies , te ˆın memorie un tablou bidimensional cu n linii s , i n coloane numerotate de la 1
astfel ˆıncˆat fiecare linie a sa are propriet˘at , ile:
• elementele situate pe diagolana principal˘a au valoarea n;
• ˆıncepˆand de la diagonala principal˘a spre dreapta, valoarea elementului scade cu cˆate
o unitate, valoarea par˘a a lui n se memoreaz˘a, iar ˆın locul celei impare se va memora
ˆ
suma coordonatelor ˆın tablou. Incepˆand de la diagonala secundar˘a spre stˆanga,
valoarea elementului scade cu cˆate o unitate, valoarea par˘a a lui n se memoreaz˘a, iar
ˆın locul celei impare se va memora suma coordonatelor ˆın tablou.
Programul afis , eaz˘a pe ecran tabloul construit, fiecare linie a tabloului pe cˆate o linie a
ecranului, cu elementele aflate pe aceeas , i linie separate prin cˆate un spatiu. (10p.)
5 4 4 2 6
4 5 4 6 2
Exemplu: Dac˘a n = 5 se afis , eaz˘a pe ecran tabloul 4 4 5 4 8
2 6 4 5 4
6 2 8 4 5
5
3. Fis , ierele bac1.txt s , i bac2.txt cont , in numere naturale din intervalul [0, 10 ]: fis , ierul
bac1.txt cont , ine pe prima linie un num˘ar n1, iar pe a doua linie un s , ir de n1 numere,
iar fis , ierul bac2.txt cont , ine pe prima linie un num˘ar n2, iar pe a doua linie un s , ir de
n2 numere. Numerele aflate pe aceeas , i linie a unui fis , ier sunt ordonate cresc˘ator s , i sunt
separate prin cˆate un spat , iu. Se cere s˘a se afis , eze pe ecran suma numerelor prime. Se
s , tie c˘a un num˘ar poate s˘a apar˘a de mai multe ori ˆıntr-unul sau ˆın ambele fis , iere, acesta
va fi ad˘augat la sum˘a o singur˘a data. Dac˘a nu exist˘a niciun num˘ar prim, se va afis , a pe
ecran mesajul nu exista. Proiectat , i un algoritm eficient din punct de vedere al memoriei
utilizate s , i al timpului de executare.
Exemplu:
Dac˘a fis , ierul bac1.txt cont , ine numerele iar fisierul bac2.txt cont , ine numerele
5 8
1 9 10 11 14 2 5 9 9 17 23 101 138
Pe ecran se afis , eaz˘a 159.
a) Descriet , i ˆın limbaj natural algoritmul proiectat, justificˆand eficient , a acestuia. (2p.)
b) Scriet , i programul C/C++ corespunzator algoritmului proiectat. (8p.)