Academos
  1. Subiecte
  2. Bacalaureat
  3. Informatică științele naturii, Pascal
  4. Subiectul al III-lea, 2.

Subiectul al III-lea, 2., toate variantele

Bacalaureat, Informatică științele naturii, Pascal, 2021-2026. Rezolvă-le pe rând, cu baremul la îndemână.

Sesiuni de examen

Un șir semioglindit se obține dintr-un șir de 2·k (k∈[1,10²]) termeni, prin interschimbarea în acesta a secvenței formate din primii k termeni cu secvența formată din ultimii k termeni.

Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[2,10²]) și un șir de n numere naturale din intervalul [1,10⁶], elemente ale unui tablou unidimensional, apoi modifică tabloul în memorie, dacă are un număr par de elemente, prin înlocuirea șirului memorat cu șirul semioglindit obținut din el. Programul afișează pe ecran elementele tabloului obținut, separate prin câte un spațiu, sau mesajul nu exista, dacă șirul are număr impar de termeni. Exemplu: pentru n=6 și tabloul (2,3,4,4,5,1) se obține tabloul (4,5,1,2,3,4). (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional, conform cerinței - 1p. -citire a datelor, conform cerinței - 1p. -transformare a tabloului conform cerinței (*) - 6p. -afișare a datelor, conform cerinței - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a unui tablou cu număr par de elemente, realizare a unei interschimbări/mutări a unor elemente, valori suport obținute în prima jumătate a șirului, valori suport obținute în a doua jumătate a șirului, transformare în memorie, tratare a cazului nu exista) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[2,50]) și cele n elemente ale unui tablou unidimensional, numere întregi din intervalul [10,10⁴). Programul afișează pe ecran mesajul DA și un număr natural k, separate printr-un spațiu, dacă toate valorile memorate în tablou au câte k cifre, sau mesajul NU în cazul în care nu toate valorile au același număr de cifre. Exemplu: pentru n=6 și tabloul (123, 241, 896, 908, 100, 536) se afișează pe ecran DA 3 iar pentru n=6 și tabloul (123, 21, 896, 908, 100, 1536) se afișează pe ecran NU (10p.)

Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să permită memorarea unui tablou unidimensional, conform cerinței - 1p. -citire a datelor - 1p. -verificare a proprietății cerute (*) - 6p. -afișare a datelor în formatul cerut - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 2p. pentru fiecare aspect specific (algoritm principial corect de verificare a unei proprietăți, determinare a numărului de cifre ale unui element, elemente suport verificate) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Pentru a identifica punctele în care se concentrează apa în albia unui râu în cazul secetei, se determină talvegul acesteia – linia care unește punctele cele mai adânci ale albiei. În acest scop deocamdată s-au stabilit două secțiuni transversale pe cursul apei, și în cadrul fiecărei secțiuni s-a măsurat adâncimea apei în np puncte, numerotate începând de la 1. Din fiecare secțiune, în ordine, se include în talveg cel mai adânc punct al acesteia, iar dacă în secțiune sunt mai multe puncte aflate la aceeași adâncime, maximă, se va lua în considerare doar primul dintre ele, ca în exemplu. Scrieți un program Pascal care citește de la tastatură un număr natural, np (np∈[1,50]), 2∙np elemente ale unui tablou unidimensional, numere naturale din intervalul [0,10²]. Primele np valori corespund primei secțiuni, ultimele np valori corespund celei de a doua secțiuni, iar valorile memorate reprezintă adâncimile celor np puncte stabilite pentru acea secțiune, în ordinea numerotării lor. Programul afișează pe ecran, pentru fiecare secțiune, o pereche formată din numărul de ordine al secțiunii și numărul de ordine al punctului său care s-a inclus în talveg. Numerele din fiecare pereche sunt afișate separate prin câte un caracter : (două puncte), iar fiecare pereche este urmată de un spațiu. Exemplu: pentru np=4 și tabloul (2,4,5,3,1,3,2,3), se afișează pe ecran valorile: 1:3 2:2 (10p.)

Arată baremul

