Academos
  1. Subiecte
  2. Bacalaureat
  3. Informatică mate-info, Pascal
  4. Subiectul al III-lea, 2.

Subiectul al III-lea, 2., toate variantele

Bacalaureat, Informatică mate-info, Pascal, 2021-2026. Rezolvă-le pe rând, cu baremul la îndemână.

Sesiuni de examen

Scrieți un program Pascal care citește de la tastatură un cuvânt format din cel puțin două și cel mult 100 de caractere, numai litere mici ale alfabetului englez, și afișează pe ecran mesajul alterneaza, dacă în text nu există două vocale sau două consoane pe poziții consecutive, sau mesajul nu alterneaza, în caz contrar. Exemplu: pentru cuvintele imunopolizaharide sau pas se afișează mesajul alterneaza iar pentru cuvântul aer se afișează mesajul nu alterneaza (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. - variabilă care să permită memorarea unui șir de caractere, declarată conform cerinței - 1p. - date citite, conform cerinței - 1p. - proprietate verificată conform cerinței (*) - 6p. - mesaj afișat, conform cerinței - 1p. - variabile simple declarate conform cerinței, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect (algoritm de bază pentru verificarea unei proprietăți, identificare a unei vocale/consoane, accesare a unor caractere aflate pe poziții consecutive, identificare a unei perechi de vocale pe poziții consecutive, identificare a unei perechi de consoane pe poziții consecutive, caractere suport verificate) conform cerinței.

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

Un cuvânt semioglindit se obține dintr-un cuvânt cu 2·k (k∈[1,10²]) litere, prin interschimbarea în acesta a secvenței formate din primele k litere cu secvența formată din ultimele k litere. Exemplu: din cuvântul platim se obține cuvântul semioglindit timpla. Într-un text de cel mult 200 de caractere, cuvintele sunt formate din litere mici ale alfabetului englez și sunt separate prin câte un spațiu. Scrieți un program Pascal care citește de la tastatură un text de tipul precizat, pe care îl transformă în memorie, prin înlocuirea fiecărui cuvânt cu număr par de litere, cu cel semioglindit obținut din acesta, ca în exemplu. Programul afișează pe ecran textul obținut, sau mesajul nu exista, dacă toate cuvintele au număr impar de litere. Exemplu: pentru textul am facut fotografii unei flori mari se afișează pe ecran textul ma facut rafiifotog eiun flori rima (10p.)

Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un șir de caractere, conform cerinței - 1p. -citire a datelor, conform cerinței - 1p. -transformare a șirului 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 cuvânt cu număr par/impar de litere, caractere suport obținute în prima jumătate a unui cuvânt, caractere suport obținute în a doua jumătate a unui cuvânt, cuvinte suport înlocuite/păstrate, transformare în memorie, tratare a cazului nu exista) 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²], m și n, și elementele unui tablou bidimensional cu m linii și n coloane, numere naturale distincte din intervalul [0,10⁹]. Programul modifică tabloul în memorie, înlocuind valorile tuturor elementelor aflate pe coloana care conține numărul minim memorat în tablou cu valoarea elementului aflat pe ultima linie și ultima coloană. Tabloul obținut este afișat pe ecran, câte o linie a tabloului pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spațiu.

Exemplu: pentru m=3, n=4 și tabloul 17 12 5 19 10 16 2 4 11 21 8 9 se obține tabloul 17 12 9 19 10 16 9 4 11 21 9 9 (10p.)

Figura din subiect
Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou bidimensional, conform cerinței - 1p. -citire a datelor, conform cerinței - 1p. -modificare 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 (algoritm de bază pentru determinarea unei valori minime, valori suport verificate pentru determinarea minimului, identificare coloană suport a minimului, identificare element aflat pe ultima linie și ultima coloană, elemente suport înlocuite/nemodificate, modificare în memorie) conform cerinței.

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

Precizare generală a lucrării: 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ă.

