Cerința
8 puncteScrieți programul C/C++ corespunzător algoritmului proiectat. (8p.)
Arată baremul
3. b) Pentru program corect - 8p. -operații cu fișiere: declarare, pregătire în vederea scrierii, scriere în fișier - 1p. -determinare a valorii cerute (*),(**) - 5p. -utilizare a unui algoritm eficient (***) - 1p. -declarare a variabilelor, citire a datelor, 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ă valoarea lui n, corespunzătoare termenului fₙ=y, pe baza expresiei n=(y-x)/2; se generează termenii șirului mai mici decât y pe baza relației fₙ=x=y-2·(n+1), unde x, y și n se actualizează corespunzător, la fiecare pas. O altă soluție posibilă nu utilizează deloc valoarea lui x, ci deduce formula termenului general ca fiind fₙ=1+n·(n+1) și determină valoarea lui n corespunzătoare termenului fₙ=y rezolvând ecuația n²+n-y+1=0; se generează termenii fₙ ai șirului pe baza formulei deduse, unde n se actualizează corespunzător, la fiecare pas. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.