2. Pentru program corect - 10p. - variabilă de tip tablou unidimensional, declarată conform cerinței - 1p. - date citite conform cerinței - 1p. - valori cu proprietatea cerută determinate (*) - 6p. - date afișate în format conform cerinței - 1p. - variabile simple declarate conform cerinței, corectitudine globală a programului¹ - 1p. (*) Se acordă câte 2p. pentru fiecare aspect specific (algoritm de bază pentru determinare a valorii maxime dintr-o serie de valori, determinare a poziției unui maxim într-o serie de valori, valori suport verificate pentru determinarea unui maxim pentru fiecare secțiune) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Un joc folosește o tablă pe care este reprezentat un șir de n celule de dimensiune egală, dispuse una lângă alta. În fiecare celulă este înscris un număr natural. Numim pereche de valoare p două celule ale tablei, situate pe poziții consecutive, cu proprietatea că suma valorilor înscrise în aceste celule este egală cu p. Scopul jocului este determinarea unei perechi de valoare maximă. În exemplul de pe pagina originală sunt evidențiate celulele cu valorile 12 și 11.

Precizare comună din enunț: Identificatorii utilizați în rezolvări trebuie să respecte precizările din enunț (bold), iar în lipsa unor precizări explicite, notațiile trebuie să corespundă cu semnificațiile asociate acestora (eventual în formă prescurtată). Datele de intrare se consideră corecte, validarea lor nefiind necesară.

Scrieți un program Pascal care citește de la tastatură un număr natural, n (n∈[2,20]), apoi cele n elemente ale unui tablou unidimensional, numere naturale din intervalul [0,10⁴], reprezentând numerele înscrise pe tabla de joc, în ordinea dispunerii celulelor corespunzătoare. Programul determină o pereche de valoare maximă pentru tabla dată și afișează pe ecran această valoare. Exemplu: pentru n=8 și tabla | 1 | 12 | 11 | 1 | 14 | 4 | 2 | 16 | se afișează valoarea 23, corespunzătoare perechii evidențiate. (10p.)

Pagina din subiect cu figura sau tabelul itemului
Pagina din subiectul oficial.
Arată baremul

SUBIECTUL al III-lea / 2. Pentru program corect - 10p. - variabilă de tip tablou unidimensional, declarată conform cerinței - 1p. - date citite conform cerinței - 1p. - valoare determinată conform cerinței (*) - 6p. - date afișate, conform cerinței - 1p. - variabile simple declarate conform cerinței, corectitudine globală a programului¹ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect (identificare a unei perechi situate în interiorul tabloului, identificare a unei perechi situate la începutul tabloului, identificare a unei perechi situate la finalul tabloului, determinare a valorii unei perechi, algoritm principial corect de determinare a unei valori maxime, perechi suport verificate pentru determinarea valorii maxime) conform cerinței. ¹ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Tabloul din exemplul ilustrat pe pagina 2: 3 4 9 3 6 3 2 4 4 5 3 8 În imagine sunt marcate cu fundal gri parcelele de pe pozițiile 1, 4, 7 și 11, numerotate de la stânga la dreapta. Contururile grupează pozițiile 1–2, 4–7 și 10–11.

Pentru prevenirea eroziunii la Marea Neagră, autoritățile au hotărât înnisiparea unei plaje. Plaja a fost împărțită în parcele de formă pătrată cu latura de 1 metru, dispuse ca elementele unui tablou unidimensional, reținându-se nivelul fiecărei parcele, măsurat în metri, de la nivelul mării. Înnisiparea se realizează doar pe acele parcele care au nivelul strict mai mic decât al celei mai joase dintre parcelele vecine cu ea, adăugând nisip, astfel încât cele două să aibă același nivel. Două parcele sunt vecine dacă au o latură comună. Scrieți un program Pascal care citește de la tastatură un număr natural din intervalul [2,10²], n, apoi cele n elemente ale unui tablou unidimensional, numere naturale din intervalul [1,10], reprezentând nivelurile parcelelor, în ordinea dispunerii acestora pe plajă. Programul afișează pe ecran cantitatea totală de nisip adăugată, măsurată în metri cubi. Exemplu: pentru n=12 și tabloul alăturat se vor înnisipa parcelele marcate, pentru a fi aduse la nivelul parcelelor vecine corespunzătoare, și se va afișa valoarea 7 (7=1+3+1+2). (10p.)