Într-un text, de cel mult 100 de caractere, cuvintele sunt formate din litere ale alfabetului englez și sunt separate prin câte un spațiu. Textul are cel puțin două cuvinte. Scrieți un program Pascal care citește de la tastatură un text de tipul precizat mai sus și afișează pe ecran mesajul DA și un număr natural n, separate printr-un spațiu, dacă toate cuvintele din text au câte n litere, sau mesajul NU în cazul în care nu toate cuvintele au același număr de litere. Exemplu: dacă textul citit este Ana are cel mai bun mar se afișează pe ecran DA 3 iar dacă textul citit este Ana are cel mai dulce mar se afișează pe ecran NU (10p.)

Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să permită memorarea unui text, 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 lungimii unui cuvânt, cuvinte suport verificate) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

O grădină este împărțită în parcele pătrate identice, dispuse pe rânduri succesive. Toate parcelele de pe un rând conțin același tip de plante (doar flori sau doar gazon) și oricare două rânduri alăturate conțin tipuri diferite de plante, pe primul rând fiind gazon. Pentru fiecare parcelă se memorează înălțimea acesteia, egală cu înălțimea medie a plantelor conținute, exprimată în decimetri. Pentru a pune în valoare florile, fiecare parcelă cu flori trebuie să fie mai înaltă cu cel puțin un decimetru decât oricare dintre parcelele cu gazon de pe rândul vecin anterior. S-a hotărât tunderea parcelelor cu gazon prea înalte, astfel încât ele să fie aduse la înălțimea maximă permisă. Scrieți un program Pascal care citește de la tastatură două numere naturale din intervalul [2,10²], m și n, apoi elementele unui tablou bidimensional cu m linii și n coloane, numere naturale din intervalul [2,10], reprezentând înălțimile parcelelor, în ordinea dispunerii acestora în grădină, rând după rând, și pe fiecare rând de la stânga la dreapta. Programul modifică apoi tabloul în memorie corespunzător situației terenului după tunderea gazonului și afișează pe ecran tabloul obținut, fiecare linie a tabloului pe câte o linie a ecranului, elementele de pe aceeași linie fiind separate prin câte un spațiu. Exemplu: pentru m=4, n=6 și tabloul 6 2 3 7 9 4 7 8 5 9 8 5 8 7 2 6 2 9 7 2 5 9 3 8 se obține tabloul 4 2 3 4 4 4 7 8 5 9 8 5 1 1 1 1 1 1 7 2 5 9 3 8 (10p.)

Figura din subiect
Arată baremul

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

(*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a unui rând/a unei parcele cu flori/gazon, algoritm de bază pentru determinarea unei valori minime/maxime pentru o parcelă cu gazon dintr-o serie de valori, parcele suport parcurse pe un rând pentru determinarea valorii minime/maxime, identificare a unui rând cu gazon vecin anterior unui rând cu flori, înălțimi suport păstrate/actualizate pe un rând cu gazon, perechi de rânduri suport verificate/actualizate) 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 s-au stabilit ns secțiuni transversale pe cursul apei, numerotate începând de la 1, ș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ă două numere naturale, ns și np (ns∈[1,10³], np∈[1,50]), și cele ns·np elemente ale unui tablou bidimensional, valori naturale din intervalul [0,10²]. Fiecare linie a tabloului corespunde câte unei secțiuni, în ordinea numerotării acestora, iar valorile memorate pe linie 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 ns=6, np=4 și tabloul alăturat, se afișează pe ecran valorile: 1:3 2:2 3:2 4:2 5:4 6:3 (10p.)

Tabloul alăturat: 2 4 5 3 2 6 6 3 1 5 2 5 1 3 3 3 3 4 3 5 0 1 2 1

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

2. Pentru program corect - 10p. - variabilă de tip tablou bidimensional, 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ă dreptunghiulară, pe care sunt reprezentate celule de dimensiune egală, dispuse pe m linii și pe n coloane. În fiecare celulă este înscris un număr natural. Numim pătrat de valoare p patru celule ale tablei, situate pe două linii consecutive și pe două coloane consecutive, cu proprietatea că suma valorilor înscrise în aceste celule este egală cu p. Scopul jocului este determinarea unui pătrat de valoare maximă.

