Cerința
8 puncteScrieți programul C/C++ corespunzător algoritmului proiectat. (8p.)
Arată baremul
Reguli generale:
SUBIECTUL al III-lea, 3. b. Pentru program corect - 8p. - operații cu fișiere: declarare, pregătire în vederea citirii, citire din fișier - 1p. - valori determinate, conform cerinței (*),(**) - 5p. - eficiență a algoritmului, conform cerinței (***) - 1p. - variabile declarate, afișare a datelor conform cerinței, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă punctajul chiar dacă algoritmul ales nu este eficient. (**) Se acordă numai 3p. dacă algoritmul este principial corect, dar nu oferă rezultatul cerut pentru toate seturile de date de intrare. (***) Se acordă punctajul numai pentru un algoritm liniar, care utilizează eficient memoria. O soluție posibilă determină, pe măsura citirii datelor, valorile minime și maxime curente (minc, maxc, inițializate cu 10⁹+1, respectiv cu −10⁹−1) dintre cele citite, poziția curentă în șir (p), precum și valorile cerute pmin și pmax. Pentru fiecare valoare citită (x), p este incrementat; dacă x∈[minc,maxc], atunci se actualizează, după caz, pmin (la prima apariție a unui astfel de caz) sau pmax (la fiecare apariție a unui astfel de caz), care primesc valoarea curentă a lui p; dacă x∉[minc,maxc], se actualizează, după caz, minc (dacă x<minc) sau maxc (dacă x>maxc). Valorile cerute sunt pmin și pmax.
1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.