Pagina din subiect cu figura sau tabelul itemului
Pagina din subiectul oficial.
Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a elementelor tabloului - 1p. -determinare a valorii cerute (*) - 6p. -afișare a datelor - 1p. -declarare a variabilelor simple, citire a datelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a două parcele vecine pentru cel puțin unul dintre cazurile de plasare a acestora, algoritm de bază pentru determinarea unei valori minime dintr-o serie de maximum două, parcele vecine suport pentru determinarea minimului - pentru toate cazurile particulare, identificare a unei parcele care se înnisipează, algoritm de bază pentru însumarea unei serii de valori, valori suport însumate) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

2. Un număr natural a, divizibil cu 10, se numește 10-prieten al unui număr natural b dacă a<b, iar în intervalul (a,b] nu există niciun număr divizibil cu 10. Exemplu: 20 este 10-prieten al numerelor 21, 22 și 29, dar nu este 10-prieten al numerelor 31 și 9. Un elev vrea să transmită unui prieten un șir de numere naturale, codificate. Cel puțin unul dintre numere NU este divizibil cu 10. Codificarea se face prin înlocuirea fiecărui număr care nu este divizibil cu 10 cu 10-prietenul său, ca în exemplu.

Scrieți un program Pascal care citește de la tastatură un număr natural, n (n∈[2,10²]), și cele n elemente ale unui tablou unidimensional, numere naturale din intervalul [0,99], reprezentând șirul de tipul precizat și determină, în memorie, forma codificată a acestuia. Programul afișează pe ecran elementele șirului codificat obținut, separate prin câte un spațiu. Exemplu: dacă n=7, iar șirul care corespunde tabloului este (21, 70, 16, 7, 9, 50, 19) se obține șirul codificat prin tabloul (20, 70, 10, 0, 0, 50, 10). (10p.)

Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a datelor - 1p. -determinare a tabloului conform formei codificate (*) - 6p. -afișare a datelor - 1p. -declarare a variabilelor de tip simplu, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (acces la un element al unui tablou, identificare a unui număr divizibil/care nu este divizibil cu 10, algoritm de bază pentru determinarea primei valori cu o anumită proprietate dintr-o serie/a unui număr 10-prieten, înlocuire a unui element într-un tablou, elemente suport înlocuite/păstrate, transformare în memorie) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură două numere naturale din intervalul [1,10²], n și k, și cele n elemente ale unui tablou unidimensional, numere naturale din intervalul [0,10⁹]. Programul afișează pe ecran, separate prin câte un spațiu, primele k elemente ale tabloului care au cifra unităților 0, sau doar mesajul nu exista dacă nu există k astfel de elemente. Exemplu: pentru n=8, tabloul (23, 70, 61, 8, 0, 50, 742, 10) și k=3, se afișează pe ecran numerele 70 0 50 (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a tuturor datelor - 1p. -determinare a valorilor cerute (*) - 5p. -afișare a datelor și tratare a cazului nu exista (**) - 2p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (parcurgere a unei serii de elemente ale tabloului, acces la ultima cifră a unui număr, identificare a unei cifre nule, algoritm de bază pentru numărarea unei serii de valori, valori suport numărate) conform cerinței. (**) Se acordă numai 1p. dacă s-au afișat atât unele valori, cât și mesajul indicat. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură două numere naturale din intervalul [2,10²], k și n, și construiește în memorie un tablou unidimensional cu n elemente, numerotate de la 0 la n−1, astfel încât parcurgând fiecare poziție pară a sa, de la stânga la dreapta, să se obțină un șir strict crescător format din primii multipli naturali nenuli ai lui k și parcurgând fiecare poziție impară a sa, de la stânga la dreapta, să se obțină șirul strict crescător al primelor numere naturale. Elementele tabloului obținut sunt afișate pe ecran, separate prin câte un spațiu. Exemplu: pentru k=5 și n=9 se obține tabloul de mai jos (5, 0, 10, 1, 15, 2, 20, 3, 25). (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a datelor - 1p. -construire a tabloului conform cerinței (*) - 6p. -afișare a datelor - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a unor poziții pare/impare, determinare a unui multiplu al lui k, multipli ai lui k suport plasați pe poziții pare, plasare a unor valori consecutive în tablou, valori suport plasate pe poziții impare, construire în memorie) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Simulări și modele de subiect

Terenul alocat unui târg de jucării artizanale a fost împărțit în zone dispuse ca elementele unui tablou unidimensional. Pentru a putea fi testate de copii, fiecare jucărie are alocată o zonă și este identificată printr-un număr natural. Organizatorii au hotărât eliminarea celei de a doua și a penultimei jucării și rearanjarea celor păstrate, astfel încât prima să rămână pe aceeași poziție, să nu existe zone intermediare libere, iar jucăriile păstrate să rămână în ordinea stabilită inițial, ca în exemplu. Scrieți un program Pascal care citește de la tastatură numere naturale din intervalul [4,10²], și anume n și cele n elemente ale unui tablou unidimensional, reprezentând numerele de identificare ale jucăriilor, în ordinea plasării lor inițiale pe teren. Programul modifică apoi tabloul în memorie corespunzător hotărârii organizatorilor și afișează pe ecran tabloul obținut, cu elementele separate prin câte un spațiu. Exemplu: pentru n=5 și tabloul 85 36 26 12 25 se obține tabloul 85 26 25 (10p.)

Pagina din subiect cu figura sau tabelul itemului
Pagina din subiectul oficial.
Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional conform cerinței - 1p. -citire a datelor - 1p. -modificare a tabloului, conform cerinței (*) - 6p. -afișare a unui tablou în formatul cerut - 1p. -declarare a variabilelor de tip simplu, corectitudine globală a programului¹⁾ - 1p.

(*) Se acordă câte 2p. pentru fiecare aspect specific (algoritm de bază de eliminare în memorie a unor elemente, identificare a unui element aflat pe cel puțin una dintre pozițiile cerute pentru eliminare, elemente suport eliminate/păstrate) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

O metodă de criptare a unui șir de numere se bazează pe un cifru format din mai multe coduri, numere naturale. Prin criptare, la fiecare pas se ia în considerare o pereche formată dintr-un termen nenul al șirului și un cod al cifrului, iar acest termen este înlocuit cu suma dintre el și codul din pereche. Prima pereche este formată din primul termen nenul al șirului și primul cod al cifrului, iar după fiecare pereche urmează cea formată din termenul următor nenul al șirului, parcurs de la stânga la dreapta, respectiv din codul următor din cifru, parcurs circular, spre dreapta, ca în exemplu.

Scrieți un program Pascal care citește de la tastatură numere naturale: un număr n (n∈[1,100]), apoi un șir de n numere din intervalul [0,10⁴], elemente ale unui tablou unidimensional, iar la final trei numere din intervalul [0,10], reprezentând, în această ordine, codurile unui cifru. Programul modifică tabloul în memorie, criptând șirul cu cifrul dat, apoi afișează pe ecran tabloul obținut. Exemplu: pentru n=11, tabloul (9,6,8,3,1,0,21,14,0,20,5) și cifrul cu codurile 3, 1, 6 se obține tabloul (12,7,14,6,2,0,27,17,0,21,11); primele patru perechi sunt 9-3, 6-1, 8-6, 3-3. (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional conform cerinței - 1p. -citire a datelor, conform cerinței - 1p. -codificare a șirului cerut (*) - 6p. -afișare a datelor - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a unei valori nule/nenule, tratare a cel puțin unei perechi valoare nenulă-cod prin adunare, deplasare circulară în cadrul codurilor, perechi valoare nenulă-cod suport parcurse, valori nule/nenule suport nemodificate/modificate, modificare în memorie) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură două numere naturale din intervalul [2,10²], k și n, și construiește în memorie un tablou unidimensional cu n elemente, numerotate de la 0 la n-1, astfel încât parcurgând fiecare poziție pară a sa, de la stânga la dreapta, să se obțină un șir strict crescător format din primii multipli naturali nenuli ai lui k, și parcurgând fiecare poziție impară a sa, de la stânga la dreapta, să se obțină șirul strict descrescător al primelor numere naturale, ca în exemplu. Elementele tabloului obținut sunt afișate pe ecran, separate prin câte un spațiu. Exemplu: pentru k=5 și n=9 se obține tabloul (5, 3, 10, 2, 15, 1, 20, 0, 25). (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a datelor - 1p. -construire a tabloului conform cerinței (*) - 6p. -afișare a datelor - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a unor poziții pare/impare, determinare a unui multiplu al lui k, multipli ai lui k suport plasați pe poziții pare, plasare a unor valori consecutive ordonate descrescător în tablou, valori suport plasate pe poziții impare, construire în memorie) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Două numere naturale nenule se numesc asemenea dacă sunt distincte și dacă 5 apare la aceeași putere în descompunerea în factori primi a fiecăruia dintre ele.

Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[1,10²]), apoi un șir de n numere naturale din intervalul [1,10⁶], elemente ale unui tablou unidimensional. Programul afișează pe ecran, separate prin câte un spațiu, toate numerele din șir asemenea cu ultimul număr citit, sau mesajul nu exista dacă nu există astfel de numere. Exemplu: pentru n=9, tabloul (20, 875, 100, 250, 12347, 5, 500, 625, 250), se afișează pe ecran, nu neapărat în această ordine, numerele 875 500 (10p.)