Tabloul din exemplu: 1 1 2 30 3 10 1 2 1 13 12 1 1 2 3 1 7 1 20 1

Exemplu: pentru m=5, n=4 și tabloul alăturat, se afișează pe ecran valoarea 36, corespunzătoare pătratului evidențiat în figură.

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ă două numere naturale din intervalul [2,20], m și n, apoi elementele unui tablou bidimensional cu m linii și n coloane, numere naturale din intervalul [0,10⁴], reprezentând numerele înscrise pe tabla de joc, în ordinea dispunerii celulelor corespunzătoare. Programul determină un pătrat de valoare maximă al tablei și afișează pe ecran această valoare. (10p.)

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

2. Pentru program corect - 10p. - variabilă de tip tablou bidimensional, 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 unui pătrat situat în interiorul tabloului, identificare a unui pătrat cu o latură pe prima linie/coloană a tabloului, identificare a unui pătrat cu o latură pe ultima linie/coloană a tabloului, determinare a valorii unui pătrat, algoritm principial corect de determinare a unei valori maxime, pătrate suport verificate pentru determinarea valorii maxime) conform cerinței.

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

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 bidimensional, 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ă două numere naturale din intervalul [2,10²], m și n, apoi elementele unui tablou bidimensional cu m linii și n coloane, 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 m=5, n=4 ș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 (1+3+1+2).

5 3 4 6 7 5 9 3 6 8 3 9 4 5 2 3 3 1 4 4

(10p.)

Figura din subiect
Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou bidimensional - 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 patru, 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.

Se consideră o vocală oarecare a alfabetului englez, notată cu v, și o consoană oarecare a alfabetului englez, notată cu c. Litera v se numește vocală prietenă a lui c dacă în șirul literelor alfabetului englez, ordonat lexicografic, v îl precede pe c, iar între v și c nu există nicio vocală. Se consideră vocale literele a, e, i, o, u. Exemplu: e este vocală prietenă pentru consoanele f, g și h, dar nu este vocală prietenă pentru consoanele d și j. Un elev vrea să transmită unui prieten o parolă, codificată. Parola este formată dintr-un singur cuvânt de cel mult 50 de caractere, litere mici ale alfabetului englez, cel puțin una fiind consoană. Codificarea se face prin înlocuirea fiecărei consoane cu vocala sa prietenă, ca în exemplu.

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 cuvânt, reprezentând o parolă de tipul precizat și determină, în memorie, forma codificată a acesteia. Programul afișează pe ecran parola codificată obținută. Exemplu: pentru parola rame se afișează oaie, iar pentru parola sport se afișează ooooo. (10p.)

Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un șir de caractere - 1p. -citire a datelor - 1p. -determinare a șirului 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 caracter al unui șir, identificare a unei vocale/consoane, algoritm de bază pentru determinarea primei valori cu o anumită proprietate dintr-o serie/a unei vocale prietene, înlocuire a unui caracter într-un șir, caractere suport înlocuite/păstrate, transformare în memorie) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Exemplu: dacă se citesc datele alăturate, se afișează pe ecran: norii pluteau

Datele alăturate: 5 2 norii cumulus pluteau pe cer

Scrieți un program Pascal care citește de la tastatură două numere naturale n și k, apoi n cuvinte, separate prin Enter. Fiecare cuvânt este format din cel mult 10 caractere, numai litere mici ale alfabetului englez, iar numerele citite sunt din intervalul [1,20]. Programul afișează pe ecran, pe linii separate, primele k cuvinte dintre cele citite pentru care ultima literă este o vocală, sau doar mesajul nu exista dacă nu există k astfel de cuvinte. Se consideră vocale literele a, e, i, o, u. (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 șir de caractere - 1p. -citire a tuturor datelor - 1p. -determinare a cuvintelor 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 cuvinte, acces la ultima literă a unui cuvânt, identificare a unei vocale/consoane, algoritm de bază pentru numărarea unei serii de valori, cuvinte suport numărate) conform cerinței. (**) Se acordă numai 1p. dacă s-au afișat atât unele cuvinte, cât și mesajul indicat. ¹⁾ 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 bidimensional cu număr egal de linii și coloane. 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 tuturor jucăriilor plasate pe diagonala secundară a tabloului și rearanjarea celor păstrate, prin deplasarea unora dintre acestea cu câte o poziție spre stânga, astfel încât să nu existe zone intermediare libere, ca în exemplu. Scrieți un program Pascal care citește de la tastatură numere naturale din intervalul [2,10²], și anume n și elementele unui tablou bidimensional cu n linii și n coloane, 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, fiecare linie a tabloului pe câte o linie a ecranului, elementele de pe aceeași linie fiind separate prin câte un spațiu. Exemplu: pentru n=4 și tabloul 20 25 20 26 36 16 48 52 64 72 35 90 85 36 12 25 se obține tabloul 20 25 20 36 16 52 64 35 90 36 12 25 (10p.)

Figura din subiect
Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un tablou bidimensional 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 deplasare spre stânga, în memorie, a unor elemente de pe o linie, identificare a unui element aflat pe diagonala secundară, 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 text se bazează pe un cifru format din mai multe coduri, numere naturale. Prin criptare se elimină spațiile, apoi la fiecare pas se ia în considerare o pereche formată dintr-o literă a textului și un cod al cifrului, iar această literă se înlocuiește cu cea obținută prin deplasarea circulară, spre dreapta, în alfabetul limbii engleze, cu un număr de poziții egal cu codul din pereche. Prima pereche este formată din prima literă a textului și primul cod al cifrului, iar după fiecare pereche urmează cea formată din litera următoare a textului, parcurs de la stânga la dreapta, respectiv din codul următor din cifru, parcurs circular, spre dreapta, ca în exemplu. Într-un text de cel mult 100 de caractere cuvintele sunt formate din litere mari ale alfabetului limbii engleze și sunt separate prin unul sau mai multe spații. Alfabetul limbii engleze are 26 de litere. Scrieți un program Pascal care citește de la tastatură trei numere naturale din intervalul [0,25], reprezentând, în această ordine, codurile unui cifru, apoi un text de tipul precizat. Programul modifică textul în memorie, criptându-l cu cifrul dat, apoi afișează pe ecran textul obținut. Exemplu: pentru cifrul cu codurile 3, 1, 6 și textul PIXEL BINE MAPAT se obține textul SJDHMHLOKPBVDU (primele patru perechi sunt P-3, I-1, X-6, E-3). (10p.)

Arată baremul

2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un șir de caractere 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 litere/caracter spațiu, tratare a cel puțin unei perechi literă-cod cu deplasare la dreapta în alfabet, tratare a cel puțin unei perechi literă-cod cu deplasare circulară în alfabet, deplasare circulară în cadrul codurilor, caractere suport modificate/eliminate, 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 (k≥n), și construiește în memorie un tablou bidimensional cu n linii și n coloane, astfel încât parcurgând diagonala principală, de sus în jos, să se obțină un șir strict crescător format din primii n multipli naturali nenuli ai lui k, și parcurgând fiecare linie a sa, de la stânga la dreapta, să se obțină câte un șir strict descrescător de numere naturale consecutive. Programul afișează pe ecran tabloul obținut, fiecare linie a tabloului pe câte o linie a ecranului, elementele de pe aceeași linie fiind separate prin câte un spațiu. Exemplu: pentru k=5 și n=4 se obține tabloul alăturat. (10p.)

5 4 3 2 11 10 9 8 17 16 15 14 23 22 21 20

Figura din subiect
Arată baremul