Arată baremul

2. Pentru program corect - 10p. - declarare a unei variabile care să permită memorarea elementelor unui tablou unidimensional, conform cerinței - 1p. - citire a datelor - 1p. - determinare a valorilor conform cerinței (*) - 6p. - afișare a valorilor în formatul cerut și tratare a cazului nu exista - 1p. - declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (algoritm de bază pentru numărare a unei serii de valori, identificare a unui factor prim 5 pentru un număr, factori numărați pentru determinarea puterii lui 5, identificare numere identice/distincte, identificare a două numere cu aceeași putere a lui 5 în descompunerea în factori primi, numere suport asemenea identificate) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[1,10²]), apoi un șir de n numere naturale distincte din intervalul [1,10⁹], elemente ale unui tablou unidimensional. Programul afișează pe ecran termenii șirului, pe două linii separate, astfel încât prima linie să conțină mulțimea celor care au mai puțin de trei cifre, iar a doua linie să conțină mulțimea celor care au mai mult de trei cifre. Numerele de pe fiecare linie sunt afișate într-o ordine oarecare, iar dacă una dintre cele două mulțimi este vidă, se afișează pe ecran doar mesajul nu exista. Exemplu: pentru n=7 și tabloul (124,49,957,9000,2,5237,100000) se pot afișa pe ecran valorile alăturate. 49 2 9000 5237 100000 (10p.)

Arată baremul

Reguli generale:

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. - declarare a unei variabile care să memoreze un tablou unidimensional - 1p. - citire a datelor - 1p. - afișare a valorilor conform cerinței (*) - 6p. - tratare a cazului nu exista - 1p. - declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p.

(*) Se acordă câte 1p. pentru fiecare aspect (identificare a unui număr care are mai mult/mai puțin/exact trei cifre, elemente suport analizate, elemente suport afișate pentru fiecare mulțime, afișare consecutivă a elementelor din aceeași mulțime, ordine a mulțimilor de elemente, afișare pe două linii separate) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Un șablon este un șir de numere întregi, în care termenii strict negativi sunt numiți termeni generici. Un computer generează un șir pe baza unui astfel de șablon, prin înlocuirea fiecărui termen generic al șablonului cu unul dintre numerele cu aceeași cifră a unităților, preluat dintr-o listă dată de numere naturale. Exemplu: termenul generic -20 se poate înlocui cu 0 sau cu 50, dacă lista este (24,2,0,36,201,50).

Identificatorii utilizați în rezolvări trebuie să respecte precizările din enunț (bold), iar în lipsa unor precizări explicite, notațiile trebuie să corespundă cu semnificațiile asociate acestora (eventual în formă prescurtată). Datele de intrare se consideră corecte, validarea lor nefiind necesară.

Scrieți un program Pascal care citește de la tastatură un număr natural, nL (nL∈[1,100]), și cele nL elemente ale unui tablou unidimensional L, apoi un număr natural, nS (nS∈[1,100]), și cele nS elemente ale unui tablou unidimensional S. Tabloul L reprezintă o listă de tipul precizat mai sus și elementele sale sunt numere naturale din intervalul [0,10³], iar tabloul S reprezintă un șablon de tipul precizat mai sus și elementele sale sunt numere întregi din intervalul [-10⁹,10⁹]. Programul transformă în memorie tabloul corespunzător șablonului, astfel încât acesta să memoreze unul dintre șirurile care pot fi generate de computer pe baza acestui șablon și a listei date și apoi afișează pe ecran, separate prin câte un spațiu, elementele tabloului obținut sau mesajul imposibil dacă nu se poate genera un astfel de șir. Exemplu: dacă nL=7, lista este L=(24,2,0,36,21,104,50), iar nS=8 pentru șablonul S=(-16,0,3,-452,-10,-974,10,-20) se generează șirul (36,0,3,2,0,24,10,0) sau șirul (36,0,3,2,0,104,10,50) etc., iar pentru șablonul S=(-17,0,3,-452,-10,-975,10,-20) se afișează mesajul imposibil. (10p.)