SUBIECTUL al III-lea / 2. Pentru program corect: 10p. -declarare a unei variabile care să memoreze un tablou bidimensional: 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 poziției elementelor situate pe diagonala principală, plasare pe linii a unor valori consecutive ordonate descrescător la stânga diagonalei principale, plasare pe linii a unor valori consecutive ordonate descrescător la dreapta diagonalei principale, multipli ai lui k suport pe diagonala principală, valori suport plasate în afara diagonalei principale, construire în memorie) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Două cuvinte se numesc asemenea dacă sunt distincte și au același număr de vocale. Se consideră vocale literele a, e, i, o, u. Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[1,10²]), apoi n cuvinte, separate prin Enter. Fiecare cuvânt este format din cel mult 20 de caractere, numai litere mici ale alfabetului englez. Programul afișează pe ecran, separate prin câte un spațiu, toate cuvintele asemenea cu ultimul cuvânt citit, sau mesajul nu exista dacă nu există astfel de cuvinte. Exemplu: dacă se citesc datele alăturate, se afișează pe ecran, nu neapărat în această ordine, cuvintele: lalelele brandusele

9 mereu primavara infloresc ghioceii lalelele si brandusele de primavara

(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ă permită memorarea cuvintelor, conform cerinței - 1p. -citire a datelor - 1p. -determinare a cuvintelor conform cerinței (*) - 6p. -afișare a cuvintelor î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 unei vocale/consoane, vocale suport numărate pentru un cuvânt, identificare cuvinte identice/distincte, identificare a două cuvinte cu același număr de vocale, cuvinte suport asemenea identificate) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Un text are cel mult 100 de caractere, iar cuvintele sale sunt formate numai din litere mici ale alfabetului englez, sunt distincte și sunt separate prin câte un spațiu. Scrieți un program Pascal care citește de la tastatură un număr natural n (n∈[1,10²]), apoi un text de tipul precizat mai sus, și afișează pe ecran cuvinte ale acestuia, pe două linii separate, astfel încât prima linie să conțină mulțimea cuvintelor care au mai puțin de n litere, iar a doua linie să conțină mulțimea cuvintelor care au mai mult de n litere. Cuvintele 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=3 și textul era o apa rece si cu gust bun se poate afișa pe ecran textul alăturat.

o si cu rece gust

(10p.)

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

Pentru program corect - 10p. - declarare a unei variabile care să memoreze un șir de caractere - 1p. - citire a datelor - 1p. - afișare a cuvintelor 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 (obținere a unui cuvânt, determinare a lungimii unui cuvânt, cuvinte suport analizate, afișare consecutivă a cuvintelor din aceeași mulțime, ordine a mulțimilor de cuvinte, afișare pe două linii separate) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

2. Un șablon este un text în care cuvintele sunt separate prin câte un spațiu și sunt formate fie numai din litere mici și mari ale alfabetului englez, fie numai din caractere *, în ultimul caz numindu-se cuvinte generice. Lungimea unui cuvânt este egală cu numărul de caractere care îl compun. Un computer generează o frază pe baza unui astfel de șablon, prin înlocuirea fiecărui cuvânt generic cu unul dintre cuvintele de aceeași lungime, preluat dintr-o listă dată.

Lista de cuvinte din exemplu: rece placuta acasa calduta innorata soare

Scrieți un program Pascal care citește de la tastatură un număr natural, n (n∈[1,100]), și o listă de n cuvinte, urmată de un șablon de tipul precizat. Fiecare cuvânt din listă este format din maximum 10 litere mici și mari ale alfabetului englez și la citire este introdus singur pe linie. Șablonul conține maximum 100 de caractere. Programul obține în memorie și apoi afișează pe ecran una dintre frazele care pot fi generate pe baza șablonului și a listei citite sau mesajul imposibil dacă nu se poate genera o astfel de frază.