Arată baremul

2. Pentru program corect - 10p. - declarare a unor variabile care să permită memorarea unei liste de numere și a unui șablon, conform cerinței - 1p. - citire a datelor, conform cerinței - 1p. - determinare a unui șir conform cerinței (*) - 6p. - afișare a datelor și tratare a cazului imposibil - 1p. - declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect (termeni suport analizați în șablon, identificare a unui termen generic, algoritm de bază de căutare, identificare în listă a unui număr adecvat pe baza cifra unităților unui număr negativ, înlocuire în memorie a unui termen într-un șir, termeni suport înlocuiți/păstrați) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Tabloul alăturat, de sus în jos: 1 3 2 0 3 3 1 3

Suprafața unui loc de joacă pentru copii este împărțită în n zone de formă dreptunghiulară dispuse pe n rânduri, numerotate de la 1 la n, în fiecare zonă fiind plasat un tobogan, un leagăn, un balansoar sau un carusel. Zonelor li se atribuie câte un cod, în funcție de destinație: codul 0 pentru tobogan, codul 1 pentru leagăn, codul 2 pentru balansoar și codul 3 pentru carusel. Scrieți un program Pascal care citește de la tastatură un număr natural, n (n∈[1,10²]), și cele n elemente ale unui tablou unidimensional, reprezentând codurile corespunzătoare zonelor din locul de joacă, în ordinea parcurgerii lor rând după rând. Programul determină zonele destinate plasării câte unui carusel, care NU au nicio latură comună cu o zonă cu tobogan și, pentru fiecare dintre acestea, afișează pe ecran numărul de ordine al rândului pe care se află. Numerele afișate sunt separate prin câte un spațiu, iar dacă nu există nicio astfel de zonă, se afișează pe ecran mesajul nu exista. Exemplu: pentru n=8 și tabloul alăturat, cu elemente numerotate de sus în jos, se afișează pe ecran, nu neapărat în această ordine, numerele: 2 6 8. (10p.)

Pagina din subiect cu figura sau tabelul itemului
Pagina din subiectul oficial.
Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze codurile - 1p. -citire a datelor - 1p. -determinare a zonelor cu proprietatea cerută (*) - 6p. -afișare a datelor și tratare a cazului nu exista - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect al cerinței (identificare a unei zone destinate unui carusel, identificare a unei zone destinate pentru tobogan, zone vecine suport pentru un carusel din interiorul suprafeței, zone vecine suport pentru un carusel de pe rândul 1 al suprafeței, zone vecine suport pentru un carusel de pe rândul n al suprafeței, nicio latură comună cu o zonă cu tobogan). 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură numărul natural n (n∈[2,50]), apoi n numere naturale din intervalul [0,10²), elemente ale unui tablou unidimensional. Programul modifică tabloul în memorie, înlocuind fiecare element al tabloului care are cifra zecilor în mulțimea {2,3} cu valoarea 23. Elementele tabloului obținut sunt afișate pe ecran, separate prin câte un spațiu. Exemplu: pentru n=11 și tabloul (9,2,20,75,35,20,40,59,23,16,34) se obține tabloul (9,2,23,75,23,23,40,59,23,16,23), iar pentru n=4 și tabloul (2,0,2,3) se obține tot (2,0,2,3). (10p.)

Pagina din subiect cu figura sau tabelul itemului
Pagina din subiectul oficial.
Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a datelor - 1p. -modificare a tabloului conform cerinței (*) - 6p. -afișare a datelor - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 2p. pentru fiecare aspect (identificare a cifrei zecilor unui număr cu cel puțin două cifre, elemente suport înlocuite/păstrate, modificare în memorie) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură un număr natural, n (n∈[2,10²]), și un șir de n numere naturale din intervalul [10,10³], elemente ale unui tablou unidimensional. Programul afișează pe ecran un număr natural k, dacă toate numerele din șir au câte k cifre, sau mesajul NU, în caz contrar. Exemplu: pentru n=5 și tabloul (100, 712, 310, 130, 490), se afișează pe ecran 3 pentru n=5 și tabloul (1000, 712, 310, 130, 490), se afișează pe ecran mesajul NU (10p.)