Exemplu: dacă n=6, iar lista de cuvinte este cea alăturată, pentru șablonul Era o vreme ******* si ***** din belsug ***** se generează fraza Era o vreme placuta si soare din belsug soare sau fraza Era o vreme calduta si soare din belsug acasa etc., iar pentru șablonul *** o vreme ******* si ************ se afișează mesajul imposibil. (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 unor variabile care să permită memorarea unei liste de cuvinte și a unui șablon/fraze, conform cerinței - 1p. - citire a datelor, conform cerinței - 1p. - determinare a unei fraze conform cerinței (*) - 6p. - afișare a frazei și tratare a cazului imposibil - 1p. - declarare a variabilelor simple, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă câte 1p. pentru fiecare aspect (cuvinte suport analizate în șablon, identificare a unui cuvânt generic, algoritm de bază de căutare, identificare a unui cuvânt adecvat pe baza lungimii acestuia, adăugare/înlocuire în memorie a unui cuvânt într-un șir, caractere suport înlocuite/adăugate/păstrate – inclusiv spații între cuvinte) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Suprafața unui loc de joacă pentru copii este împărțită în n∙n zone de formă pătrată dispuse pe n rânduri și n coloane, 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∙n elemente ale unui tablou bidimensional, reprezentând codurile corespunzătoare zonelor din locul de joacă, în ordinea parcurgerii lor rând după rând, și a fiecărui rând de la stânga la dreapta. 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=6 și tabloul alăturat se afișează pe ecran, nu neapărat în această ordine, numerele: 2 3 3 6. (10p.)

2 0 0 2 1 3 3 1 3 1 2 0 2 1 3 3 2 0 0 2 1 3 1 1 3 1 2 0 0 2 0 0 0 2 1 3

Figura din subiect
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/tobogan, zone vecine suport pentru un carusel din interiorul suprafeței, zone vecine suport pentru un carusel de pe rândul 1/n al suprafeței, zone vecine suport pentru un carusel de pe coloana 1/n a suprafeței, zone vecine suport pentru un carusel din colțurile suprafeței, nicio latură comună cu o zonă cu tobogan). ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Într-un text de cel mult 100 de caractere cuvintele sunt separate prin câte un spațiu și sunt formate din litere mari ale alfabetului englez, iar dacă sunt scrise prescurtat sunt urmate de caracterul . (punct). Textul reprezintă denumirea științifică a unei păsări și doar cuvintele din mulțimea {FAMILIA, GENUL, SPECIA}, specifice sistemului de clasificare a organismelor, sunt mereu prescurtate, prin eliminarea ultimelor lor litere. Scrieți un program Pascal care citește de la tastatură un text de tipul precizat și construiește în memorie, apoi afișează pe ecran denumirea științifică, în care pentru cuvintele specifice sistemului de clasificare a organismelor se păstrează doar primele trei litere, scrise cu litere mici, și urmate de punct, ca în exemplu. Exemplu: pentru textul FAMIL. PHASIANIDAE GEN. MELEAGRIS SP. GALLOPAVO sau pentru textul FAM. PHASIANIDAE G. MELEAGRIS SPECI. GALLOPAVO se obține fam. PHASIANIDAE gen. MELEAGRIS spe. GALLOPAVO (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un șir de caractere - 1p. -citire a datelor - 1p. -determinare 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 (identificare a unui cuvânt, identificare a unui cuvânt complet/prescurtat, identificare a cuvântului corespunzător celui prescurtat, înlocuire a unui subșir cu un alt subșir, cuvinte suport înlocuite/păstrate, construire în memorie ca șir de caractere) conform cerinței. ¹ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Un text are cel mult 100 de caractere și este format din cuvinte, numere naturale și spații. Textul conține cel puțin un număr, iar cuvintele sunt formate numai din litere mici ale alfabetului englez. Cuvintele și numerele sunt separate prin câte un spațiu, ca în exemplu. Scrieți un program Pascal care citește de la tastatură un text de tipul precizat și afișează pe ecran un număr natural k, dacă toate numerele care intră în componența sa au câte k cifre, sau mesajul NU, în caz contrar. Exemplu: pentru textul la zoo sunt 100 de cocori si 120 de pasari flamingo sau pentru textul la zoo sunt 100 de cocori se afișează 3 iar pentru textul la zoo sunt 100 de cocori si 10 pasari flamingo se afișează NU (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un șir de caractere - 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 1p. pentru fiecare aspect specific (parcurgere a unei serii de cuvinte, identificare a unei litere/cifre, identificare a unui număr, identificare a numărului de caractere ale unui subșir, algoritm de bază pentru verificarea unei proprietăți, cuvinte/numere suport verificate) conform cerinței. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Un text, de cel mult 250 de caractere, reprezintă o listă cu date de identificare ale invitaților la o petrecere; fiecare invitat are un prenume și un nume, care apar în listă în această ordine, urmate de simbolul ; (punct și virgulă), ca în exemplu. Numele și prenumele sunt formate din câte un singur cuvânt, compus din litere mari ale alfabetului englez, și sunt separate printr-un spațiu. Scrieți un program Pascal care citește de la tastatură un text de tipul precizat mai sus apoi, de pe rândul următor, un cuvânt, x, și afișează pe ecran, separate prin câte un spațiu, numele tuturor invitaților care au prenumele x, ca în exemplu, sau mesajul NU dacă nu există astfel de invitați. Exemplu: dacă lista este DAN MARIS; DANILA PREPELEAC; DAN POPA; EDANA DAN; și cuvântul x este DAN se afișează pe ecran MARIS POPA (10p.)

Arată baremul

SUBIECTUL al III-lea, 2. Pentru program corect - 10p. -declarare a unei variabile care să memoreze un șir de caractere - 1p. -citire a datelor în ordinea indicată - 1p. -determinare a cuvintelor/numelor cerute (*) - 6p. -tratare a cazului NU și afișare fie a numelor î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 (identificare a unui cuvânt în cadrul unui șir, identificare a unui cuvânt egal cu un cuvânt dat x, identificare a unui nume corespunzător unui prenume, tratare a cazului în care cuvântul x dat corespunde unui nume, caractere utile într-un nume, cuvinte suport identificate) conform cerinței. ¹⁾ Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Reguli generale:

Scrieți un program Pascal care citește de la tastatură două numere naturale din intervalul [2,10²], m și n, și construiește în memorie un tablou bidimensional cu m linii și n coloane, cu proprietatea că parcurgându-l linie cu linie de sus în jos și fiecare linie de la stânga la dreapta, se obține șirul primelor m*n pătrate perfecte pare, ordonat strict descrescător, ca în exemplu. Elementele tabloului obținut se afișează pe ecran, fiecare linie a tabloului pe câte o linie a ecranului, valorile de pe aceeași linie fiind separate prin câte un spațiu. Exemplu: pentru m=2, n=3 se obține tabloul alăturat. (10p.)

100 64 36 16 4 0

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 bidimensional - 1p. -citire a datelor - 1p. -construire a tabloului cerut (*) - 6p. -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, ordonare valori pe linii, ordonare valori pe coloane, valori suport, construire î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ă numere naturale, în această ordine: n (n∈[2,20]), apoi n·n numere din intervalul [0,10²], elemente ale unui tablou bidimensional cu n linii și n coloane, 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 tuturor valorilor aflate pe linia a k-a, în stânga diagonalei principale, ca în exemplu. Elementele tabloului obținut sunt afișate pe ecran, linie cu linie, fiecare linie pe câte o linie a ecranului, cu elementele fiecărei linii separate prin câte un spațiu.

Exemplu: pentru n=6, k=5 și tabloul 0 1 4 5 3 2 0 6 0 7 5 0 4 0 0 6 0 6 2 0 0 5 0 0 3 0 6 4 0 8 0 6 9 0 0 0

se obține tabloul 0 1 4 5 3 2 0 6 0 7 5 0 4 0 0 6 0 6 2 0 0 5 0 0 4 3 0 6 0 8 0 6 9 0 0 0 (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 bidimensional - 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 în stânga diagonalei principale, 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