Arată baremul

SUBIECTUL al III-lea / 2. Pentru program corect - 10p. -declarare a unei variabile de tip tablou unidimensional - 1p. -citire a datelor - 1p. -determinare a valorii cerute (*) - 6p. -tratare a cazului NU și afișare fie a numărului cerut, fie a mesajului indicat - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 2p. pentru fiecare aspect specific (identificare a numărului de cifre ale unui număr, algoritm de bază pentru verificarea unei proprietăți, numere suport verificate) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Un șir de valori naturale reprezintă o listă a unor date codificate de identificare ale invitaților la o petrecere; fiecare invitat are un prenume și un nume, formate din câte un singur cuvânt. Cuvintele sunt codificate prin numere naturale nenule, iar codurile corespunzătoare prenumelui, respectiv numelui unei persoane apar în listă în această ordine, urmate de o valoare 0.

Scrieți un program Pascal care citește de la tastatură numere naturale, în această ordine: un număr n (n∈[2,100]), cele 3·n elemente ale unui tablou unidimensional, numere din intervalul [0,10⁴], reprezentând o listă de date de tipul precizat mai sus, apoi un număr nenul x. Programul afișează pe ecran, separate prin câte un spațiu, codificări ale numelor tuturor invitaților care au prenumele codificat prin x, ca în exemplu, sau mesajul NU dacă nu există astfel de invitați. Exemplu: pentru n=4, tabloul (10,121,0,101,512,0,10,9876,0,2103,10,0) și x=10 se afișează pe ecran 121 9876. (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile de tip tablou unidimensional - 1p. -citire a datelor în ordinea indicată - 1p. -determinare a valorilor cerute (*) - 6p. -tratare a cazului NU și afișare fie a codurilor în formatul cerut, fie a mesajului indicat - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (parcurgere a unor elemente ale unui tablou, identificare a unei valori x date în cadrul elementelor tabloului, identificare a codului unui nume corespunzător codului unui prenume, tratare a cazului în care codul x dat corespunde unui nume, valori nenule pentru coduri, valori suport identificate) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[2,10²]) și construiește în memorie un tablou unidimensional cu n elemente, cu proprietatea că parcurgându-l de la stânga la dreapta se obține șirul primelor n pătrate perfecte pare, ordonat strict descrescător, ca în exemplu. Elementele tabloului obținut se afișează pe ecran, separate prin câte un spațiu. Exemplu: pentru n=6 se obține tabloul (100,64,36,16,4,0). (10p.)

Arată baremul

SUBIECTUL al III-lea / 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -acces la un element al tabloului - 1p. -citire a datelor - 1p. -construire a tabloului cerut (*) - 5p. -afișare a datelor în formatul cerut - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p.

(*) Se acordă câte 1p. pentru fiecare aspect specific (numere pare, numere pătrate perfecte, ordine valori, valori suport, construire în memorie) conform cerinței.

1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Reguli generale:

Scrieți un program Pascal care citește de la tastatură numere naturale, în această ordine: n (n∈[2,20]), apoi n numere din intervalul [0,10²], elemente ale unui tablou unidimensional, iar la final valoarea k (k∈[2,n]); programul transformă tabloul în memorie, prin deplasarea circulară spre dreapta, cu câte o poziție, a primelor k valori aflate în tablou, ca în exemplu. Elementele tabloului obținut sunt afișate pe ecran, separate prin câte un spațiu. Exemplu: pentru n=7, k=4 și tabloul (3,0,6,4,0,0,8) se obține tabloul (4,3,0,6,0,0,8). (10p.)

Arată baremul

SUBIECTUL al III-lea / 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou unidimensional - 1p. -citire a datelor conform cerinței - 1p. -transformare a tabloului conform cerinței (*) - 6p. -afișare a datelor cerute - 1p. -declarare a variabilelor simple, corectitudine globală a programului¹) - 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (acces la un element al tabloului, identificare a unui element situat pe primele k poziții, deplasare spre dreapta a unor elemente, deplasare circulară a unui element, valori suport deplasate/nemodificate, transformare în memorie) conform cerinței. ¹) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Exersează zilnic cu Academos

Aplicația pentru Evaluarea Națională și Bac. În curând pe:

  • App Store
  • Google Play