Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 001
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mulimea A={a,b,c,d}, cuvinte care nu conin dou vocale alturate. Primele trei cuvinte generate sunt, n ordine: abab, abac, abad. Care este cel de-al aselea cuvnt generat? (4p.) a. abbb b. abbc c. abba d. abbd
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, ce se afieaz ca urmare a apelului f(121,1);? (6p.) procedure f (n,i:longint); begin if n=0 then write(i) else if n mod 3 >0 then f(n div 3,i+1) end; 3. Fiierul text bac.txt conine, pe o singur linie, cel mult 1000 de numere naturale nenule cu cel mult 4 cifre fiecare, numerele fiind separate prin cte un spaiu. Scriei un program Pascal care citete de la tastatur un numr natural nenul n (n999) i numerele din fiierul bac.txt i care afieaz pe ecran, separate prin cte un spaiu, toate numerele din fiier care sunt divizibile cu n. Dac fiierul nu conine niciun astfel de numr, atunci se va afia pe ecran mesajul NU EXISTA. Exemplu: dac fiierul bac.txt conine numerele: 3 100 40 70 25 5 80 6 3798, pentru n=10 atunci pe ecran se va afia: 100 40 70 80 (10p.) 4. Subprogramul sub, cu trei parametri, primete prin intermediul parametrilor: v un tablou unidimensional cu cel mult 100 de componente ce memoreaz numere ntregi de cel mult 4 cifre fiecare; n un numr natural nenul mai mic sau egal cu 100 ce reprezint numrul efectiv de componente ale tabloului primit prin intermediul parametrului v; a un numr ntreg cu cel mult 4 cifre. Subprogramul sub returneaz numrul componentelor tabloului primit prin intermediul parametrului v ale cror valori sunt egale cu valoarea parametrului a. Exemplu: pentru valorile n=5, v=(1,21,9,21,403), a=21 ale parametrilor, n urma apelului, subprogramului sub va returna valoarea 2. a) Scriei definiiile tipurilor de date i definiia complet a subprogramului sub. (4p.) b) Scriei un program Pascal care s citeasc de la tastatur un numr natural nenul n (n100) i n numere ntregi, fiecare avnd cel mult 4 cifre, i care, folosind apeluri utile ale subprogramului sub, s afieze pe ecran mesajul DA dac oricare dou dintre cele n numere citite sunt distincte dou cte dou, sau mesajul NU n caz contrar. Exemplu: pentru n=6 i cele n numere citite de la tastatur: 47 183 69 8 134 -56 se va afia pe ecran mesajul DA (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 002
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mulimea A={a,b,c,d}, cuvinte care nu conin dou vocale alturate. Primele cinci cuvinte generate sunt, n ordine: abab, abac, abad, abba, abbb. Care este ultimul cuvnt generat? (4p.) a. ddcd b. dcba c. abcd d. dddd
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, ce se afieaz ca urmare a apelului f(125);? (6p.)
procedure f (n:integer); begin write(n mod 10); if n<>0 then begin write(n mod 10);f(n div 100) end end; 3. Fiierului text NR.TXT conine pe o singur linie, separate prin cte un singur spaiu, cel mult 100 de numere ntregi, fiecare numr avnd cel mult 4 cifre. Scriei un program Pascal care citete numerele din fiierul NR.TXT i afieaz pe ecran, separate prin cte un spaiu, n ordine cresctoare, toate numerele naturale nenule din fiier. Dac nu exist astfel de numere se va afia pe ecran mesajul NU EXISTA. Exemplu: dac fiierul NR.TXT conine numerele: -3 -10 0 7 -5 7 51 -800 6 3798, atunci pe ecran se va afia: 6 7 7 51 3798 (10p.) 4. Un numr n se numete extraprim dac att el, ct i orice numr obinut prin permutarea circular a cifrelor lui n, sunt numere prime. De exemplu, numrul 197 este un numr extraprim deoarece 197, 971, 719 sunt numere prime. Numrul 23 nu este extraprim deoarece 32 nu este prim. a) Scriei definiia complet a unui subprogram f, cu un parametru, subprogram care: - primete prin intermediul parametrului a un numr natural cu cel mult 2 cifre (a>1) - returneaz suma tuturor exponenilor din descompunerea n factori primi a valorii parametrului a. Exemplu: pentru a=90 subprogramul va returna valoarea 4, deoarece a=2*3 2 *5
i 1+2+1=4. (4p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n, 2n99, i care, folosind apeluri utile ale subprogramului f, verific dac n este un numr extraprim i afieaz pe ecran, n caz afirmativ mesajul DA, iar altfel mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 003
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mulimea A={a,b,c,d}, cuvinte care nu conin dou vocale alturate. Primele patru cuvinte generate sunt, n ordine: abab, abac, abad, abba. Care este antepenultimul cuvnt generat? (4p.) a. dddb b. ddcd c. ddba d. dcdd
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, ce se afieaz ca urmare a apelului f(26);? (6p.)
procedure f (x:integer); begin if x>0 then begin write('x'); f(x div 3); write('y') end end; 3. Fiierul text NR.TXT conine pe o singur linie, separate prin cte un singur spaiu, cel mult 100 de numere naturale, fiecare numr avnd cel mult 4 cifre. Scriei un program Pascal care citete toate numerele din fiierul NR.TXT i afieaz pe ecran, separate prin cte un spaiu, n ordine cresctoare, toate numerele din fiier care au cel puin 3 cifre. Dac fiierul nu conine astfel de numere se va afia pe ecran mesajul NU EXISTA. (10p.) 4. Subprogramul cif, cu doi parametri, primete prin intermediul parametrului a un numr natural cu cel mult 8 cifre i prin intermediul parametrului b o cifr; subprogramul returneaz numrul de apariii ale cifrei b n scrierea numrului a. Exemplu: pentru a=125854 i b=5, subprogramul va returna valoarea 2. a) Scriei definiia complet a subprogramului cif. (4p.) b) Scriei declarrile de date i programul principal Pascal care citete de la tastatur un numr natural n cu cel mult 8 cifre, dintre care cel puin una impar, i care determin i afieaz pe ecran, folosind apeluri utile ale subprogramului cif, cel mai mare numr natural care poate fi obinut utiliznd toate cifrele impare ale numrului n. Exemplu: dac n=2152331 atunci se va afia pe ecran numrul 53311. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009- INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 004
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic cuvintele de cte patru litere din mulimea A={a,b,c,d}, cuvinte care nu conin dou vocale alturate. Primele trei cuvinte generate sunt, n ordine: abab, abac, abad. Care este penultimul cuvnt generat? (4p.) a. dcdb b. dcba c. dddc d. ddcd
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru subprogramul f definit alturat, ce se afieaz ca urmare a apelului f(15,2);? (6p.) procedure f (n,x:integer); begin if x>n then write('*') else begin f(n,x+4); write(x mod 10) end end; 3. Fiierul text NR.TXT conine pe o singur linie, separate prin cte un singur spaiu, cel mult 100 de numere naturale, fiecare numr avnd cel mult 4 cifre. Scriei un program Pascal care citete numerele din fiierul NR.TXT i afieaz pe ecran, separate prin cte un spaiu, n ordine descresctoare, toate numerele din fiier care au cel mult dou cifre. Dac fiierul nu conine astfel de numere se va afia pe ecran mesajul NU EXISTA. (10p.) 4. Subprogramul cif, cu doi parametri, primete prin intermediul parametrului a un numr natural cu cel mult 8 cifre i prin intermediul parametrului b o cifr; subprogramul returneaz numrul de apariii ale cifrei b n scrierea numrului a. Exemplu: pentru a=125854 i b=5, subprogramul va returna valoarea 2. a) Scriei definiia complet a subprogramului cif. (4p.) b) Scriei declarrile de date i programul principal Pascal care citete de la tastatur un numr natural n cu cel mult 8 cifre, dintre care cel puin una impar, i care determin i afieaz pe ecran, folosind apeluri utile ale subprogramului cif, cel mai mic numr natural care poate fi obinut utiliznd toate cifrele impare ale numrului n. Exemplu: dac n=2152331 atunci se va afia pe ecran numrul 11335. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 005
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Folosind modelul combinrilor se genereaz numerele naturale cu cte trei cifre distincte din mulimea {1,2,3,4}, numere cu cifrele n ordine strict cresctoare, obinndu-se, n ordine: 123, 124, 134, 234. Dac se utilizeaz exact aceeai metod pentru a genera numerele naturale cu cte patru cifre distincte din mulimea {1,2,3,4,5}, cte dintre numerele generate au prima cifr 1 i ultima cifr 5? (4p.) a. 4 b. 2 c. 6 d. 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, ce se afieaz ca urmare a apelului f(10);? (6p.) procedure f (b:integer); begin if 3<=b then begin f(b-2); write(*) end else write(b) end; 3. Scriei un program Pascal care citete de la tastur un numr natural n cu cel mult 8 cifre (n10) i care creeaz fiierul text NR.TXT ce conine numrul n i toate prefixele nenule ale acestuia, pe o singur linie, separate prin cte un spaiu, n ordine descresctoare a valorii lor. Exemplu: pentru n=10305 fiierul NR.TXT va conine numerele: 10305 1030 103 10 1 (10p.) 4. Subprogramul f, cu un parametru: - primete prin intermediul parametrului a un numr natural cu cel mult 8 cifre (a>1); - returneaz cel mai mic divizor prim al valorii parametrului a. Exemplu: pentru valoarea 45 a parametrului a, subprogramul va returna valoarea 3 deoarece a=3 2 *5, iar cel mai mic divizor prim al su este 3. a) Scriei definiia complet a subprogramului f. (4p.) b) Scriei declarrile de date i programul principal Pascal care s citeasc de la tastatur un numr natural nenul n (n100) i un ir de n numere naturale de cel mult 8 cifre fiecare, toate numerele din ir fiind strict mai mari dect 1. Folosind apeluri utile ale subprogramului f, programul va determina i va afia pe ecran toate numerele prime din irul citit. Numerele determinate se vor afia pe ecran, separate prin cte un spaiu. Dac nu exist astfel de numere se va afia pe ecran mesajul NU EXISTA. Exemplu: pentru n=8, irul: 1125, 2, 314, 101, 37, 225, 15, 12 se va afia: 2 101 37 (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 006
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul cu definiia alturat. Ce valoare se va afia n urma executrii instruciunii de mai jos? write(f(12)); (4p.) function f(n:integer):integer; begin if n<>0 then begin if n mod 2=1 then f:=1+f(n div 2) else f:=f(n div 2); write(n mod 2) end else f:=0 end; a. 11002 b. 20011 c. 10102 d. 00112
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Utiliznd metoda backtracking sunt generate numerele de 3 cifre, avnd toate cifrele distincte i cu proprietatea c cifrele aflate pe poziii consecutive sunt de paritate diferit. tiind c primele ase soluii generate sunt, n aceast ordine, 103, 105, 107, 109, 123, 125 scriei a aptea i a noua soluie generat. (6p.) 3. Se consider definite urmtoarele subprograme: - s1 cu doi parametri: a, b dou numere ntregi cu cel mult 4 cifre fiecare; subprogramul interschimb valorile a dou variabile transmise prin intermediul parametrilor a i b. - s2 cu trei parametri: a un tablou unidimensional cu exact 100 de elemente numere ntregi cu cel mult 4 cifre fiecare, p, un numr natural (p100), q, un numr natural (q100). Subprogramul caut primul element divizibil cu 5 n secvena a p , a p+1 , ..., a q , i returneaz poziia acestuia, dac exist un astfel de element, sau valoarea -1 n caz contrar. a) Scriei numai antetul subprogramului s1. (4p.) b) Scriei definiia complet a subprogramului s2. (6p.) c) Scriei programul Pascal care citete de la tastatur o valoare natural n (0<n100) i apoi un tablou unidimensional a, cu n elemente, numere ntregi cu cel mult 4 cifre fiecare. Programul determin, folosind apeluri utile ale subprogramului s2, primul element divizibil cu 5 (dac exist) i ultimul element divizibil cu 5 (dac exist) al tabloului a, interschimb valorile elementelor gsite, folosind apelul subprogramului s1, i apoi scrie pe prima linie a fisierului text BAC.TXT elementele tabloului a, astfel transformat, separate prin cte un spaiu, sau valoarea 0 dac tabloul conine mai puin de dou elemente divizibile cu 5. Exemplu: pentru n=7 i tabloul a=(6,10,4,15,2,5,8), programul va scrie n fiier: 6 5 4 15 2 10 8 (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 007
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul cu definiia alturat. Ce se va afia n urma apelului f(12345);? (4p.) procedure f(n:longint); begin if n<>0 then begin if n mod 2=0 then write (n mod 10); f(n div 10); if n mod 2<>0 then write (n mod 10); end else writeln end; a. 531 24 b. 24 135 c. 531 42 d. 42 135
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Folosind tehnica bactracking un elev a scris un program care genereaz toate numerele de cte n cifre (0<n9), cifrele fiind n ordine strict cresctoare. Dac n este egal cu 5, scriei n ordine cresctoare toate numerele avnd cifra unitilor 6, care vor fi generate de program. (6p.) 3. Scriei un program Pascal care citete de la tastatur un numr natural n (0<n100) i cele 3*n elemente ale tabloului unidimensional v, numere naturale cu cel mult patru cifre fiecare. Tabloul este mprit n trei zone, cu cte n elemente fiecare: prima zon conine primele n elemente din tablou, a doua zon conine urmtoarele n elemente din tablou, restul elementelor fiind n zona a treia. Programul va interschimba elementele zonei unu cu elementele zonei trei i va afia pe ecran toate elementele tabloului, astfel transformat, separate prin cte un spaiu. De exemplu, pentru n=3 i v=(1 2 3 4 5 6 7 8 9), se va afia pe ecran : 7 8 9 4 5 6 1 2 3 (10p.) 4. Se consider irul definit de urmtoarea relaie de recuren:
a) Scriei numai antetul unui subprogram sub, care primete prin intermediul parametrului n un numr natural de maximum 8 cifre, i care returneaz cel mai mare termen al irului de mai sus mai mic sau cel mult egal cu n. Exemplu: dac n=83 atunci subprogramul va returna valoarea 80. (4p.) b) Scriei un program Pascal care citete de la tastatur un numr natural s (s10000000) i determin un ir de numere distincte a cror sum este egal cu s, folosind apeluri utile ale subprogramului sub. Numerele determinate se vor scrie n fiierul Numere.txt, pe prima linie a acestuia, separate prin cte un spaiu. Exemplu: dac valoarea citit de la tastatur este 63, atunci fiierul Numere.txt va conine valorile urmtoare, nu neaprat n aceast ordine: 40 20 3. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 008
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul f cu definiia alturat. Ce se va afia n urma apelului f(12345);? (4p.) procedure f(n:longint); begin if n<>0 then begin if n mod 2<>0 then write(n mod 10); f(n div 10); if n mod 2=0 then write(n mod 10) end else writeln end; a. 135 24 b. 135 42 c. 531 24 d. 531 42
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Utiliznd metoda backtracking sunt generate numerele de 3 cifre, avnd toate cifrele distincte i cu proprietatea c cifrele aflate pe poziii consecutive sunt de paritate diferit. tiind c primele trei soluii generate sunt, n aceast ordine, 103, 105, 107, cte dintre numerele generate au suma cifrelor egal cu 6? (6p.) 3. Scriei un program Pascal care citete de la tastatur un numr natural n (n50) i care afieaz pe prima linie a fiierului BAC.TXT primele n numere pare, pe a doua linie primele n-1 numere pare, ..., pe linia n primul numr par. Pe fiecare linie numerele vor fi afiate n ordine cresctoare i vor fi separate prin cte un spaiu. Exemplu: dac n=3 fiierul BAC.TXT va avea coninutul alturat. (10p.) 0 2 4 0 2 0 4. Se consider definite urmtoarele subprograme: - p1 care primete prin intermediul parametrului n un numr natural cu cel mult 8 cifre i returneaz suma cifrelor numrului primit prin parametrul n Exemplu: dac n este egal cu 1234 valoarea returnat de subprogram va fi 10. -p2 care primete prin intermediul parametrului n un numr natural cu cel mult 8 cifre, elimin ultima cifr a acestui numr i returneaz noul numr obinut. Exemplu: dac n este egal cu 1234 valoarea returnat de subprogram va fi 123. a) Scriei numai antetul subprogramelor p1 i p2. (4p.) b) Scriei un program Pascal care citete de la tastatur un numr natural nenul n cu cel mult 8 cifre i determin, prin apeluri utile ale subprogramelor p1 i p2, numrul de cifre egale cu 0 din scrierea lui n. Programul va afia pe ecran numrul obinut. Exemplu: dac n este 102030, programul va afia valoarea 3. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 009
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul cu definiia alturat. Ce valoare se va afia n urma executrii instruciunii de mai jos? write(f(8)); (4p.) function f(n:integer):integer; begin if n<>0 then begin if n mod 2=0 then f:=1+f(n div 2) else f:=f(n div 2); write(n mod 2) end else f:=0 end; a. 10003 b. 30001 c. 10013 d. 00112
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Utiliznd metoda backtracking sunt generate n ordine cresctoare toate numerele de 3 cifre, avnd cifrele n ordine cresctoare, iar cifrele aflate pe poziii consecutive sunt de paritate diferit. tiind c primele cinci soluii generate sunt, n aceast ordine, 123, 125, 127, 129, 145, care este cel de al 6-lea numr generat? Dar al 8-lea? (6p.) 3. Se consider definite dou subprograme: - Subprogramul s1, cu 3 parametri, care primete prin intermediul parametrului a un tablou unidimensional cu exact 100 de elemente, numerotate de la 0 la 99, numere ntregi de cel mult 4 cifre fiecare, iar prin intermediul parametrilor p i q (0p<q<100) poziiile a dou elemente ale tabloului. Subprogramul furnizeaz prin intermediul parametrului p poziia primului element par (dac exist), i prin intermediul parametrului q poziia ultimului element impar (dac exist), din secvena a p ,a p+1 , ..., a q . Dac aceast secven nu conine niciun element par subprogramul va furniza prin intermediul lui p valoarea -1, iar dac nu conine niciun element impar, va furniza prin intermediul lui q valoarea -1. - Subprogramul s2, cu doi parametri, a i b, dou numere ntregi cu cel mult 4 cifre fiecare; subprogramul interschimb valorile a dou variabile transmise prin intermediul parametrilor a i b. a) Scriei numai antetul subprogramului s2. (4p.) b) Scriei tipurile de date i definiia complet a subprogramului s1. (6p.) c) Scriei un program Pascal care: - citete de la tastatur un numr natural nenul n (0n<100), apoi cele n elemente ale unui ir a. Fiecare dintre aceste elemente este un numr ntreg cu cel mult 4 cifre i cel puin un element al irului este par; - determin rearanjarea elementelor irului astfel nct toate valorile pare s fie plasate la sfritul irului a, folosind apeluri utile ale subprogramelor s1 i s2; - scrie elementele irului rezultat n urma acestei transformri pe o singur linie a fiierului text BAC.TXT, separate prin cte un spaiu. Exemplu: pentru n=5 i a=(2,3,4,7,5) fiierul ar putea avea coninutul: 7 5 3 4 2. (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 010
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul cu definiia alturat. Ce valoare are f(3,1)? (4p.) function f(n,y :integer):integer; begin if n<>0 then begin y:=y+1; f:=y+f(n-1,y) end else f:=0 end; a. 8 b. 9 c. 7 d. 6
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Folosind metoda bactracking un elev a scris un program care genereaz toate numerele de cte n cifre (0<n9), cifrele fiind n ordine strict cresctoare. Dac n este egal cu 5, scriei toate numerele generate de program care au prima cifr 4. (6p.) 3. Scriei un program Pascal care citete de la tastatur un numr natural n (n100) i apoi cele n elemente, numere naturale cu cel mult 4 cifre fiecare, ale unui tablou unidimensional a. Programul determin i afieaz pe prima linie a ecranului suma celor n elemente ale tabloului, pe a doua linie a ecranului suma primelor n-1 elemente i aa mai departe astfel nct pe linia n-1 se va afia suma primelor dou elemente, iar pe linia n primul element al tabloului.
Exemplu: dac n=4, iar tabloul are elementele a=(1,2,3,4), programul va afia valorile alturate: (10p.) 10 6 3 1 4. Fiierul BAC.TXT conine pe prima linie un numr natural n (0<n1000000) i pe a doua linie, separate prin cte un spaiu, n numere naturale nenule (cu cel mult 7 cifre fiecare) ordonate cresctor. a) Scriei un program Pascal care citete toate numerele din fiier i, utiliznd un algoritm eficient din punct de vedere al memoriei utilizate i al timpului de executare, determin pentru fiecare numr citit de pe a doua linie a fiierului, cea mai mic valoare mai mare sau egal cu acesta ce reprezint o putere a lui 2. Un numr natural x este putere a lui 2 dac exist un numr natural k astfel nct x=2 k . Numerele astfel determinate vor fi scrise pe ecran, separate prin cte un spaiu. Exemplu: dac fiierul are coninutul de mai jos 5 3 5 8 9 12 pe ecran se va afia: 4 8 8 16 16 (6p.) b) Descriei succint, n limbaj natural, algoritmul pe baza cruia a fost scris programul de la punctul a), explicnd n ce const eficiena metodei folosite. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 011
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un algoritm de tip backtracking genereaz, n ordine lexicografic, toate irurile de 5 cifre 0 i 1 cu proprietatea c nu exist mai mult de dou cifre 0 pe poziii consecutive. Primele 6 soluii generate sunt: 00100, 00101, 00110, 00111, 01001, 01010, 01011. Care este urmtoarea soluie generat de acest algoritm? (4p.) a. 01110 b. 01100 c. 01011 d. 01101
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru funcia f, definit alturat, care este valoarea f(1711)? Dar f(23169)? (6p.) function f(n:integer):integer; begin if n=0 then f:=0 else if n mod 2=0 then f:=n mod 10+f(n div 10) else f:= f(n div 10) end; 3. a) Scriei definiia complet a unui subprogram P cu 3 parametri, care primete prin intermediul primului parametru, a, un tablou unidimensional de cel mult 100 de numere ntregi, prin intermediul celui de al doilea parametru, k, un numr natural (k<101) i furnizeaz prin intermediul celui de al treilea parametru al su, max, cea mai mare dintre valorile a 1 , a 2 ,..., a k din tablou. Exemplu: pentru k=5 i tabloul a=(7,3,8,4,6,9), n urma apelului valoarea variabilei max este 8. (4p.) b) S se scrie un program Pascal care citete de la tastatur un numr natural n (n<101), apoi n numere ntregi, avnd maximum 4 cifre fiecare i construiete n memorie i afieaz apoi pe ecran un tablou unidimensional de n numere ntregi, cu proprietatea c valoarea termenului de pe poziia i (i=1,2,,n) din acest tablou este egal cu cea mai mare dintre primele i valori din irul dat. Se vor folosi apeluri utile ale subprogramului P. Exemplu: dac se citesc de la tastatur n=12 i valorile 4 6 3 7 8 1 6 2 7 9 10 8 se va afia pe ecran tabloul 4 6 6 7 8 8 8 8 8 9 10 10. (6p.) 4. Fiierul BAC.TXT conine pe prima linie un numr natural n (0<n1000) i pe a doua linie, separate prin cte un spaiu, n numere naturale nenule (cu cel mult 9 cifre fiecare). Scriei un program Pascal care citete toate numerele din fiier i afieaz pe ecran cte numere prime conine irul citit de pe a doua linie a fiierului. Exemplu: dac fiierul are coninutul 5 12 3 9 7 1 se va afia pe ecran valoarea 2 (n irul dat exist dou numere prime i anume 3 i 7).(10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 012
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul P, definit alturat. tiind c valoarea variabilei ntregi a este nainte de apel 4, care este valoarea ei dup apelul P(a)? (4p.) procedure P(var x:integer); begin x:=x+5; end; a. 10 b. 4 c. 9 d. 5
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru a scrie valoarea 10 ca sum de numere prime se folosete metoda backtracking i se genereaz, n aceast ordine, sumele distincte: 2+2+2+2+2, 2+2+3+3, 2+3+5, 3+7, 5+5. Folosind exact aceeai metod, se scrie valoarea 9 ca sum de numere prime. Care sunt primele trei soluii, n ordinea generrii lor? (6p.) 3. Fiierul BAC.TXT conine pe prima linie dou valori naturale, m i n (m100, n100), pe a doua linie un ir de m numere ntregi, iar pe a treia linie un ir de n numere ntregi. Fiecare dintre aceste iruri sunt ordonate strict cresctor, iar elementele lor au cel mult 9 cifre fiecare. Numerele de pe acelai rnd sunt separate prin cte un spaiu. Se cere s se afieze pe ecran cte dintre elementele celui de al doilea ir nu se regsesc i n primul ir.
Exemplu: dac fiierul are coninutul 6 7 1 2 3 4 7 20 3 5 7 8 9 20 24 se va afia valoarea 4 (numerele care respect condiia sunt 5 8 9 24). a) Descriei un algoritm de rezolvare a acestei probleme, eficient din punct de vedere al timpului de executare, explicnd n ce const eficiena acestuia. (4p.) b) Scriei programul Pascal corespunztor algoritmului descris. (6p.) 4. Se consider subprogramul nr cu doi parametri, care primete prin parametrul n un numr natural cu maximum 8 cifre, i prin parametrul c o cifr zecimal. Subprogramul va returna numrul de apariii ale cifrei c n scrierea numrului n. Exemplu: dac n=15356, iar c=5, subprogramul va returna valoarea 2. a) Scriei doar antetul subprogramului nr. (3p.) b) Scriei programul Pascal care citete de la tastatur un numr natural n, cu cel mult 8 cifre, i afieaz pe ecran numrul de cifre distincte ale numrului n. Se vor folosi apeluri utile ale funciei nr. Exemplu: pentru n=15356 se va afia valoarea 4 deoarece numrul conine 4 cifre distincte i anume 1, 3, 5 i 6. (7p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 013
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Fie subprogramul fct definit alturat. Se tie c a, b i c sunt variabile ntregi. Iniial a=8, b=31 i c=9, iar dup apelul fct(a,b,c), valorile celor trei variabile sunt a=9, b=31 i c=39. Care poate fi antetul complet al subprogramului fct? (4p.) procedure fct(....); begin x:=x+1; y:=y-1; z:=x+y end; a. procedure fct(var x,y,z:integer); b. procedure fct(x:integer;var y:integer;var z:integer); c. procedure fct(x,y,z:integer); d. procedure fct(var x:integer;y:integer;var z:integer);
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Trei biei, Alin, Bogdan i Ciprian, i trei fete, Delia, Elena i Felicia, trebuie s formeze o echip de trei copii, care s participe la un concurs. Echipa trebuie s fie mixt (adic s conin cel puin o fat i cel puin un biat). Ordinea copiilor n echip este important deoarece aceasta va fi ordinea de intrare a copiilor n concurs (de exemplu echipa Alin, Bogdan, Delia este diferit de echipa Bogdan, Alin, Delia). Cte echipe se pot forma, astfel nct din ele s fac parte simultan Alin i Bogdan? Dai exemplu de o echip corect format din care s nu fac parte nici Alin i nici Bogdan. (6p.) 3. Scriei un program Pascal, care citete de la tastatur un numr natural n (n1000) i afieaz pe ecran, separai prin cte un spaiu, primii n termeni ai irului: 1, 2,1, 3,2,1, 4,3,2,1, ... construit astfel: prima grup este format din numrul 1, a doua grup este format din numerele 2 i 1, etc. Grupa a k-a, este format din numerele k, k-1,..., 1. Exemplu: pentru n=8 se vor afia valorile 1 2 1 3 2 1 4 3. (6p.) 4. Se consider subprogramul P care primete ca parametri un numr natural n cu maximum 9 cifre i o cifr c i care va returna numrul obinut din n dup eliminarea tuturor apariiilor cifrei c. a) Scriei doar antetul subprogramului P. (4p.) b) Pe prima linie a fiierului text BAC.IN se gsesc, separate prin cte un spaiu, mai multe numere naturale de cel mult 9 cifre fiecare. Scriei un program Pascal care citete numerele din acest fiier, elimin toate cifrele impare din fiecare dintre aceste numere i apoi scrie n fiierul text BAC.OUT numerele astfel obinute, separate prin cte un spaiu. Se vor folosi apeluri utile ale subprogramului P. Dac un numr din fiierul BAC.IN nu conine nicio cifr par nenul, acesta nu va mai aprea deloc n fiierul de ieire. (10p.) Exemplu: dac fiierul BAC.IN conine numerele 25 7 38 130 45127 0 35 60 15, atunci BAC.OUT va avea coninutul: 2 8 42 60.
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 014
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz permutrile cuvntului info. Dac primele trei soluii generate sunt: fino, fion, fnio care este cea de-a cincea soluie? (4p.) a. foin b. fnoi c. foni d. ifon
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce valoare are f(4063) pentru funcia f, definit alturat? (6p.) function f(n:longint):longint; begin if n=0 then f:=1 else if n mod 10=0 then f:=f(n div 10) else f:=(n mod 10) * f(n div 10) end; 3. Fiierul text BAC.TXT conine mai multe numere naturale cu cel mult 6 cifre fiecare, cte un numr pe fiecare linie a fiierului.
Scriei un program Pascal care afieaz pe ecran toate numerele din fiier, n aceeai ordine, cte cinci numere pe fiecare linie, separate prin cte un spaiu, cu excepia ultimei linii care poate conine mai puin de cinci numere. Exemplu: dac fiierul are coninutul alturat, pe ecran se afieaz:
11 21 30 40 51 16 17 10 1 (6p.) 11 21 30 40 51 16 17 10 1 4. Se consider subprogramul prim care primete ca parametru un numr natural n (n32000) i care returneaz 1 dac n este numr prim i respectiv 0 n caz contrar. a) Scriei definiia complet a subprogramului prim. (4p.) b) Scriei programul Pascal care citete de la tastatur un numr natural nenul n (n<30) i n numere naturale cu cel mult 4 cifre fiecare, apoi le afieaz pe ecran, numai pe acelea dintre ele care sunt prime. Numerele vor fi afiate n ordine cresctoare, separate prin cte un spaiu. Programul va utiliza apeluri utile ale subprogramului prim. Exemplu: pentru n=7 i numerele 3 16 41 4 2 7 12, se vor afia, n aceast ordine, numerele: 2 3 7 41 (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 015
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Cte numere de trei cifre pot fi construite folosind doar cifre pare, astfel nct suma cifrelor pentru fiecare dintre acestea s fie cel puin 20? (4p.) a. 10 b. 4 c. 2 d. 6
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Care este valoarea lui f(34) pentru funcia f definit alturat? Dar valoarea f(f(4))? (6p.)
function f(x:longint):longint; begin if x=4 then f:=4 else if (x mod 10=4) or (x mod 10=0) then f:=x+f(x div 10) else f:=x+f(x*2) end; 3. Scriei definiia complet a subprogramului cinci care primete ca parametru un numr natural nenul n (n<=20) i un tablou unidimensional v cu n elemente numere naturale, fiecare avnd cel mult 9 cifre i returneaz o valoare reprezentnd numrul apariiilor cifrei 5 n scrierea tuturor numerelor din tablou. Exemplu: dac n=6, iar v=(12, 5, 6535, 1, 86, 573), subprogramul va returna valoarea 4. (10p.) 4. n fiierul text BAC.IN se gsesc, pe o singur linie, separate prin cte un spaiu, mai multe numere naturale de cel mult 6 cifre fiecare. Se cere s se determine i s se afieze pe ecran ultimul numr impar din fiierul BAC.IN. Dac n fiier nu exist niciun numr impar se va scrie pe ecran mesajul Nu exist numere impare. Exemplu: dac fiierul BAC.IN conine valorile: 12 6 25 68 13 8 24 31 42 se va afia 31. a) Descriei n limbaj natural un algoritm eficient, din punct de vedere al spaiului de memorie i al timpului de executare, pentru rezolvarea acestei probleme, explicnd n ce const eficiena acestuia. (4p.) b) Scriei programul Pascal corespunztor algoritmului descris. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 016
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Funcia F are definiia alturat. Ce valoare are F(3)? (4p.) function F(n:integer):integer; begin if (n=0) or (n=1) then F:=1 else F:=2*F(n-1)+2*F(n-2) end; a. 1 b. 12 c. 6 d. 10
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Un algoritm genereaz n ordine cresctoare toate numerele de n cifre, folosind doar cifrele 3, 5 i 7. Dac pentru n=5, primele cinci soluii generate sunt 33333, 33335, 33337, 33353, 33355, precizai care sunt ultimele trei soluii generate, n ordinea generrii.(6p.) 3. Scriei programul Pascal care citete de la tastatur elementele unui tablou unidimensional cu exact 10 numere naturale, mai mici dect 1000, determin i afieaz pe ecran, separate prin cte un spaiu, numrul de elemente din ir care sunt multipli ai numrului 13 i, n continuare, poziiile pe care acestea se gsesc n ir. Elementele tabloului sunt numerotate de la 1 la 10. Exemplu: dac irul citit este 2, 6, 26, 14, 130, 11, 8, 23, 39, 52, se vor afia numerele 4 3 5 9 10. (10p.) 4. Subprogramul cifrak are 2 parametri, n, prin care primete un numr natural cu maximum 9 cifre i k, prin care primete un numr natural (k9). Subprogramul returneaz numrul de cifre ale numrului n care sunt egale cu valoarea k. Exemplu: dac n=233433, iar k=3, subprogramul va returna valoarea 4. a) Scriei definiia complet a subprogramului cifrak. (4p.) b) n fiierul numere.txt sunt memorate mai multe numere naturale (maximum 1000 de numere cu maximum 9 cifre fiecare). Fiecare linie a fiierului conine cte un numr. Scriei programul Pascal care, folosind apeluri ale subprogramului cifrak, afieaz pe ecran, separate prin cte un spaiu, toate numerele din fiier care conin exact 3 cifre de 0. Exemplu: dac fiierul numere.txt conine 260070 39008 70009 se vor afia, nu neaprat n aceast ordine, numerele 260070 70009. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 017
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Subprogramul f are definiia alturat. Ce se va afia n urma apelului f(12345);? (4p.) procedure f(n:longint); begin if n>9 then begin write(n div 100); f(n div 10) end end; a. 1231210 b. 123121 c. 1234123121 d. 123
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Un algoritm genereaz n ordine descresctoare toate numerele de 5 cifre, fiecare dintre ele avnd cifrele n ordine strict cresctoare. tiind c primele cinci soluii generate sunt 56789, 46789, 45789, 45689, 45679, precizai care sunt ultimele trei soluii generate, n ordinea generrii. (6p.) 3. Subprogramului interval, cu 2 parametri, care primete prin intermediul parametrilor: - v un tablou unidimensional cu maximum 100 de numere naturale mai mici dect 1000; -n un numr natural nenul mai mic sau egal cu 100 ce reprezint numrul efectiv de componente ale tabloului primit prin intermediul parametrului v. Subprogramul returneaz numrul componentelor tabloului primit prin intermediul parametrului v care aparin intervalului nchis determinat de primul i respectiv ultimul element al tabloului. Exemplu: dac tabloul are 6 elemente i este de forma (12,27,6,8,9,2), subprogramul va returna valoarea 5. a) Scriei definiia complet a subprogramului interval. (10p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (2n100) i apoi un ir de n numere naturale mai mici dect 1000 i care, folosind apeluri utile ale subprogramului interval, verific dac primul i ultimul element al tabloului au cea mai mic, respectiv cea mai mare valoare din irul citit i afieaz pe ecran, n caz afirmativ mesajul DA, iar altfel mesajul NU. Exemplu: pentru n=5 i pentru irul 6,16,8,18,20 se va afia pe ecran mesajul DA. (4p.) 4. Pe prima linie a fiierului numere.txt sunt memorate cel mult 90 de numere ntregi cu cel mult dou cifre fiecare, separate prin cte un spaiu. Scriei programul Pascal care s determine, i s afieze pe ecran, media aritmetic a numerelor strict pozitive din fiier. Dac fiierul nu conine numere strict pozitive se afieaz pe ecran mesajul NU EXISTA. Exemplu: dac fiierul numere.txt conine numerele 6 -26 0 9 -7 se va afia valoarea 7.5. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 018
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Funcia f are definiia alturat. Ce se va afia n urma apelului f(12345,0);? (4p.) procedure f(n:longint;i:integer); begin if i<n mod 10 then begin write(n mod 10); f(n div 10,i+1) end end; a. 54321 b. 543 c. 54 d. 5432
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Un algoritm genereaz, n ordine lexicografic, toate irurile alctuite din cte n cifre binare (0 i 1). tiind c pentru n=5, primele patru soluii generate sunt 00000, 00001, 00010, 00011, precizai care sunt ultimele trei soluii generate, n ordinea obinerii lor. (6p.) 3. Subprogramul count are doi parametri, v i n, prin care primete un tablou unidimensional cu maximum 100 de numere reale, i respectiv, numrul de elemente din tabloul unidimensional. Subprogramul returneaz numrul de elemente din tabloul unidimensional care sunt mai mari sau cel puin egale cu media aritmetic a valorilor memorate n primul, respectiv ultimul element al tabloului. Exemplu: dac tabloul are 6 elemente i este de forma (12, 7.5, 6.5, 8.5, 7.5, 3), subprogramul va returna valoarea 4 (media valorilor memorate n primul, respectiv ultimul element al tabloului este 7.5 i sunt 4 elemente n tablou mai mari sau cel puin egale cu 7.5). a) Scriei definiia complet a subprogramului count. (10p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (2n100) i apoi un ir de n numere reale i care, folosind apeluri utile ale subprogramului count, verific dac pe prima i pe ultima poziie din ir se afl cele mai mici dou valori (nu neaprat distincte) ale acestuia. Programul va afia pe ecran mesajul DA n caz afirmativ i NU n caz contrar. (4p.) 4. n fiierul numere.txt sunt memorate cel puin 4 i cel mult 90 de numere ntregi cu cel mult patru cifre fiecare, separate prin cte un spaiu. Scriei un program Pascal care afieaz pe ecran patru numere aflate pe poziii consecutive n fiier, care sunt n ordine strict cresctoare. Dac exist mai multe astfel de secvene programul afieaz una dintre acestea, iar dac n fiier nu exist astfel de secvene se afieaz mesajul NU EXISTA. Exemplu: dac fiierul numere.txt conine, n aceast ordine, numerele 60 12 15 25 110 45 25 se vor afia numerele 12 15 25 110. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 019
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Funcia F are definiia alturat. Ce valoare are F(18)? (4p.) function F(x:integer):integer; begin if x<=1 then F:=x else F:=F(x-2)+x end; a. 90 b. 171 c. 91 d. 18
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Un algoritm genereaz n ordine cresctoare, toate numerele de n cifre (n<9), cu cifre distincte, care nu au dou cifre pare alturate. Dac pentru n=5, primele cinci soluii generate sunt 10325, 10327, 10329, 10345, 10347, precizai care sunt urmtoarele trei soluii generate, n ordinea obinerii lor. (6p.) 3. Subprogramul aranjare are doi parametri, a i n, prin care primete un tablou unidimensional cu maximum 100 de numere reale nenule i respectiv, numrul de elemente din tablou. Subprogramul rearanjeaz elementele tabloului astfel nct toate valorile negative s se afle pe primele poziii, iar valorile pozitive n continuarea celor negative. Ordinea n cadrul secvenei de elemente pozitive, respectiv n cadrul secvenei de elemente negative, poate fi oricare. Exemplu: dac este transmis ca parametru un tablou unidimensional cu 6 elemente de forma (12, -7.5, 6.5, -3, -8, 7.5), dup apel, acesta ar putea fi: (-7.5, -3, -8, 12, 6.5, 7.5). a) Scriei definiia complet a subprogramului aranjare. (10p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (1n100) i apoi un ir de n numere reale nenule i care, folosind apeluri utile ale subprogramului aranjare, afieaz pe ecran, separate prin spaiu, mai nti elementele pozitive din ir i apoi cele negative. Ordinea n cadrul secvenei de elemente pozitive, respectiv n cadrul secvenei de elemente negative, poate fi oricare. Exemplu: pentru n=5 i pentru irul 6,-16.3,8,-18,20.7 se poate afia pe ecran soluia 6 8 20.7 -18 -16.3 (4p.) 4. n fiierul numere.txt sunt memorate mai multe numere reale separate prin cte un spaiu. Scriei un program Pascal care verific dac printre numerele din fiier exist cel puin 10 numere naturale. Programul afieaz pe ecran mesajul DA n caz afirmativ i NU n caz contrar. Exemplu: dac fiierul numere.txt conine numerele 60 -12.67 15 -1 -22.3 4 se afieaz mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 020
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Funcia F are definiia alturat. Ce valoare are F(5)? (4p.) function F(x:integer):integer; begin if x<>0 then F:= x+F(x-1) else F:=x end; a. 5 b. 10 c. 15 d. 6
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Un algoritm genereaz n ordine descresctoare, toate numerele de n cifre (n<9), cu cifrele n ordine strict cresctoare, care nu au dou cifre pare alturate. Dac pentru n=5, primele cinci soluii generate sunt 56789, 45789, 45679, 45678, 36789, precizai care sunt urmtoarele trei soluii generate, n ordinea obinerii lor. (6p.) 3. Subprogramul nule are doi parametri: a, prin care primete un tablou unidimensional cu maximum 100 de numere ntregi, cu cel mult 4 cifre fiecare i n, numrul de elemente din tablou. Subprogramul rearanjeaz elementele tabloului unidimensional astfel nct toate valorile nule s se afle la sfritul tabloului. Ordinea n cadrul secvenei de elemente nenule poate fi oricare. Tabloul modificat este furnizat tot prin parametrul a. Exemplu: dac n=6, a=(12,0,0,-3,-8,0), dup apel, acesta ar putea fi: a=(12,-3,-8,0,0,0). a) Scriei definiia complet a subprogramului nule. (10p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (2n100) i apoi un ir de n numere ntregi cu cel mult 4 cifre fiecare i care, folosind apeluri utile ale subprogramului nule, verific dac irul conine cel puin cinci valori nenule, nu neaprat distincte. n caz afirmativ programul afieaz cinci dintre acestea, iar altfel mesajul NU EXISTA. Exemplu: pentru n=11 i pentru irul 6,0,0,16,10,0, 8,-18,0,0,20 se poate afia pe ecran soluia 6 16 10 8 -18. (4p.) 4. n fiierul numere.txt sunt memorate cel puin 4 i cel mult 90 de numere ntregi cu cel mult patru cifre fiecare, separate prin cte un spaiu. Scriei un program Pascal care afieaz pe ecran patru numere aflate pe poziii consecutive n fiier, care sunt n ordine strict descresctoare. Dac exist mai multe astfel de secvene programul afieaz una dintre acestea, iar dac n fiier nu exist astfel de secvene se afieaz mesajul NU EXISTA. Exemplu: dac fiierul numere.txt conine, n aceast ordine, numerele 60 120 15 5 2 45 25 se vor afia numerele 120 15 5 2. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 021
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Urmtoarele probleme se refer la mulimea de numere reale M={x 1 , x 2 , , x n } (n>1000). Care dintre acestea, comparativ cu celelalte, admite un algoritm care se ncheie dup un numr minim de pai? (4p.) a. sortarea elementelor mulimii M b. generarea elementelor produsului cartezian M x M c. determinarea elementului minim al mulimii M d. generarea tuturor permutrilor mulimii M
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul, f, definit alturat. a) Ce valoare are f(20)? b) Scriei o valoare pe care o poate avea x astfel nct f(x)=1. (6p.) function f(n:integer):integer; begin if n=0 then f:=0 else f:=n mod 2+f(n div 2) end; 3. Scriei definiia complet a unui subprogram i_prim care primete prin singurul su parametru, n, un numr natural din intervalul [2,30000] i returneaz diferena minim p2-p1 n care p1 i p2 sunt numere prime i p1np2. Exemplu: dac n=20 atunci i_prim(20)=4, valoare obinut pentru p1=19 i p2=23. (10p.) Fiierul text BAC.TXT conine pe prima linie dou numere naturale, n i k, separate de un spaiu (3n10000, 2kn/2), iar pe a doua linie un ir de n numere naturale, x 1 , x 2 , ..., x n , separate prin cte un spaiu, fiecare numr din acest ir avnd cel mult patru cifre. a) Scriei un program Pascal care citete numerele din fiier i determin, utiliznd o metod eficient din punct de vedere al timpului de executare, cel mai mic indice i (1in- k+1) pentru care suma termenilor x i , x i+1 , ..., x i+k-1 este maxim. Programul afieaz valoarea lui i pe ecran. Exemplu: pentru fiirul alturat se afieaz 2, deoarece suma maxim se obine pentru 9+4+7. (6p.) 8 3 2 9 4 7 5 2 9 9 4. b) Explicai succint, n limbaj natural, metoda utilizat la punctul a, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 022
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. n timpul procesului de generare a permutrilor mulimii {1,2,,n} prin metoda backtracking, n tabloul unidimensional x este plasat un element x k (2kn). Acesta este considerat valid dac este ndeplinit condiia: (6p.) a. x k {x 1 , x 2 , , x k-1 } b. x k x k-1
c. x k {x 1 , x 2 , , x n } d. x k x k-1 i x k x k+1
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Considerm subprogramul recursiv definit alturat. Ce se va afia n urma apelului de mai jos? f(B); (4p.) procedure f(c:char); begin if c>A then f(pred(c)); write(c); if c>A then f(pred(c)); end; 3. a) Scriei definiia unui subprogram, nz, cu un parametru ntreg, n (0<n12), care returneaz numrul zerourilor de la sfritul numrului n!. (6p.) b) Scriei programul Pascal care citete de la tastatur un numr natural k (0<k2) i determin, folosind apeluri ale subprogramului nz, cel mai mic numr natural n pentru care n! are cel puin k zerouri la sfrit. Numrul determinat se afieaz pe ecran. (4p.) 4. Scriei programul Pascal care citete din fiierul text BAC.TXT numrul ntreg n (1n10000) i un ir de n perechi de numere ntregi a b (1ab32000), fiecare pereche fiind scris pe o linie nou a fiierului, cu un spaiu ntre cele dou numere. Programul afieaz pe ecran pentru fiecare pereche a,b cel mai mare numr natural din intervalul nchis [a,b]care este o putere a lui 2 sau numrul 0 dac nu exist nicio putere a lui 2 n intervalul respectiv. Numerele afiate pe ecran se scriu n linie, separate prin cte un spaiu. Un numr p este putere a lui 2 dac exist un numr natural k astfel nct p=2 k . Exemplu: dac fiierul BAC.TXT conine numerele 3 2 69 10 20 19 25 se va afia: 64 16 0. (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 023
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Algoritmul de generare a tuturor numerelor de 3 cifre, toate nenule, este echivalent cu algoritmul de generare a: (6p.) a. submulimilor unei mulimi cu 3 elemente b. combinrilor de 10 cifre luate cte 3 c. aranjamentelor de 9 elemente luate cte 3 d. produsului cartezian a 3 mulimi de cifre nenule
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru subprogramul suma definit alturat scriei valoarea expresiei suma(3,2). (4p.) function suma (a,b:integer):integer; begin if (a=0) and (b=0) then suma:=0 else if a=0 then suma:=1+suma(a,b-1) else suma:=1+suma(a-1,b) end; 3. a) Scriei definiia complet a subprogramului shift care primete prin intermediul parametrului n o valoare natural nenul (n100), iar prin intermediul parametrului x, un tablou unidimensional cu maximum 100 de componente. Fiecare component a acestui tablou este un numr ntreg care are cel mult 4 cifre. Subprogramul permut circular cu o poziie spre stnga, primele n elemente ale tabloului x i furnizeaz tabloul modificat tot prin parametrul x. Exemplu: dac nainte de apel n=4 i x=(1,2,3,4), dup apel x=(2,3,4,1). (4p.) b) Scriei un program Pascal care citete de la tastatur o valoare natural nenul n (n100), apoi cele n elemente ale unui tablou unidimensional x. Programul va inversa ordinea elementelor tabloului x folosind apeluri utile ale subprogramului shift i va afia pe ecran, separate prin cte un spaiu, elementele tabloului rezultat n urma acestei prelucrri. Exemplu: dac se citesc pentru n valoarea 5, iar tabloul x este (1,2,3,4,5) programul va determina ca x s devin (5,4,3,2,1). (6p.) Fiierul text BAC.TXT conine pe prima linie un numr natural nenul n (1n1000), iar pe fiecare dintre urmtoarele n linii cte dou numere ntregi a i b (1ab32000), fiecare pereche reprezentnd un interval nchis de forma [a,b]. Scriei un program Pascal care citete numerele din fiier i determin un interval dintre cele citite care conine cel mai mare numr de numere ntregi i afieaz pe o linie a ecranului, separate printr-un spaiu, numerele care reprezint capetele intervalului determinat. n cazul n care sunt mai multe intervale care ndeplinesc aceast proprietate, se vor afia informaiile referitoare la acel interval la care numrul care reprezint captul din dreapta este minim. 4. Exemplu: dac fiierul BAC.TXT are coninutul alturat, pe ecran se va afia: 8 15 (pentru c numrul maxim de numere ntregi aflate ntr-un interval este 8. Sunt dou intervale care conin 8 numere: [17;24] i [8;15]. Dintre acestea, [8;15] are captul din dreapta cel mai mic). (10p.) 4 17 24 -2 3 9 15 8 15
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 024
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Genernd irurile de maximum 3 caractere distincte din mulimea {A,B,C,D,E}, ordonate lexicografic, obinem succesiv: A, AB, ABC, ABD,.Ce ir va fi generat imediat dup BAE? (4p.) a. BCA b. CAB c. BC d. BEA
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Funcia f are definiia alturat. a) Ce valoarea are f(17)? (3p.) b) Ce valoare are f(22)? (3p.) function f(n:integer):integer; begin if n<=9 then f:=0 else if n mod 4=0 then f:=0 else f:=1+f(n-3) end; 3. a) Scriei definiia complet a subprogramului p care primete prin intermediul parametrului n un numr natural nenul (n100), iar prin intermediul parametrului x un tablou unidimensional cu n componente ntregi, de maximum patru cifre fiecare. Subprogramul furnizeaz prin intermediul parametrului mini valoarea minim din tabloul x, prin intermediul parametrului maxi valoarea maxim din x, iar prin intermediul parametrului sum suma elementelor din tabloul x. (6p.) b) Scriei un program Pascal care citete de la tastatur o valoare natural nenul n, (3n100), apoi cele n elemente, distincte, ale unui tablou unidimensional x. Fiecare dintre aceste elemente este un numr natural avnd cel mult patru cifre. Folosind apeluri utile ale subprogramului p, programul calculeaz i afieaz pe ecran media aritmetic a elementelor care ar rmne n tabloul x dac s-ar elimina valoarea minim i valoarea maxim din tablou. Valoarea afiat va avea cel mult 3 cifre dup virgul. Exemplu: dac se citesc pentru n valoarea 5, iar pentru tabloul x valorile (1,9,4,8,5), programul va afia una dintre valorile 5.667 sau 5.666. (4p.) Fiierul text bac.txt conine pe prima linie numrul natural n, 1n10000, pe a doua linie, dou numere ntregi a i b (ab) separate de un spaiu, iar pe urmtoarele n linii un ir de n numere ntregi. Fiecare dintre cele n numere, precum i valorile a i b, au cel mult patru cifre. 4. Scriei un program Pascal care afieaz pe ecran cel mai mic numr natural din intervalul nchis [a,b] care se gsete n irul dat. Dac nu exist un astfel de numr, programul afieaz textul NU. Exemplu: dac fiierul bac.txt are coninutul alturat, programul afieaz valoarea 14. (10p.) 4 8 35 -2 72 14 25
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 025
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un program citete o valoare natural nenul impar pentru n i apoi genereaz i afieaz n ordine cresctoare lexicografic toate combinaiile formate din n cifre (valori ntre 0 i 9) care ndeplinesc urmtoarele proprieti: - ncep i se termin cu 0; - modulul diferenei ntre oricare dou cifre alturate dintr-o combinaie este 1. Astfel, pentru n=5, combinaiile afiate sunt, n ordine, urmtoarele: 01010, 01210. Dac se ruleaz acest program i se citete pentru n valoarea 7, imediat dup combinaia 0101210 va fi afiat combinaia: (4p.) a. 0121210 b. 0123210 c. 0111210 d. 0121010
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Funcia f are definiia alturat: a) Ce valoare are f(16)? (3p.) b) Scriei o valoare de dou cifre pe care o poate avea n astfel nct f(n) s fie egal cu 2. (3p.) function f(n:integer):integer; begin if n<=0 then f:=-1 else if n mod 2=0 then f:=0 else if n mod 3=0 then f:=0 else f:=1+f(n-10) end; 3. Scriei definiia complet a subprogramului f care primete prin intermediul parametrului n un numr natural nenul (2n9), iar prin intermediul parametrului a, un tablou unidimensional care conine n valori naturale distincte, fiecare dintre acestea avnd cel mult patru cifre. Subprogramul interschimb cel mai mic element par i cel mai mare element impar din tabloul a i furnizeaz tabloul modificat tot prin parametrul a. Dac tabloul nu conine niciun element par sau niciun element impar, el va rmne neschimbat. Exemplu: dac subprogramul se apeleaz pentru n=6 i pentru a avnd valorile (2,3,17,6,1,24), tabloul va avea n urma apelului urmtoarea form: (17,3,2,6,1,24). (10p.) 4. Fiierul text NUMAR.TXT conine pe prima linie un numr real pozitiv x care are cel mult dou cifre la partea ntreag i cel mult apte cifre dup punctul zecimal. a) Scriei un program Pascal care, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al memoriei utilizate, afieaz pe ecran, separate printr-un spaiu, dou numere naturale al cror raport este egal cu x i a cror diferen absolut este minim. Exemplu: dac fiierul conine valoarea alturat, se vor afia pe ecran numerele 3 8. (6p.) 0.375
b) Descriei n limbaj natural metoda utilizat i explicai n ce const eficiena ei. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 026
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Pentru generarea n ordine cresctoare a numerelor cu n cifre formate cu elementele mulimii {0,2,9} se utilizeaz un algoritm backtracking care, pentru n=2, genereaz, n ordine, numerele 20,22,29,90,92,99. Dac n=4 i se utilizeaz acelai algoritm, care este numrul generat imediat dup numrul 2009 ? (4p.) a. 2002 b. 2020 c. 2090 d. 2010
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul afis este definit alturat. Ce se afieaz ca urmare a apelului afis(4); ? (4p.)
procedure afis (n:integer); begin write(n); if n>0 then begin afis(n-1);write(n) end end; 3. Scriei programul Pascal care citete de la tastatur dou numere naturale nenule n i k (n100, k100) i afieaz pe ecran, n ordine descresctoare, cei mai mici k multipli naturali nenuli ai numrului n. Numerele afiate sunt separate prin cte un spaiu. Exemplu: pentru n=6 i k=5 se afieaz 30 24 18 12 6. (6p.) 4. a) Scriei declarrile necesare i definiia complet a unui subprogram sterge, cu trei parametri, care: - primete prin parametrii: - v un tablou unidimensional cu maximum 100 de elemente ntregi din intervalul [-1000;1000] - n o valoare natural reprezentnd numrul de elemente din tabloul v - i o valoare natural cu 1in - elimin din tabloul v elementul v[i]i actualizeaz valoarea lui n. Tabloul modificat este furnizat tot prin parametrul v. (10p.) b) Fiierul text NUMERE.IN conine pe prima linie un numr natural nenul n (1n100) i pe urmtoarea linie n numere ntregi din intervalul [-1000;1000], separate prin cte un spaiu. Scriei un program Pascal care citete din fiierul NUMERE.IN numrul natural n, construiete n memorie un tablou unidimensional v cu cele n numere ntregi aflate pe linia a doua n fiier i utilizeaz apeluri utile ale subprogramului sterge pentru a elimina din tablou un numr minim de elemente astfel nct s nu existe dou elemente alturate cu aceeai valoare. Elementele tabloului obinut se afieaz pe ecran, separate prin cte un spaiu. Exemplu: Dac fiierul NUMERE.IN are coninutul: 12 10 10 2 2 19 9 9 9 9 15 15 15 atunci se afieaz 10 2 19 9 15. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 027
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Pentru generarea n ordine cresctoare a numerelor cu n cifre formate cu elementele mulimii {0,2,8} se utilizeaz un algoritm backtracking care, pentru n=2, genereaz, n ordine, numerele 20,22,28,80,82,88. Dac n=4 i se utilizeaz acelai algoritm, precizai cte numere generate sunt divizibile cu 100? (4p.) a. 8 b. 90 c. 6 d. 10
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul scrie este definit alturat. Ce se afieaz ca urmare a apelului scrie(1,7); ? (6p.) procedure scrie (x,y:integer); begin if x<y then begin scrie(x+1,y-1); write((x+y)div2) end end; 3. Scriei definia complet a subprogramului nreal cu doi parametri x i y, numere naturale din intervalul [1;1000] ce returneaz un numr real cu proprietatea c partea sa ntreag este egal cu x, iar numrul format din zecimalele sale, n aceeai ordine, este egal cu y. Exemplu: pentru x=12 i y=543, subprogramul returneaz valoarea 12.543. (10p.) 4. Fiierul text NUMERE.IN conine pe prima linie un numr natural nenul n (2n100) i pe urmtoarea linie n numere reale pozitive, aflate n ordine strict cresctoare, separate prin cte un spaiu. a) Scriei un program Pascal care, utiliznd un algoritm eficient din punct de vedere al memoriei utilizate, determin i afieaz pe ecran, separate printr-un spaiu, dou numere naturale x i y cu proprietatea c toate cele n numere aflate pe linia a doua n fiierul NUMERE.IN se gsesc n intervalul [x;y] i diferena y-x este minim. Exemplu: dac fiierul NUMERE.IN are coninutul: 6 3.5 5.1 9.2 16 20.33 100 atunci se afieaz 3 100 (6p.) b) Descriei n limbaj natural metoda utilizat i explicai n ce const eficiena ei. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 028
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Generarea tuturor cuvintelor de trei litere mici, nu neaprat distincte, ale alfabetului englez, se poate realiza cu ajutorul unui algoritm echivalent cu cel de generare a: (4p.) a. produsului cartezian b. combinrilor c. aranjamentelor d. permutrilor
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f este definit alturat. Ce valoare are f(4,8)? (4p.) function f (x,y :integer) :integer ; begin if x<=y then f:= 1+f(x+1,y) else f:=0 end; 3. Se consider un ir de n numere reale. Un numr x din acest ir se numete median dac este egal cu media aritmetic a celorlalte n-1 numere din ir. Exemplu: elementul x=5 este median pentru irul 2 5 6 7 deoarece 5=(2+6+7)/3. Scriei un program Pascal care citete de la tastatur un numr natural n din intervalul [2,50] i apoi un ir de n numere reale i afieaz pe ecran cte dintre elementele irului sunt mediane. (6p.) 4. a) Scriei definiia complet a unui subprogram primul, care - primete prin singurul su parametru, a, o valoare natural din intervalul [2,10000] - returneaz o valoare natural reprezentnd cel mai mic divizor al numrului a mai mare strict dect 1. (6p.) b) Fiierul text NUMERE.IN conine pe prima linie un numr natural nenul n (1n100) i pe urmtoarea linie n numere naturale din intervalul [2,10000] separate prin cte un spaiu. Un numr natural n se numete aproape prim dac este egal cu produsul a dou numere prime distincte. De exemplu, numrul 14 este aproape prim pentru c este egal cu produsul numerelor prime 2 i 7. Scriei un program Pascal care determin i afieaz pe ecran (dac exist), separate prin cte un spaiu, folosind apeluri utile ale subprogramului primul, numerele aproape prime de pe linia a doua a fiierului NUMERE.IN. Exemplu: dac fiierul NUMERE.IN are coninutul: 6 100 14 21 8 77 35 atunci se afieaz pe ecran 14 21 77 35 (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 029
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. n cte dintre permutrile elementelor mulimii {I,N,F,O} vocalele apar pe poziii consecutive? (4p.) a. 4 b. 6 c. 24 d. 12
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce se afieaz ca urmare a apelului p(123); dac subprogramul p are definiia alturat? (6p.) procedure p (x:integer); begin if x<>0 then begin p(x div10); write(x mod10) end end; 3. Scriei programul Pascal care citete trei numere naturale a,b,c (ab) din intervalul [1,10000] i afieaz pe ecran numrul multiplilor lui c din intervalul [a;b]. Exemplu: pentru a=10, b=27,c=5 se afieaz valoarea 4. (4p.) 4. Se consider dou tablouri unidimensionale A i B cu elemente numere naturale din intervalul [1;10000]. Spunem c tabloul A se poate reduce la tabloul B dac exist o mprire a tabloului A n secvene disjuncte i adiacente de cte trei elemente aflate pe poziii consecutive astfel nct, prin nlocuirea secvenelor cu suma elementelor din secven, s se obin, n ordine, elementele tabloului B.
De exemplu tabloul
se poate reduce la tabloul a) Scriei declarrile necesare i definiia complet a subprogramului suma, cu trei parametri, care: - primete prin parametrii: - A un tablou unidimensional cu maximum 100 de elemente numere naturale din intervalul [1;10000]; - i i j dou valori naturale (1ij100); - returneaz suma A i +A i+1 ++A j . (6p.)
b) Fiierul text NUMERE.IN conine pe prima linie dou numere naturale nenule n i m (1mn100), pe linia a doua n numere naturale din intervalul [1;10000] i pe linia a treia alte m numere naturale din intervalul [1;10000]. Pe fiecare linie numerele sunt separate prin cte un spaiu. Scriei un program Pascal care citete cele dou numere naturale n i m din fiierul NUMERE.IN, construiete n memorie dou tablouri unidimensionale A i B cu elementele aflate n fiier pe a doua, respectiv a treia linie i verific, utiliznd apeluri utile ale subprogramului suma, dac tabloul A se poate reduce la tabloul B. Programul afieaz pe ecran mesajul DA n caz afirmativ i mesajul NU n caz negativ. (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 030
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Pentru generarea numerelor cu n cifre formate cu elementele mulimii {0,4,8} se utilizeaz un algoritm backtracking care, pentru n=2, genereaz, n ordine, numerele 40,44,48,80,84,88. Dac n=4 i se utilizeaz acelai algoritm, care este numrul generat imediat dup numrul 4008 ? (4p.) a. 4040 b. 4004 c. 4080 d. 8004
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f este definit alturat. Ce se afieaz ca urmare a apelului f(1,3);? (6p.) procedure f (x,y:integer); begin if x<=y then begin f(x+1,y); write(x) end end; 3. Scriei declarrile necesare i definiia complet a subprogramului suma, care primete prin cei 4 parametri v,n,i,j: - v, un tablou unidimensional cu maximum 100 de elemente ntregi din intervalul [-1000;1000], numerotate de la 1 la n; - n, un numr natural reprezentnd numrul de elemente din tabloul v; - i i j dou valori naturale cu 1ijn. Subprogramul returneaz suma elementelor v 1 ,,v i-1 ,v j+1 ,,v n din tabloul v. (10p.) 4. Fiierul text NUMERE.IN conine pe prima linie un numr natural nenul n (1n100) i pe urmtoarea linie n numere reale pozitive ordonate cresctor, separate prin cte un spaiu. a) Scriei un program Pascal care citete din fiierul NUMERE.IN numrul natural n, i determin, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al memoriei utilizate, numrul de valori reale distincte de pe linia a doua din fiier.
Exemplu: dac fiierul NUMERE.IN are coninutul: 6 2.3 2.3 2.8 5.7 5.7 6.3 atunci se afieaz valoarea 4 (sunt 4 valori distincte: 2.3, 2.8, 5.7, 6.3). (6p.) b) Descriei n limbaj natural metoda utilizat i explicai n ce const eficiena ei. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 031
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Generarea tuturor irurilor de caractere de 5 litere, fiecare liter putnd fi orice element din mulimea {p,r,o,b,a}, se realizeaz cu ajutorul unui algoritm echivalent cu algoritmul de generare a: (4p.) a. aranjamentelor b. permutrilor c. submulimilor d. produsului cartezian
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul recursiv definit alturat. Ce se va afia n urma apelului f1(4);? (6p.)
procedure f1(x:integer); begin if x<=9 then begin write(x+1); f1(x+2) end end; 3. Scriei n limbajul Pascal definiia complet a subprogramului ordonare care primete ca parametru un tablou unidimensional x cu cel mult 100 de elemente, numere naturale, cu cel mult 4 cifre fiecare, i un numr natural n (n100), ce reprezint numrul efectiv de elemente ale tabloului x. Subprogramul va afia tabloul obinut n urma schimbarii poziiei doar a elementelor impare din tablou astfel nct acestea s apar n ordinea cresctoare a valorilor lor. Numerele se afieaz separate prin cte un spaiu. (10p.) Exemplu: pentru n=6 i x=(7,11,2,-8,-3,10) subprogramul va afia -3 7 2 -8 11 10 4. n fiierul numere.txt, se afl memorate, pe prima linie un numr natural n (1n100), iar pe fiecare dintre urmtoarele n linii, cte dou numere ntregi x,y (-100xy100), reprezentnd capetele cte unui segment [x,y] desenat pe axa Ox de coordonate. a) Scriei n limbajul Pascal un program eficient din punct de vedere al timpului de executare i al spaiului de memorare, care citete din fiier datele existente, determin segmentul rezultat n urma interseciei tuturor celor n segmente date i afieaz pe ecran dou numere desprie printr-un spaiu ce reprezint capetele segmentului cerut. Dac segmentele nu au nici un punct comun se va afia pe ecran valoarea 0. (6p.) b) Descriei n limbaj natural algoritmul utilizat, justificnd eficiena acestuia. (4p.) Exemplu: dac fiierul numere.txt are coninutul alturat, se va afia pe ecran 3 5 5 -7 10 3 20 -5 5 0 12 -8 30
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 032
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. n vederea participrii la un concurs, elevii de la liceul sportiv au dat o prob de selecie, n urma creia 6 dintre ei au obinut punctaje egale. n cte moduri poate fi format echipa selecionat tiind c poate avea doar 4 membri alei dintre cei 6, i c ordinea acestora n cadrul echipei nu conteaz? ? (4p.) a. 24 b. 30 c. 15 d. 4
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul afis este definit alturat. Ce se va afia n urma apelului afis(17);? (6p.) procedure afis(x:integer); begin if x>3 then begin write(x-1); afis(x div 3) end end; 3. Scriei definiia complet a subprogramului prime care are ca parametri dou numere naturale x i y (avnd cel mult 4 cifre fiecare) i afieaz pe ecran toate numerele prime din intervalul nchis, avnd unul din capete n x i cellat n y. Numerele afiate vor fi separate prin cte un spaiu. Exemplu: pentru x=32 i y=18 valorile afiate vor fi 19 23 29 31. (10p.) 4. Fiierul numere.txt conine mai multe numere ntregi (cel mult 100), fiecare numr avnd cel mult 9 cifre. Se cere s se afieze pe ecran, desprite printr-un spaiu, cele mai mari dou valori pare memorate n fiier. Dac n fiier nu se afl memorate dou astfel de valori, pe ecran se va afia valoarea 0. a) Descriei n limbaj natural o metod de rezolvare eficient din punct de vedere al gestionrii memoriei i al timpului de executare. (4p.) b) Scriei programul Pascal corespunztor metodei descrise la punctul a. (6p.)
Exemplu: dac fiierul numere.txt are coninutul alturat, se vor afia pe ecran, nu neaprat n aceast ordine: 30 50
10 5 3 -77 20 50 5 0 12 18 30
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 033
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Folosind un algoritm de generare putem obine numere naturale de k cifre care au suma cifrelor egal cu un numr natural s. Astfel, pentru valorile k=2 i s=6 se genereaz, n ordine, numerele: 15, 24, 33, 42, 51, 60. Care va fi al treilea numr generat pentru k=4 i s=5? (4p.) a. 1301 b. 1022 c. 2201 d. 1031
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce se va afia n urma executrii secvenei de mai jos, n care variabilele a i b sunt tip ntreg, iar subprogramul f este declarat alturat? a:=3; b:=9; f(a,b); write(a,b); (6p.) procedure f(var a:integer;b:integer); begin a:=a-1; b:=a+1; write(a,b) end; 3. Scriei definiia complet a subprogramului impar, care primete prin parametrul x un tablou unidimensional cu cel mult 100 de elemente numere naturale, fiecare avnd cel mult 9 cifre, iar prin parametrul n o valoare natural reprezentnd numrul efectiv de elemente ale tabloului (1n100) i afieaz mesajul DA n cazul n care printre elementele tabloului x se afl cel puin un numr impar, sau afieaz mesajul NU n caz contrar. (10p.) 4. Pe prima linie a fiierului numere.txt se afl dou numere naturale n i m (avnd cel mult 4 cifre fiecare, mn), desprite printr-un spaiu, iar pe urmtoarea linie, n ordine strict cresctoare, n numere naturale cu cel mult dou cifre, desprite prin cte un spaiu. a) Scriei n limbajul Pascal un algoritm eficient din punct de vedere al gestionrii memoriei i al timpului de executare, care citete din fiier datele existente i afieaz cea mai mare sum a m numere aflate pe a doua linie a fiierului. (6p.) b) Explicai n limbaj natural metoda utilizat, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 034
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Completarea unui bilet de LOTO presupune colorarea a 6 numere dintre cele 49, nscrise pe bilet. O situaie statistic pe o anumit perioad de timp arat c cele mai frecvente numere care au fost extrase la LOTO sunt: 2, 20, 18, 38, 36, 42, 46, 48. Cte bilete de 6 numere se pot completa folosind doar aceste valori, tiind c numrul 42 va fi colorat pe fiecare bilet? (4p.) a. 21 b. 6! c. 42 d. 56
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f este definit alturat. a) Ce valoare va avea f(7)? b) Determinai dou valori x1 i x2 (x1x2, x1<12, x2<12) pentru care f(x1)=f(x2). (6p.) function f(i:integer):integer; begin if i>12 then f:=1 else f:=1+f(i+2) end; 3. Subprogramul cifre_impare primete prin parametrul n un numr natural avnd cel mult 9 cifre i returneaz valoarea 1 dac numrul n are toate cifrele impare i 0 n caz contrar. a) Scriei numai antetul subprogramului cifre_impare. (4p.) b) Pe prima linie a fiierului numere.txt se afl un numr natural n, iar pe urmtoarele linii, n numere naturale. Pe fiecare linie din fiier, numerele sunt desprite prin cte un spaiu.Toate numerele din fiier au cel mult 9 cifre. Scriei programul Pascal care, folosind apeluri utile ale subprogramului cifre_impare, afieaz pe ecran acele numere din fiier care sunt mai mari dect 100 i au toate cifrele impare. Numerele afiate sunt separate prin cte un spaiu. Exemplu: dac fiierul numere.txt are coninutul alturat, se vor afia pe ecran: 333 713 11573 (10p.) 10 1 333 709 23 258 34 713 2678 11573 778 4. Scriei programul Pascal care citete de la tastatur un numr natural n (n<100), apoi un ir de n numere naturale de cel mult 3 cifre fiecare i afieaz pe ecran cel mai mare numr de valori pare aflate pe poziii consecutive n irul citit. Exemplu: pentru n=8 i numerele 12,7,4,16,10,3,6,6 se va afia 3 . (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009- INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 035
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Pentru generarea tuturor mulimilor de 3 elemente, avnd la dispoziie valorile 1,2,3,4,5, 6 se poate utiliza un algoritm echivalent cu algoritmul de generare a: (4p.) a. permutrilor de 3 elemente b. submulimilor mulimii {1,2,3,4,5,6} c. combinrilor de 6 elemente luate cte 3 d. aranjamentelor de 6 elemente luate cte 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f este definit alturat. Ce se va afia n urma executrii secvenei de mai jos, n care variabilele a i b sunt de tip ntreg? a=3; b=9; f(b,a);f(b,b); (6p.) procedure f(var a:integer;b:integer); begin a:=a-5;b:=a-2; write(a,b) end; 3. a) Scriei definiia complet a unui subprogram sum care primete prin parametrul x un numr natural de cel mult 4 cifre i returneaz suma divizorilor numrului x, diferii de 1 i de el nsui. Exemplu: dac x=10 se va returna valoarea 7 (7=2+5). (4p.) b) Scriei programul Pascal care citete de la tastatur un numr natural n (0<n<100), apoi n numere naturale (cu cel mult 4 cifre fiecare). Programul determin, folosind apeluri utile ale subprogramului sum, pentru fiecare numr natural citit, suma divizorilor si proprii i afieaz pe ecran sumele determinate, n ordinea cresctoare a valorilor lor, separate prin cte un spaiu. (6p.) Exemplu: dac n=5 i numerele citite sunt 10 2 33 6 11 valorile afiate pe ecran vor fi: 0 0 5 7 14 deoarece suma divizorilor lui 10 este 7, suma divizorilor lui 2 este 0, suma divizorilor lui 33 este 14, suma divizorilor lui 6 este 5, suma divizorilor lui 11 este 0. 4. Fiierul text numere.in conine pe prima linie un numr natural n (0<n<1000), iar pe a doua linie n numere naturale cu cel mult 9 cifre fiecare. Scriei un program Pascal care citete toate numerele din fiier i afieaz pe ecran, separate prin cte un spaiu, numerele formate doar din cifre distincte i care au exact trei cifre. Exemplu: dac fiierul numere.in are urmtorul coninut 7 249 511 4329 2 4313 243 3562 atunci pe ecran se vor afia numerele 249 243 (nu neaprat n aceast ordine). (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 036
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Subprogramul scif returneaz suma cifrelor unui numr natural transmis ca parametru. Care este valoarea expresiei scif(scif(518)+scif(518))? (4p.) a. 10 b. 14 c. 28 d. 1
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Utilizm metoda backtracking pentru generarea tuturor modalitilor de a scrie numrul 9 ca sum a cel puin dou numere naturale nenule distincte. Termenii fiecarei sume sunt n ordine strict cresctoare. Soluiile se genereaz n ordinea: 1+2+6, 1+3+5, 1+8, 2+3+4, 2+7, 3+6 i 4+5. Se aplic exact aceeai metod pentru scrierea lui 12. Scriei n ordinea generrii, toate soluiile de forma 2+... (6p.) 3. Scriei programul Pascal care, pentru o valoare n (numr natural, 0<n<100) citit de la tastatur, afieaz pe ecran, n ordine cresctoare, separate prin cte un spaiu, primele n numere strict pozitive, divizibile cu 5. Exemplu: pentru n=4 se vor afia pe ecran valorile 5 10 15 20. (4p.) 4. Subprogramul cifra primete prin intermediul parametrului a un numr natural cu cel mult 4 cifre i returneaz ultima cifr par a sa. Dac numrul nu conine cifre pare, subprogramul returneaz valoarea -1. De exemplu, dac a=8345, subprogramul va returna 4. a) S se scrie definiia complet a subprogramului cifra. (10p.) b) Pe prima linie a fiierului bac.in se afl un numr natural nenul n (n1000), iar pe a doua linie a fiierului se afl un ir de n numere naturale, desprite prin cte un spaiu, fiecare numr fiind format din cel mult 4 cifre. Scriei un program Pascal care citete numerele din fiier i afieaz pe ecran, folosind apeluri utile la subprogramului cifra, cel mai mare numr care se poate forma prelund ultima cifr par a fiecrui element, dac o astfel de cifr exist. n cazul n care toate valorile din fiier conin doar cifre impare, atunci se va afia valoarea -1. (6p.) Exemplu: dac fiierul bac.in are coninutul alturat, pe ecran se va afia: 64220 7 369 113 2 0 33 1354 42
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 037
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se utilizeaz un algoritm pentru a genera n ordine lexicografic invers toate permutrile mulimii {1,2,3,4,5}. Primele patru permutri generate sunt: 54321, 54312, 54231, 54213. A cincea permutare este: (4p.) a. 54321 b. 54132 c. 53421 d. 54123
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Considerm subprogramul f definit alturat. Ce valoare are f(7,11)? Dar f(11,7)? (6p.) function f(x,y:integer):integer; begin if x<=y then f:=x-y else f:=f(y-x,x-1)+3 end; 3. Scriei un program Pascal care citete numerele naturale nenule n i k (kn100) i un tablou unidimensional cu n elemente numere ntregi, fiecare avnd cel mult 4 cifre. Programul modific tabloul, permutnd circular cu k poziii spre stnga, elementele acestuia i afieaz pe ecran, pe o singur linie, separate prin cte un spaiu, elementele tabloului obinut. Exemplu: dac n=4, k=3 i tabloul v=(1,2,3,4), atunci se vor afia n ordine elementele: 4 1 2 3. (10p.) a) Scriei doar antetul subprogramului nrdiv, care primete prin intermediul parametrului x un numr natural nenul cu cel mult 4 cifre, i returneaz numrul de divizori primi ai lui x. (4p.) b) Pe prima linie a fiierului bac.in se afl un numr natural nenul n (n1000), iar pe a doua linie a fiierului se afl un ir format din n numere naturale nenule, desprite prin cte un spaiu, fiecare numr fiind format din cel mult 4 cifre. Scriei un program Pascal care citete numerele din fiier i care afieaz pe ecran, folosind apeluri utile ale subprogramului nrdiv, pentru fiecare valoare din ir numrul de divizori primi. Numerele afiate vor fi separate prin cte un spaiu. (6p.) 4. Exemplu: dac fiierul bac.in are coninutul alturat, pe ecran se va afia: 3 3 3 2 2 1. 6 30 105 140 10 20 5
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 038
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utilizm metoda backtracking pentru generarea tuturor modalitilor de a scrie numrul 9 ca sum a cel puin dou numere naturale nenule distincte. Termenii fiecrei sume sunt n ordine strict cresctoare. Soluiile se genereaz n ordinea: 1+2+6, 1+3+5, 1+8, 2+3+4, 2+7, 3+6 i 4+5. Se aplic exact aceeai metod pentru scrierea lui 8. Cte soluii vor fi generate? (4p.) a. 6 b. 4 c. 5 d. 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului sc, ce valoare are sc(1000)? Dar sc(901324)? (6p.) function sc(x:longint):integer; begin if x<10 then sc=x else sc:=sc(x div 10)+x mod 10 end; 3. Scriei n limbajul Pascal definiia complet a subprogramul Del care are doi parametri: x, un numr ntreg de cel mult 9 cifre, i y, un numr natural nenul de o cifr. Subprogramul determin eliminarea tuturor cifrelor lui x mai mari strict dect y i furnizeaz numrul obinut tot prin intermediul parametrului x. Dac toate cifrele lui x sunt mai mari strict dect y, atunci x va primi valoarea -1. Exemplu: dac x=37659 i y=6, dup apel x=365, iar y=6. (10p.) 4. Se consider subprogramul inter cu doi parametri: x i y (numere ntregi formate din cel mult patru cifre fiecare); subprogramul interschimb valorile a dou variabile transmise prin intermediul parametrilor x i y. a) Scriei n limbajul Pascal numai antetul subprogramului inter. (4p.) b) Pe prima linie a fiierului bac.in se afl un numr natural nenul n1000, iar pe a doua linie a fiierului se afl un ir de n numere naturale nenule, desprite prin cte un spaiu, fiecare numr fiind format din cel mult 4 cifre. Scriei un program Pascal care afieaz pe ecran, n ordine cresctoare, numerele aflate pe a doua linie a fiierului. Numerele vor fi afiate pe o singur linie, iar ntre dou numere se va lsa un spaiu. Se vor folosi apeluri utile ale subprogramului inter. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 039
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utilizm metoda backtracking pentru generarea tuturor modalitilor de a scrie numrul 6 ca sum a cel puin dou numere naturale nenule. Termenii fiecrei sume sunt n ordine cresctoare. Soluiile se genereaz n ordinea: 1+1+1+1+1+1, 1+1+1+1+2, 1+1+1+3, 1+1+4, 1+2+3, 1+5, 2+2+2, 2+4 i 3+3. Se aplic exact aceeai metod pentru scrierea lui 9. Care este penultima soluie? (4p.) a. 2+7 b. 3+3+3 c. 4+5 d. 3+6
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, ce valoare are f(3)? Dar f(8)? (6p.) function f(x:integer):integer; begin if x<=4 then f:=x*x-3 else f:=f(x-3)+4 end; Pe prima linie a fiierului bac.in se afl un numr natural nenul n (n1000), iar pe a doua linie a fiierului se afl un ir format din n numere naturale, desprite prin cte un spaiu, fiecare numr fiind format din cel mult 4 cifre. Scriei un program Pascal care citete valorile din fiier i care afieaz pe ecran mesajul DA dac toate elementele pare din ir sunt n ordine cresctoare i mesajul NU n caz contrar. 3. Exemplu: dac fiierul bac.in are coninutul alturat, pe ecran se va afia: DA (10p.) 7 10 113 12 33 42 1354 421 4. Se consider subprogramul pr, care primete prin intermediul parametrului a un numr natural nenul cu cel mult 9 cifre i returneaz 1 dac numrul este prim i 0 n caz contrar. a) Scriei numai antetul subprogramului pr. (4p.) b) Considerm un numr natural nenul n>99 cu cel mult 9 cifre. Din n se obine un ir de valori prin eliminarea succesiv a ultimei cifre, apoi a ultimelor dou cifre, apoi a ultimelor trei cifre etc., pn se obine un numr de dou cifre, ca n exemplu. S se realizeze un program Pascal care citete de la tastatur numrul n i care, folosind apeluri utile ale subprogramul pr, afieaz pe ecran, separate prin cte un spaiu, doar valorile prime din irul obinut din n conform descrierii de mai sus. Exemplu: pentru n=193124 se obine irul de valori 19312,1931, 193, 19 din care se vor afia pe ecran doar valorile 1931 193 19 (nu neaprat n aceast ordine). (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 040
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utilizm metoda backtracking pentru generarea tuturor modalitilor de a scrie numrul 6 ca sum a cel puin dou numere naturale nenule. Termenii fiecrei sume sunt n ordine cresctoare. Soluiile se genereaz n ordinea: 1+1+1+1+1+1, 1+1+1+1+2, 1+1+1+3, 1+1+4, 1+2+3, 1+5, 2+2+2, 2+4 i 3+3. Se aplic exact aceeai metod pentru scrierea lui 9. Cte soluii de forma 2+... vor fi generate? (4p.) a. 4 b. 3 c. 2 d. 5
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. n secvena alturat variabilele i, j i aux sunt ntregi, iar v memoreaz un tablou unidimensional ale crui elemente au urmtoarele valori: v[1]=2, v[2]=13, v[3]=1, v[4]=5, v[5]=-4. Care este numrul de interschimbri care se efectueaz n urma executrii secvenei alturate? Dai un exemplu de alte 5 valori pentru elementele tabloului astfel nct, n urma executrii secvenei alturate, s nu se efectueze nicio interschimbare. (6p.) for i:=1 to 4 do for j:=5 downto i+1 do if v[i]<v[j] then begin aux:=v[i]; v[i]:=v[j]; v[j]:=aux end; Pe prima linie a fiierului bac.in se afl un numr natural nenul n (n1000), iar pe a doua linie a fiierului se afl un ir format din n numere naturale, desprite prin cte un spaiu, fiecare numr fiind format din cel mult 4 cifre. Scriei un program Pascal care citete numerele din fiier i care afieaz pe ecran mesajul DA dac elementele pare n ir sunt n ordine cresctoare, iar cele impare sunt n ordine descresctoare, i mesajul NU n caz contrar. 3. Exemplu: dac fiierul bac.in are coninutul alturat, pe ecran se va afia: DA (10p.) 8 10 1133 12 331 42 1354 221 13 4. Considerm definite subprogramele: - pr, care primete prin intermediul parametrului x un numr natural cu cel mult 4 cifre i returneaz 1 dac numrul este prim i 0 n caz contrar; - sdiv, care primete prin intermediul parametrului y un numr natural cu cel mult 4 cifre i returneaz suma tuturor divizorilor numrului y. a) Scriei numai antetul subprogramelor pr i sdiv. (4p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (n<1000) i care afieaz pe ecran toate numerele mai mici dect n cu proprietatea c suma divizorilor lor este numr prim. Se vor utiliza apeluri utile ale subprogramelor pr i sdiv. Exemplu: dac n=20, atunci programul va afia: 2 4 9 16. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 041
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Cea mai mare dintre valorile strict negative memorate ntr-un tablou unidimensional NU exist dac: (4p.) a. n tablou sunt memorate numai valori strict negative b. n tablou exist cel puin o valoare negativ c. n tablou sunt memorate valori nenule pozitive i negative d. n tablou sunt memorate numai valori strict pozitive
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. tiind c p este un vector cu 3 componente ntregi (vector declarat global) cu ce trebuie nlocuite i n definiia subprogramului G astfel nct n urma apelului G(1) s se afieze toate numerele de 3 cifre, fiecare cifr fiind nenul. Fiecare numr va fi afiat o singur dat. (6p.) procedure G(k:integer); var i:integer; begin for i:=1 to do begin p[k]:=i; if then G(k+1) else writeln(p[1],p[2],p[3]) end end; 3. Scriei un subprogram MULT, cu doi parametri, care primete prin intermediul parametrului a un tablou unidimensional cu cel mult 100 de elemente, numere naturale de cel mult 4 cifre fiecare, i prin intermediul parametrului n un numr natural nenul, n<100, ce reprezint numrul de elemente din tablou. Subprogramul verific dac tabloul conine toate valorile din mulimea {1,2,,n}. n caz afirmativ subprogramul returneaz valoarea 1, iar altfel subprogramul returneaz valoarea 0. (10p.) 4. Fiierul text numere.txt conine pe prima linie un numr natural n (0<n<100000), iar pe a doua linie un ir de n numere naturale de o singur cifr, separate prin cte un spaiu. irul conine cel puin o valoare par i una impar. a) Scriei un program Pascal care determin n mod eficient, din punct de vedere al timpului de executare, cea mai mare cifr par i cea mai mic cifr impar dintre cele situate pe a doua linie a fiierului. Cifrele determinate vor fi afiate pe ecran, pe o singur linie, separate printr-un spaiu. Exemplu: dac fiierul numere.txt are urmtorul coninut: 7 3 5 2 1 6 3 1 atunci pe ecran se vor afia valorile: 6 1. (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 042
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz toate permutrile mulimii {1,2,3,4}. Dac primele trei permutri generate sunt, n acest ordine: 1234, 1243, 1324 precizai care este permutarea generat imediat dup 3412. (4p.) a. 3214 b. 3413 c. 4123 d. 3421
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f are definiia alturat. Ce valoare are f(7)? Dar f(100)? (6p.) function f(x:integer):integer; begin if x mod 6=0 then f:=x else f:=f(x-1) end; 3. Scriei definiia complet a unui subprogram P, cu trei parametri, care primete prin intermediul primului parametru, a, un tablou unidimensional de cel mult 100 de numere ntregi, cu cel mult 4 cifre fiecare, prin intermediul celui de-al doilea parametru, n, numrul efectiv de elemente ale tabloului, iar prin parametrul k, un numr natural (k<101) i returneaz cea mai mare sum de k termeni care se poate obine adunnd k elemente ale tabloului. Exemplu: dac n=6 i k=4, iar irul este format din elementele (5, 2, 5, 4, 1, 3), atunci la apel se va returna 17. (10p.) 4. Fiierul text numere.txt conine pe prima linie un numr natural n (0<n<100000), iar pe doua linie, separate prin cte un spaiu, n numere naturale formate din cel mult dou cifre. a) Scriei un program Pascal care determin n mod eficient, din punct de vedere al timpului de executare, dac numerele situate pe a doua linie a fiierului sunt n ordine strict cresctoare. n caz afirmativ, programul va afia pe ecran mesajul DA, altfel va afia mesajul NU. Exemplu: daca fiierul numere.txt are urmtorul coninut: 7 3 5 2 1 5 23 1 atunci pe ecran se va afia: NU (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 043
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz numerele formate din cte 3 cifre distincte din mulimea {1,3,5,7}. Dac primele trei numere generate sunt, n acest ordine: 135, 137, 153 care este cel de-al patrulea numr generat? (4p.) a. 315 b. 173 c. 157 d. 357
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f are definiia alturat. Ce valoare are f(3)? Dar f(10)? (6p.)
function f(x:integer):integer; begin if x=0 then f:=0 else f:=f(x-1)+2 end; 3. Scriei definiia complet a unui subprogram P cu doi parametri, care primete prin intermediul primului parametru, n, un numr natural nenul (1n100) i prin intermediul celui de-al doilea parametru, a, un tablou unidimensional cu elementele numerotate de la 1 la n, numere ntregi, de cel mult 4 cifre fiecare, i returneaz suma tuturor numerelor impare aflate pe poziii pare n tablou. Exemplu: dac n=6, iar irul este format din elementele (3, 2, 7, 1, 4, 3), atunci la apel se va returna 4. (10p.) 4. Fiierul text numere.txt conine pe prima linie un numr natural n (0<n<100000) iar pe a doua linie n cifre, separate prin cte un spaiu. a) Scriei un program Pascal care determin n mod eficient, din punct de vedere al timpului de executare, cea mai mare cifr dintre cele situate pe a doua linie a fiierului numere.txt i numrul de apariii ale acesteia. Valorile determinate se vor afia pe ecran, separate printr-un spaiu. Exemplu: daca fiierul numere.txt are urmtorul coninut: 11 2 5 3 1 5 8 9 2 7 3 4 atunci pe ecran se va afia: 9 1. (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 044
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Care dintre urmtoarele variante reprezint antetul corect al unui subprogram care primete prin parametrii x i y dou numere ntregi i returneaz, prin parametrul m, cea mai mic dintre cele dou valori x i y? (4p.) a. function minim(x,y:integer):integer; b. procedure minim(x,y:integer;var m:integer); c. procedure minim(x,y,m:integer); d. function minim(x,y,m:integer):integer;
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f are definiia alturat. Ce valoare are f(6,5)? Dar f(5,10)? (6p.) function f(x,y:integer):integer; begin if x=y then f:=x else if x<y then f:=f(x+1,y-1) else f:=f(x-1,y) end; 3. Scriei definiia complet a unui subprogram P, cu doi parametri, a i b, numere naturale cu cel mult 4 cifre fiecare i afieaz pe ecran, separate prin cte un spaiu, numerele aflate n intervalul nchis determinat de valorile a i b, care sunt ptratele unor numere prime. Exemplu: pentru a=40 i b=1 se va afia: 4 9 25 (nu neaprat n aceast ordine). (10p.) 4. Fiierul text numere.txt conine pe prima linie un numr natural n (0<n<100000), iar pe a doua linie, separate prin cte un spaiu, n numere naturale formate din cel mult dou cifre. a) Scriei un program Pascal care determin n mod eficient, din punct de vedere al timpului de executare, toate numerele coninute de a doua linie a fiierului care apar de cel puin dou ori n acest linie. Programul va afia pe ecran numerele determinate, o singur dat, n ordine crescatoare, pe aceeai linie, separate prin cte un spaiu. Exemplu: dac fiierul numere.txt are urmtorul coninut: 8 44 2 54 74 2 44 9 2 atunci pe ecran se va afia: 2 44 (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 045
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz toate cuvintele de cte 3 litere din mulimea {a,b,c}. Dac primele patru cuvinte generate sunt, n acest[ ordine: aaa, aab, aac, aba, care este cel de-al optulea cuvnt generat? (4p.) a. acb b. acc c. aca d. bca
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f are definiia alturat. Ce valoare are f(4)? Dar f(11)? (6p.) function f(x:integer):integer; begin if x<1 then f:=1 else f:=f(x-3)+1 end; 3. Scriei definiia complet a unui subprogram P, cu doi parametri, a i b, numere naturale cu cel mult 4 cifre fiecare i afieaz pe ecran, separate prin cte un spaiu, numerele aflate n intervalul nchis determinat de valorile a i b, care sunt cuburile unor numere prime. Exemplu: pentru a=40 i b=1 se va afia: 8 27 (nu neaprat n aceast ordine). (10p.) 4. Fiierul text numere.txt conine pe prima linie un numr natural n (0<n<100000) iar pe a doua linie, separate prin cte un spaiu, n numere naturale formate din cel mult dou cifre. a) Scriei un program Pascal care afieaz pe ecran, n mod eficient din punct de vedere al timpului de executare, toate numerele situate pe a doua linie a fiierului, n ordinea cresctoare a valorilor lor, separate prin cte un spaiu. Daca un numr apare n fiier de mai multe ori el va fi afiat o singur dat. Exemplu: dac fiierul numere.txt are urmtorul coninut: 7 12 21 22 11 9 12 3 atunci pe ecran se va afia: 3 9 11 12 21 22 (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 046
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un program genereaz, n ordine cresctoare, numerele naturale de exact 5 cifre din mulimea {1, 2, 3, 4, 5}. Fiecare dintre numerele generate are cifrele distincte dou cte dou. Primele 3 numere astfel generate sunt: 12345, 12354, 12435. Care este numrul generat imediat dup 12543? (4p.) a. 15342 b. 12534 c. 13245 d. 13452
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f definit alturat: Ce valoare are f(7)? Dar f(100)? (6p.) function f(n:integer):longint; begin if n=0 then f:=0 else f:=f(n-1)+2*n; end; 3. Fiierul bac.txt conine pe prima linie un numr natural n (n100), iar pe a doua linie, separate prin cte un spaiu, n numere naturale nenule, cu cel mult 4 cifre fiecare. Scriei programul Pascal care citete de la tastatur un numr natural k (k25), construiete n memorie i afieaz pe ecran un tablou unidimensional ce conine, n ordinea n care au fost citite, numerele de pe a doua linie a fiierului bac.txt care au cel puin k divizori. Exemplu: dac k=5, iar fiierul are coninutul alturat, atunci tabloul care se afieaz este: 100 400 56 (10p.) 6 100 9 400 56 7 10 4. a) Scriei n limbajul Pascal doar antetul subprogramului cifre, care prin intermediul parametrului nr primete un numr natural de cel mult 9 cifre i furnizeaz prin intermediul parametrilor nc i sc numrul de cifre i respectiv suma cifrelor din scrierea lui nr. (4p.) b) Scriei programul Pascal care citete de la tastatur un numr natural n (10 n 10 9 ) i verific, folosind apeluri utile ale subprogramului cifre, dac n scrierea n baza 10 a lui n se gsete cel puin o cifr care s fie media aritmetic a celorlalte cifre din componena lui n. Programul afieaz pe ecran mesajul DA n caz afirmativ i NU n caz contrar. Exemplu: pentru n=27989 programul va afia mesajul DA, deoarece n scrierea lui n apare cifra 7 care este media aritmetic a celorlalte cifre din scrierea lui n: 7=(2+9+8+9)/4. Pentru n=7351 se va afia mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 047
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. ntr-un penar sunt opt creioane: trei sunt roii, dou albastre i trei negre. Dac scoatem din penar cinci creioane, cte posibiliti exist ca cel puin dou dintre ele s fie roii? (4p.) a. 6 b. 12 c. 15 d. 20
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f definit alturat. Ce valoare are f(5)? Dar f(100)? (6p.) function f(n:integer):longint; begin if n<0 then f:=0 else f:=f(n-2)+n; end; Fiierul text bac.txt conine pe prima linie un numr natural n (n<100), iar pe a doua linie, separate prin cte un spaiu, n numere naturale, mai mici dect 30000 fiecare. Scriei un program Pascal care citete de la tastatur un numr natural k (k<50) precum i numerele din fiierul bac.txt i afieaz pe ecran, cu cte un spaiu ntre ele, toate numerele de pe a doua linie a fiierului care sunt puteri ale lui k. Dac nu exist un asemenea numr pe a doua linie a fiierului, se afieaz pe ecran mesajul NU. Un numr natural x este putere a lui k dac exist un numr natural y astfel nct x=k y . 3. Exemplu: dac se citete de la tastatur k=2, iar fiierul are coninutul alturat, atunci pe ecran se afieaz numerele: 32 256 2 1 (10p.) 8 32 56 317 809 256 2 1 60 4. a) Scriei n limbajul Pascal doar antetul unui subprogram cif, care primete prin intermediul primului parametru, nr, un numr natural cu cel mult 9 cifre i furnizeaz prin intermediul celui de-al doilea parametru, s, suma cifrelor din scrierea lui nr. (4p.) b) Scriei programul Pascal care citete de la tastatur un numr natural n (0<n<25), apoi un ir de n numere naturale nenule cu cel mult 9 cifre fiecare i care afieaz pe ecran, separate prin cte un spaiu, numerele din ir care au suma cifrelor maxim, folosind apeluri utile ale subprogramului cif. Exemplu: dac pentru n=8 se citete irul de numere 274 56018 354 8219 293 287 932 634 atunci, pe ecran, se afieaz numerele 56018 8219. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 048
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul f definit alturat. Ce valoare are f(250)? (4p.) function f(x:integer):integer; begin if x mod 3=0 then f:=0 else f:=1+f(x div 3); end; a. 1 b. 2 c. 3 d. 4
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se genereaz prin metoda backtracking mulimile distincte ale cror elemente sunt numere naturale nenule i care au proprietatea c suma elementelor fiecrei mulimi este egal cu 7. Astfel, sunt generate, n aceast ordine, mulimile: {1,2,4}, {1,6}, {2,5}, {3,4}, {7}. Folosind aceeai metod pentru a genera mulimile distincte ale cror elemente sunt numere naturale nenule i care au proprietatea c suma elementelor fiecrei mulimi este egal cu 9, stabilii n ce ordine sunt generate urmtoarele mulimi: M1={2,3,4}; M2={3,6}; M3={2,7}; M4={4,5}. (6p.) 3. Se consider subprogramul cmdiv care primete prin parametrii x i y dou valori ntregi pozitive (0<x<100 i 0<y<100) i returneaz cel mai mare divizor comun al lor. a) Scriei doar antetul subprogramului cmdiv. (4p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n ( 1 n 100), determin, utiliznd apeluri utile ale subprogramului cmdiv, i afieaz pe ecran numrul fraciilor ireductibile de forma cu x numr natural (1xn). Exemplu: pentru n=6 se afieaz 2, deoarece, dintre fraciile doar dou sunt ireductibile : i . (6p.) 4. Fiierul text bac.in conine pe prima linie un numr natural n (0<n<5000), iar pe a doua linie, separate prin cte un spaiu, n numere naturale, formate din cel mult 4 cifre fiecare. Scriei un program Pascal care determin i scrie n fiierul bac.out toate numerele de pe a doua linie a fiierului care apar o singur dat pe aceast linie. Numerele determinate se vor afia n ordinea cresctoare a valorilor lor, separate prin cte un spaiu. Exemplu: dac pe prima linie a fiierului bac.in se afl 10, iar pe linia a doua se gsesc numerele 2 4548 568 4548 57 89 5974 2 89 32 atunci valorile cutate sunt 32 57 568 5974. (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 049
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz n ordine strict cresctoare numerele de cte ase cifre care conin: cifra 1 o singur dat, cifra 2 de dou ori i cifra 3 de trei ori. Se obin, n aceast ordine, numerele: 122333, 123233, 123323, , 333221. Cte numere generate prin aceast metod au prima cifr 1 i ultima cifr 2? (4 p.) a. 1 b. 2 c. 4 d. 8
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru o valoare natural mai mare dect 1 memorat n variabila global n, subprogramul recursiv alturat afieaz cel mai mare divizor al lui n, mai mic dect n, la apelul divi(n). Cu ce trebuie nlocuite i ? (6p.) procedure divi(i:longint); begin if =0 then write() else divi(i-1); end; 3. Scriei un program Pascal care citete de la tastatur un numr natural n ( 1 n 50) i un ir de n numere naturale cu cel mult 4 cifre fiecare i care verific dac elementele irului pot fi rearanjate astfel nct s respecte regula: al doilea element este cu 1 mai mare dect primul, al treilea cu 2 mai mare dect al doilea, ... , ultimul este cu n-1 mai mare dect penultimul. Programul afieaz pe ecran mesajul DA n caz afirmativ i mesajul NU n caz contrar. Exemplu: pentru n=4 i irul 8,5,11,6 se afieaz DA (elementele pot fi rearajate astfel nct s respecte regula dat: 5,6,8,11). (10p.) 4. Se consider subprogramul cmax care prin parametrul a primete un numr natural nenul mai mic dect 30000, iar prin parametrul b furnizeaz cifra maxim din numrul a. a) Scriei, folosind limbajul Pascal, doar antetul subprogramului cmax. (4p.) b) Fiierul bac.txt conine cel mult 1000 numere naturale nenule, mai mici dect 30000 fiecare, separate prin cte un spaiu. Scriei programul Pascal care citete din fiierul bac.txt toate numerele i care determin cea mai mare cifr din scrierea lor folosind apeluri utile ale subprogramului cmax. Cifra determinat se va afia pe ecran. Exemplu: dac fiierul bac.txt conine valorile: 23 12 64 12 72 345 67 23 71 634 atunci pe ecran se afieaz 7. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 050
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Fie declararea: type vector= array[0..5] of integer; var v:vector; Valorile memorate de componentele tabloului v, cu indicii de la 0 la 5, sunt, n aceast ordine: 973, 51, 75, 350, 350, 15. Se consider subprogramul t cu definiia alturat. Care dintre urmtoarele expresii are valoarea 1 ? (4p.) function t(i:integer;v:vector):integer; begin if i=0 then t:=0 else if v[i] <> v[i-1] then t:=t(i-1,v) else t:=1 end;
a. t(3,v) b. t(5,v) c. t(4,v)+t(5,v) d. t(3,v)+t(2,v)
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se genereaz n ordine strict cresctoare toate numerele de cte ase cifre care conin: cifra 1 o singur dat, cifra 2 de dou ori i cifra 3 de trei ori. Se obin, n aceast ordine, numerele: 122333, 123233, 123323, 123323 etc. a) Care este ultimul numr generat? (3p.) b) Ce numr se genereaz imediat dup 332312? (3p.) 3. Se consider subprogramul divxy care primete prin parametrii x i y dou valori ntregi pozitive (0<x<1000 i 0<y<1000) i returneaz valoarea 1 dac y este divizor al lui x sau x este divizor al lui y i 0 n caz contrar. a) Scriei definiia complet a subprogramului divxy (4p.) b) Scriei un program Pascal care citete de la tastatur trei numere naturale nenule a, b i n, cu cel mult 3 cifre fiecare i care care afieaz pe ecran toi divizorii lui n din intervalul nchis determinat de a i b folosind apeluri utile ale subprogramului divxy. Intervalul nchis determinat de a i b este [a,b] dac a<b sau [b,a] dac ba. Numerele afiate sunt separate prin cte un spaiu. Dac nu exist niciun astfel de numr se afieaz mesajul NU EXISTA. Exemplu: pentru a=85, b=10 i n=40 se afieaz: 10 20 40 (nu neaprat n aceast ordine). (6p.) 4. Fiierul bac.in conine pe prima linie un numr natural n (0<n<5000), iar pe a doua linie, separate prin cte un spaiu, n numere naturale, formate din cel mult 4 cifre fiecare. Scriei un program Pascal care determin i scrie n fiierul bac.out, toate numerele, citite de pe a doua linie a fiierului bac.in, care apar de cel puin dou ori. Numerele determinate se vor scrie n ordine cresctoare, pe aceeai linie, separate prin cte un spaiu. Exemplu: dac fiierul bac.in conine pe prima linie numrul 11, iar pe linia a doua valorile 23 12 54 12 78 345 67 23 78 934 23 atunci fiierul bac.out va conine: 12 23 78 (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 051
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Care este antetul corect al subprogramului cifre, care primete prin intermediul primului parametru, x, un numr natural i furnizeaz prin intermediul celui de-al doilea parametru, y, suma cifrelor numrului natural x? (4p.) a. procedure cifre(x:integer;var y:integer); b. function cifre(x:integer):integer; c. procedure cifre(x,y:integer); d. function cifre(var x:integer; y:integer);
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider un numr natural nenul x, avnd exact 8 cifre, distincte dou cte dou; printre cifrele sale se gsete i cifra 0. Permutnd cifrele lui x, se obin alte numere naturale. a) Cte dintre numerele obinute, inclusiv x, au exact 8 cifre? (3p.) b) Cte dintre numerele obinute sunt divizibile cu 10? (3p.) Se consider subprogramul divizor, care primete prin intermediul primului parametru, a, un numr natural (1<a<10000) i returneaz cel mai mic divizor prim al numrului a. a) Scriei n limbajul Pascal definiia complet a subprogramului divizor. (4p.) b) Fiierul text date.in conine pe prima linie un numr natural nenul n (n100), iar pe a doua linie n numere naturale mai mari dect 1, separate prin cte un spaiu, fiecare numr avnd maximum 4 cifre. Scriei un program Pascal care citete toate numerele din fiierul text date.in i afieaz pe ecran suma obinut adunnd, pentru fiecare dintre cele n numere citite de pe a doua linie din fiier, cel mai mic divizor prim. Se vor utiliza apeluri utile ale subprogramului divizor. 3. Exemplu: dac fiierul date.in are coninutul alturat, se va afia 20 (20=2+5+2+7+2+2). (6p.) 6 16 25 6 77 10 4 4. Se consider expresia E(x)=a 0 X n + a 1 X n-1 + a 2 X n-2 +...+ a n-1 X +a n . Scriei un program Pascal care citete de la tastatur un numr natural n (n9), cele n+1 numere ntregi a 0 , a 1 , a 2 ,, a n-1 , a n , apoi o valoare ntreag x (-9x9). Programul calculeaz i apoi afieaz pe ecran valoarea expresiei E(x).
(10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 052
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking, se genereaz n ordine lexicografic toate anagramele cuvntului caiet (a anagrama nseamn a schimba ordinea literelor unui cuvnt pentru a obine un alt cuvnt). Cte cuvinte care ncep cu litera a vor fi generate? (4p.) a. 4 b. 12 c. 20 d. 24
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(4)? Dar f(20)? (6p.) function f(n:word):longint; begin if n=0 then f:=0 else f:=n*n+f(n-1) end; Subprogramul dist primete prin intermediul parametrului a un numr natural cu maximum 8 cifre i returneaz 1 dac cifrele numrului a au aceeai paritate (sunt toate pare sau toate impare), altfel returneaz 0. a) Scriei definiia complet a subprogramului dist. (4p.) b) Fiierul text date.in conine pe prima linie un numr natural nenul n (n100), iar pe a doua linie n numere naturale, separate prin cte un spaiu, fiecare numr avnd maximum 8 cifre. Scriei un program Pascal care citete numerele din fiier i afieaz pe ecran, desprite prin cte un spaiu, numerele de pe a doua linie a fiierului text date.in, ce au toate cifrele cu aceeai paritate, folosind apeluri utile ale subprogramului dist. n cazul n care nu exist niciun astfel de numr se va afia, pe ecran, valoarea -1. 3. Exemplu: dac fiierul date.in are coninutul alturat, atunci se vor afia numerele: 1775 333 (nu neaprat n aceast ordine) (6p.) 6 16 1775 333 242477 123 55566 4. Scriei un program Pascal care citete de la tastatur un numr natural nenul n (n100) i apoi n numere naturale, de maximum 4 cifre fiecare, reprezentnd elementele unui tablou unidimensional. Programul afieaz mesajul Da n cazul n care elementele tabloului pot fi rearanjate astfel nct s formeze un ir strict cresctor, iar n caz contrar afieaz mesajul Nu. Exemplu: dac n=6 i tabloul unidimensional are coninutul alturat, atunci se va afia Da. (10p.) 54 162 2 18 486 6
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 053
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Subprogramul f realizeaz interschimbarea valorilor a dou variabile ntregi transmise prin intermediul parametrilor x i y. Care este antetul corect al subprogramului f? (4p.) a. procedure f(var x,y:integer); b. function f(x,y :integer):integer ; c. procedure f(x:integer;var y:integer); d. procedure f(var x:integer;y:integer);
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(2138)? Dar f(513)? (6p.) function f(n:word):integer; begin if n=0 then f:=0 else if n mod 2=0 then f:=n mod 10+f(n div 10) else f:=f(n div 10) end; Se consider subprogramul cmmdc, care primete prin intermediul a doi parametri, a i b, dou numere naturale nenule, cu maximum 8 cifre fiecare, i returneaz cel mai mare divizor comun al valorilor parametrilor a i b. a) Scriei numai antetul subprogramului cmmdc. (4p.) b) Fiierul text date.in conine pe prima linie un numr natural nenul n (n100), iar pe a doua linie un ir format din n numere naturale nenule, separate prin cte un spaiu, fiecare numr avnd maximum 8 cifre. Scriei un program Pascal care citete toate numerele din fiierul text date.in i afieaz pe ecran numrul perechilor de elemente aflate pe poziii consecutive n irul format cu elementele situate pe a doua linie a fiierului, care sunt prime ntre ele, folosind apeluri utile ale subprogramului cmmdc. 3. Exemplu: dac fiierul date.in are coninutul alturat, se va afia 4 pentru c pechile (16,25), (12,7), (7,4), (4,5) sunt formate din numere prime intre ele. (6p.) 7 16 25 15 12 7 4 5 4. Scriei un program Pascal care citete de la tastatur un numr natural nenul n (n<=100), apoi un ir de n numere naturale cu cel mult 4 cifre fiecare, i afieaz pe ecran irul i cele n-1 iruri ce se pot obine prin permutrile circulare, ctre stnga, ale elementelor irului. Fiecare ir se afieaz pe cte o linie, elementele irului fiind separate prin cte un spaiu. Exemplu: dac n=4 , iar irul are coninutul alturat, atunci se vor afia irurile: 10 20 30 49 20 30 49 10 30 49 10 20 49 10 20 30 (10p.) 10 20 30 49
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 054
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking se genereaz n ordine lexicografic toate anagramele cuvntului caiet (a anagrama nseamn a schimba ordinea literelor unui cuvnt pentru a obine un alt cuvnt). Care este a asea soluie? (4p.) a. actie b. catei c. actei d. catie
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(97,2)? Dar f(175,2)? (6p.) function f(n,x:integer):integer; begin if n<=1 then f:=0 else if x<=n div 2 then if n mod x=0 then f:=0 else f:=f(n,x+1) else f:=1 end; 3. Se consider subprogramul pal, care primete prin intermediul primului parametru, a, un numr natural, cu minimum 2 cifre i maximum 8 cifre, i furnizeaz prin intermediul celui de-al doilea parametru, b, cel mai apropiat numr de valoarea lui a, care este palindrom. n cazul n care exist dou astfel de numere, subprogramul va returna numrul mai mic. Un numr natural x este palindrom dac este egal cu numrul obinut prin scrierea cifrelor lui x n ordine invers. Exemplu: dac a=16, atunci valoarea returnat este 11; dac a=128, valoarea returnat este 121, iar dac a=33, atunci se returneaz 33. a) Scriei definitia complet a subprogramului pal. (4p.) b) Fiierul text date.in conine pe prima linie un numr natural nenul n (n100), iar pe a doua linie n numere naturale nenule, separate prin cte un spaiu, fiecare numr avnd minimum 2 cifre i maximum 8 cifre. Scriei programul Pascal care citete toate numerele din fiierul text date.in i afieaz pe ecran desprite prin cte un spaiu, pentru fiecare dintre cele n numere, cel mai apropiat numr palindrom, folosind apeluri utile ale subprogramului pal.
Exemplu: dac fiierul date.in are coninutul alturat, atunci se vor afia numerele: 11 1771 333 191 (6p.) 4 16 1775 333 190 Scriei un program Pascal care citete de la tastatur un numr natural nenul n (n<=100), i apoi cele n numere naturale nenule, de maximum 4 cifre, reprezentnd elementele unui tablou unidimensional v (cu indici de la 1 la n) i afieaz cte dintre elementele v i (2in-1) sunt egale cu suma celor dou elemente vecine. n cazul n care nu exist niciun astfel de element n tabloul v, se va afia valoarea 0. 4. Exemplu: dac n=7 i tabloul unidimensional v are coninutul alturat, atunci se va afia valoarea 2 (deoarece 25=10+15, 45=15+30). (10p.) 10 25 15 45 30 2 1
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 055
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. Utiliznd metoda backtracking se genereaz toate matricele ptratice de ordinul 4 ale cror elemente aparin mulimii {0,1}, cu proprietatea c pe fiecare linie i pe fiecare coloan exist o singur valoare 1. Primele 4 soluii generate sunt, n aceast ordine: 1. 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 Care este a opta soluie? (4p.) a. 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 b. 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1 c. 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 1 d. 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 1
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(5)? Dar f(40)? (6p.) function f(n:word):integer; begin if n>20 then f:=0 else f:=5+f(n+5) end; 3. Se consider subprogramul cifre, cu doi parametri, a i b, care primete prin intermediul primului parametru, a, un numr natural cu maximum 8 cifre nenule i returneaz, prin intermediul celui de-al doilea parametrul b, cel mai mic numr care se poate forma cu toate cifrele lui a. a) Scriei definitia complet a subprogramului cifre. (4p.) b) Se consider fiierul text date.in ce conine pe prima linie un numr natural nenul n (n100), iar pe a doua linie n numere naturale, separate prin cte un spaiu, fiecare numr avnd maximum 8 cifre nenule. Scriei un program Pascal care citete toate numerele din fiierul text date.in i afieaz pe ecran, desprite prin cte un spaiu, numerele situate pe a doua linie a fiierului, formate numai din cifre ordonate cresctor, folosind apeluri utile ale subprogramului cifre. n cazul n care nu exist niciun astfel de numr se va afia valoarea 0.
Exemplu: dac fiierul date.in are coninutul alturat, atunci se vor afia numerele: 16 333 269 (6p.) 6 16 175 333 242477 321 269 Scriei un program Pascal care citete de la tastatur un numr natural nenul n(n100) i 2*n numere naturale de maximum 3 cifre; primele n reprezint elementele tabloului unidimensional a, iar urmtoarele n elementele tabloului unidimensional b; fiecare tablou are elementele numerotate ncepnd de la 1. Programul construiete n memorie i afieaz pe ecran, separate prin cte un spaiu, cele n elemente ale unui tablou unidimensional c, n care orice element c i (1in) se obine conform definiiei urmtoare: a i concatenat cu b i , dac a i < b i
c i = b i concatenat cu a i , altfel
4. Exemplu: dac n=3 i tablourile a i b au coninutul alturat, atunci coninutul tabloului c este urmtorul: 112 123234 15345 (10p.) a : (12, 123, 345) b: (1, 234, 15)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 056
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz toate numerele naturale cu exact 2 cifre nenule. Cte numere se vor genera n total? (4p.) a. 100 b. 81 c. 90 d. 9
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(1)? Dar f(20)? (6p.) function f(n:integer):integer; begin if n=0 then f:=0 else f:=1+f(n div 2) end; 3. Fiierul text numere.txt conine, pe o singur linie, cel mult 1000 de numere naturale nenule de cel mult patru cifre fiecare, numerele fiind separate prin cte un spaiu. Scriei un program Pascal care citete toate numerele din fiierul numere.txt, creeaz fiierul text pare.txt i scrie pe prima lui linie, separate prin cte un spaiu, toate numerele pare citite, n ordinea n care acestea apar n fiierul numere.txt. Dac fiierul numere.txt nu conine niciun numr par, atunci n fiierul pare.txt se va scrie mesajul nu exista. Exemplu: numere.txt pare.txt 2 3 1 4 7 2 5 8 6 2 4 2 8 6 (10p.) 4. Se consider subprogramul numar, cu doi parametri, x i nrp, care: primete prin intermediul parametrului, x, un numr natural nenul de cel mult 4 cifre; furnizeaz prin intermediul parametrului nrp numrul de numere prime mai mici sau egale cu x. a) Scriei numai antetul subprogramului numar. (4p.) b) Scriei programul Pascal care citete de la tastatur dou numere naturale nenule de cel mult 4 cifre, a i b, i prin apeluri utile al subprogramului numar, se verific dac intervalul determinat de a i b conine cel puin un numr prim. Programul va afia pe ecran n caz afirmativ mesajul DA, iar n caz contrar mesajul NU. Prin intervalul determinat de a i b se nelege intervalul [a,b] dac a<b i [b,a] n caz contrar. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 057
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera cuvintele de cte patru litere distincte din mulimea {d,a,n,s}. tiind c primul cuvnt generat este dans, iar al doilea este dasn, care va fi al treilea cuvnt obinut? (4p.) a. dnas b. dsan c. dnsa d. dsna
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce se va afia la apelul f(38);? (6p.) procedure f(x:integer); begin if x<>0 then begin f(x div 3); write(x mod 3 + 1) end end; 3. Fiierul text INTRARE.TXT conine pe prima linie o valoare natural n (1<n<100), iar pe a doua linie, separate prin cte un spaiu, n numere naturale distincte, cu cel mult patru cifre. Scriei un program Pascal care creeaz fiierul text IESIRE.TXT i scrie n el, pe prima linie, separate prin spaiu, toate valorile obinute ca sum de dou elemente distincte aflate pe linia a doua n fiierul INTRARE.TXT. Exemplu: dac fiierul INTRARE.TXT are urmtorul coninut: 4 1 4 3 2 atunci fiierul IESIRE.TXT va conine numerele: 5 4 3 7 6 5 (nu neaprat n aceast ordine) (10p.) 4. Se consider subprogramul multiplu, cu doi parametri, care: primete prin intermediul parametrilor a i k dou numere ntregi de cel mult 4 cifre; returneaz cel mai mic multiplu al lui k mai mare sau egal cu a. a) Scriei numai antetul funciei multiplu. (4p.) b) Scriei declarrile de date i programul principal Pascal care citete de la tastatur trei numere naturale nenule x, y, z, de cel mult 4 cifre fiecare, (xy), i care, prin apeluri utile ale subprogramului multiplu, verific dac intervalul [x,y] conine cel puin un multiplu al lui z. Programul va afia pe ecran, n caz afirmativ, mesajul DA, iar n caz contrar mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 058
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele de cte trei litere distincte din mulimea {d,a,n,s}. Care este cel de-al treilea cuvnt obinut? (4p.) a. ads b. abs c. dan d. and
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(88)? Dar f(3713)? (6p.) function f(n:integer):integer; begin if n=0 then f:=0 else f:=f(n div 10)*10+1 end; 3. Fiierul text bac.txt conine, pe o singur linie, cel puin 2 i cel mult 100 de numere naturale nenule distincte de cel mult 4 cifre fiecare, numerele fiind separate prin cte un spaiu. Scriei un program Pascal care citete numerele din fiier i scrie pe ecran, n ordine cresctoare, separate prin spaiu, cele mai mici dou numere dintre cele citite. Exemplu: dac fiierul bac.txt conine numerele: 1017 48 310 5710 162 atunci se va afia: 48 162 (10p.) 4. Se consider subprogramul divizor, cu doi parametri, a i d , care: primete prin intermediul parametrului a un numr natural strict mai mare dect 1, de cel mult 4 cifre; furnizeaz prin intermediul parametrului d cel mai mare divizor al lui a strict mai mic dect a. a) Scriei numai antetul subprogramului divizor. (4p.) b) Scriei declarrile de date i programul principal Pascal care citete de la tastatur un numr natural strict mai mare dect 1, x, de cel mult 4 cifre i, prin apeluri utile ale subprogramului divizor, verific dac x este numr prim. Programul va afia pe ecran n caz afirmativ mesajul DA, iar n caz contrar mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 059
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele care conin toate literele din mulimea {a,m,i,c}, astfel nct fiecare liter s apar exact o dat ntr-un cuvnt. Cte soluii sunt generate dup cuvntul amic i nainte de cuvntul cami? (4p.) a. 6 b. 4 c. 1 d. 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(10)? Dar f(8261)? (6p.) function f(a:integer):integer; begin if a<10 then f:=7 else f:=f(a div 100)*10+8 end; 3. Fiierul text bac.txt conine, pe o singur linie, cel puin 2 i cel mult 100 de numere naturale nenule distincte de cel mult 4 cifre fiecare, numerele fiind separate prin cte un spaiu. Scriei un program Pascal care citete toate numerele din fiier i scrie pe ecran, ultima cifr a produsului celor mai mari dou numere dintre cele citite. Exemplu: dac fiierul bac.txt conine numerele: 1017 48 312 5742 162 atunci se va afia: 4 (ultima cifr a produsului numerelor 1017, 5742) (10p.) 4. Se consider subprogramul divizor, cu doi parametri, a i d , care: primete prin intermediul parametrului, a, un numr natural nenul de cel mult 4 cifre, strict mai mare ca 1; furnizeaz prin intermediul parametrului d, cel mai mic divizor al lui a strict mai mare dect 1. a) Scriei numai antetul subprogramului divizor. (4p.) b) Scriei declarrile de date i programul principal Pascal care citete de la tastatur un numr natural x (x>1), i, prin apeluri utile ale subprogramului divizor, verific dac x este numr prim. Programul va afia pe ecran, n caz afirmativ, mesajul DA, iar n caz contrar mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 060
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se utilizeaz metoda backtracking pentru a genera toate cuvintele care conin toate literele din mulimea {i,n,f,o}, astfel nct fiecare liter s apar exact o dat ntr-un cuvnt; tiind c primul cuvnt generat este info, iar al doilea este inof, care este ultimul cuvnt obinut? (4p.) a. ofni b. oinf c. onif d. ofin
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(5)? Dar f(23)? (6p.) function f(x:integer):integer; begin if x mod 2=0 then f:=0 else f:=1+f(x div 2) end; 3. Fiierul text bac.txt conine, pe prima sa linie, 100 de numere naturale de cel mult 4 cifre fiecare, numerele fiind ordonate cresctor i separate prin cte un spaiu, iar pe a doua linie un singur numr natural x. Scriei un program Pascal care citete toate numerele din fiier i verific dac x se afl n irul celor 100 de numere aflate pe prima linie a fiierului. n caz afirmativ, se va afia pe ecran mesajul DA, altfel se va afia mesajul NU. Exemple: dac fiierul bac.txt conine: 17 38 40 45 50 51 52 53 54 55 ... 145 52 atunci se va afia: DA ; dac fiierul bac.txt conine: 2 11 15 16 20 25 30 35 40 ... 495 33 atunci se va afia: NU. (10p.) 4. Se consider subprogramul radical, cu doi parametri, a i x ,care: primete prin intermediul parametrului a, un numr natural nenul de cel mult 4 cifre; furnizeaz prin intermediul parametrului x cel mai mare numr natural cu proprietatea c x 2 este mai mic sau egal cu a; de exemplu, dac a=20, subprogramul va furniza prin x valoarea 4. a) Scriei numai antetul subprogramului radical. (4p.) b) Scriei programul Pascal care citete de la tastatur un numr natural nenul de cel mult 4 cifre, n, i prin apeluri utile ale subprogramului radical, verific dac n este ptrat perfect. Programul va afia pe ecran n caz afirmativ mesajul DA, iar n caz contrar mesajul NU. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 061
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz, utiliznd metoda backtracking, toate modalitile de repartizare a n teme de proiecte, numerotate de la 1 la n, pentru m elevi (n<m), numerotai de la 1 la m, astfel nct fiecare tem s fie rezolvat de cel puin un elev. Care este numrul total de soluii generate pentru m=3 i n=2, dac primele 3 soluii generate sunt, n ordine, 1 1 2, 1 2 1, 1 2 2? O soluie este scris sub forma t 1 , t 2 , ...,t m , unde t i reprezint tema repartizat elevului i (1im, 1t i n). (4p.) a. 12 b. 6 c. 4 d. 8
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(4)? Dar f(456)? (6p.) function f(x:integer):integer; begin if x>0 then f:= f(x-1)+1 else f:=0 end; 3. Subprogramul cifra primete prin parametrul x un numr real nenul pozitiv i furnizeaz prin parametrul y valoarea cifrei unitilor prii ntregi a lui x. Exemplu: dac x=34.567, atunci valoarea furnizat de subprogram este 4. a) Scriei definiia complet a subprogramului cifra. (10p.) b) Scriei un program Pascal care citete de la tastatur dou numere reale cu cel mult dou zecimale, numere reprezentnd mediile semestriale obinute de un elev. Programul stabilete, folosind apeluri utile ale subprogramului cifra, dac cele dou medii citite se afl n aceeai categorie de medii sau nu. Precizm c orice medie, n funcie de intervalul n care se ncadreaz, face parte din una dintre categoriile: [3,3.99], [4,4.99], [5,5.99], [6,6.99], [7,7.99], [8,8.99] sau [9,10]. n cazul n care ambele medii fac parte din aceeai categorie, programul va afia mesajul Da, altfel va afia mesajul Nu. (6p.) 4. Scriei un program Pascal care creeaz fiierul text SIR.TXT i scrie n el, n ordine alfabetic, toate irurile formate din dou caractere distincte, litere mici ale alfabetului englez. Fiecare ir va fi scris pe cte o linie a fiierului. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 062
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Utiliznd metoda backtracking pentru afiarea tuturor modalitilor de descompunere a unui numr natural nenul ca o sum de numere naturale nenule, pentru n=3, se obin n ordine soluiile: 1+1+1; 1+2; 3. Folosind aceeai metod pentru n=4, care este soluia generat imediat dup 1+1+2? (4p.) a. 1+3 b. 1+2+1 c. 1+1+1+1 d. 2+2
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Considerm subprogramul f definit alturat. Ce se afieaz pe ecran la apelul f(4962)? (6p.)
procedure f(n:integer); var c:byte; begin if n<>0 then begin c:=n mod 10; write(c); f(n div 10); write(c) end end; 3. Scriei definiia complet a unui subprogram fibo cu doi parametri, n i v, care primete prin intermediul parametrului n un numr natural (1<n<30) i returneaz prin intermediul parametrului v un tablou unidimensional care conine primii n termeni impari ai irului lui Fibonacci (amintim c irul lui Fibonacci este: 1,1,2,3,5,8,13,21,). (10p.) 4. a) Fiierul date.in conine un ir de cel mult 10000 numere naturale (printre care cel puin un numr par i cel puin un numr impar), cu cel mult dou cifre fiecare, separate prin cte un spaiu. Scriei un program Pascal care citete numerele din fiierul date.in i scrie n fiierul text date.out valorile distincte citite, separate prin cte un spaiu, respectndu-se regula: pe prima linie vor fi scrise numerele impare n ordine cresctoare, iar pe linia a doua numerele pare, n ordine descresctoare. Alegei o metod eficient din punctul de vedere al timpului de executare. Exemplu: dac pe prima linie a fiierului date.in se afl numerele: 75 12 3 3 18 75 1 3 atunci fiierul date.out va conine: 1 3 75 18 12 (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 063
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz, prin metoda backtracking, toate partiiile mulimii A={1,2} obinndu-se urmtoarele soluii: {1}{2}; {1,2}. Se observ c dintre acestea, prima soluie e alctuit din exact dou submulimi. Dac se folosete aceeai metod pentru a genera partiiile mulimii {1,2,3} stabilii cte dintre soluiile generate vor fi alctuite din exact dou submulimi. (4p.) a. 2 b. 1 c. 3 d. 4
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(2)? Dar f(10)? (6p.) function f(i:integer):integer; begin if i>=1 then f:= f(i-1)+i else f:=0 end; 3. Subprogramul verif primete prin singurul su parametru, x, un numr natural nenul cu cel mult 9 cifre i returneaz valoarea 1 dac numrul conine cel puin o secven de 3 cifre impare alturate i 0 n caz contrar. Exemplu: dac x=7325972 se va returna valoarea 1. a) Scriei definiia complet a subprogramului verif. (6p.) b) Scriei un program Pascal care citete de la tastatur un numr natural nenul n cu exact 6 cifre i, folosind apeluri utile ale subprogramului verif, verific dac n are primele trei cifre impare. Programul afieaz pe ecran mesajul Da n caz afirmativ i mesajul Nu n caz contrar. Exemple: dac se citete n=132567 se va afia mesajul Nu, iar dac n=979243, se va afia mesajul Da.. (4p.) 4. Pentru un ir de numere naturale, numim nod al irului un termen din ir care are doi vecini, termenul precedent i termenul urmtor din ir, i valoarea termenului respectiv este strict mai mic dect suma valorilor celor doi vecini ai si. Fiierul text date.in conine un ir de cel puin dou i cel mult 1000 de numere naturale avnd maximum 6 cifre fiecare, numere separate prin cte un spaiu. Scriei un program Pascal care citete toate numerele din fiier i afieaz numrul de noduri ale irului citit. Exemplu: dac fiierul date.in are urmtorul coninut: 51 20 100 43 43 618 5000 31 2020 114 116 4 atunci pe ecran se afieaz 6 (cele ase numere subliniate reprezint noduri ale irului). (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 064
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz, utiliznd metoda backtracking, toate modalitile de aezare a n ture pe o tabl de ah cu n linii i n coloane, astfel nct s nu existe pe tabl ture care se atac ntre ele (dou ture se atac reciproc dac se afl pe aceeai linie sau pe aceeai coloan). O soluie generat are forma (c 1 ,c 2 ,,c n ), unde c i reprezint coloana pe care se afl tura de pe linia i. Dac primele 2 soluii generate pentru n=5 sunt (1,2,3,4,5) i (1,2,3,5,4), care este prima soluie generat n care primul numr este 4? (4p.) a. (4, 1, 3, 2, 5) b. (4, 2, 5, 1, 3) c. (4, 3, 5, 3, 1) d. (4, 1, 2, 3, 5)
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce se afieaz pe ecran la apelul f(9,9);? (6p.)
procedure f(i,j:integer); begin if j>0 then f(i,j-1); writeln(i,*,j,=,i*j) end; 3. Subprogramul diviz, cu doi parametri, primete prin intermediul parametrului n un numr natural nenul (2n200), iar prin intermediul parametrului a, un tablou unidimensional care conine n valori naturale nenule, fiecare dintre acestea avnd cel mult patru cifre. Elementele tabloului sunt numerotate de la 1 la n. Subprogramul returneaz o valoare egal cu numrul de perechi (a i ,a j ), 1i<jn, n care a i este divizor al lui a j , sau a j este divizor al lui a i . Scriei definiia complet a subprogramului diviz, n limbajul Pascal. Exemplu: pentru n=5 i a=(4,8,3,9,4) subprogramul returneaz valoarea 4. (10p.) 4. Fiierul text date.in conine pe prima linie, separate prin cte un spaiu, cel mult 1000 de numere naturale, fiecare dintre ele avnd maximum 9 cifre. a) Scriei un program Pascal care citete numerele din fiierul date.txt, determin i afieaz pe ecran numrul de elemente ale celei mai lungi secvene ordonate strict descresctor, formate din valori citite consecutiv din fiier. Alegei o metod de rezolvare eficient din punctul de vedere al timpului de executare.
Exemplu: dac fiierul date.in conine 5 2 19 4 3 6 3 2 1 0 8 (6p.) pe ecran se afieaz: 5 b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). ( 4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 065
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz, utiliznd metoda backtracking, toate modalitile de aezare a numerelor naturale de la 1 la 5, astfel nct oricare dou numere de aceeai paritate s nu se afle pe poziii alturate. Dac primele 3 soluii generate sunt, n ordine: (1,2,3,4,5), (1,2,5,4,3) i (1,4,3,5,2) care este prima soluie generat care ncepe cu 3? (4p.) a. (3, 2, 1, 4, 5) b. (3, 2, 5, 4, 1) c. (3, 4, 1, 2, 5) d. (3, 4, 5, 2, 1)
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul recursiv alturat este definit incomplet. Care este expresia cu care se pot nlocui punctele de suspensie astfel nct subprogramul s returneze cel mai mare divizor comun al numerelor primite prin intermediul parametrilor a i b. (6p.) function f(a,b:word):integer; begin if ... then f:=a else if a>b then f:=f(a-b,b) else f:=f(a,b-a) end; 3. Subprogramul sfx primete prin singurul su parametru x un numr natural din intervalul [100,2000000000] i returneaz valoarea 1 dac ultimele trei cifre ale numrului sunt n ordine strict descresctoare sau valoarea 0 n caz contrar. Exemplu: dac x=24973 se va returna valoarea 1. a) Scriei definiia complet a subprogramului sfx. (5p.)
b) Scriei un program Pascal care citete de la tastatur un numr natural n format din exact 6 cifre i verific, utiliznd apeluri ale subprogramului sfx, dac acest numr are toate cifrele n ordine strict descresctoare. Programul va afia mesajul Da n caz afirmativ i mesajul Nu n caz contrar. Exemplu: dac n=756543 se va afia Nu, iar dac n=976532 se va afia Da. (5p.) 4. Pentru un ir de numere naturale, numim pol al irului un termen din ir care are doi vecini, termenul precedent i termenul urmtor din ir, i valoarea termenului respectiv este strict mai mare dect valoarea fiecruia dintre cei doi vecini ai si. a) Fiierul text date.in conine un ir de cel puin dou i mult 10000 de numere naturale avnd maximum 6 cifre fiecare, numere separate prin cte un spaiu. Scriei un program Pascal care citete toate numerele din fiier i afieaz numrul de poli ai irului citit, folosind un algoritm eficient din punctul de vedere al memoriei utilizate. (6p.) Exemplu: dac fiierul date.in are urmtorul coninut: 51 20 100 43 43 618 5000 31 2020 114 116 4 atunci pe ecran se afieaz 4 (cele patru numere subliniate reprezint poli ai irului) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 066
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv definit alturat. Ce se va afia n urma apelului bac(5);? (4p.) procedure bac(x:integer); begin if x<>0 then begin bac(x-1); write(x) end end; a. 55555 b. 54321 c. 12345 d. 11111
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se genereaz n ordine cresctoare, toate numerele naturale de 5 cifre distincte, care se pot forma cu cifrele 2,3,4,5 i 6. S se precizeze numrul generat imediat naintea i numrul generat imediat dup secvena urmtoare : 34256, 34265, 34526. (6p.) 3. S se scrie n limbajul Pascal definiia complet a subprogramului calcul, care primete prin intermediul parametrului n un numr natural nenul (1n10000), iar prin intermediul parametrului a, un tablou unidimensional care conine n valori naturale, fiecare dintre aceste valori avnd cel mult 9 cifre. Subprogramul returneaz cel mai mare divizor comun al elementelor tabloului a. (10p.)
Exemplu: n urma apelului, pentru n=5 i tabloul unidimensional (12,36,48,6,60), se va returna 6. 4. Fiierele text A.TXT i B.TXT conin cel mult 10000 de numere naturale cu cel mult 9 cifre fiecare, scrise fiecare pe cte o linie. a) Scriei un program Pascal care citete numerele din cele dou fiiere i, printr-o metod eficient din punct de vedere al timpului de executare i al spaiului de memorie utilizat, afieaz pe ecran cte dintre numerele din fiierul A.TXT sunt strict mai mici dect toate numerele memorate n fiierul B.TXT. (6p.)
atunci programul va afia valoarea 4, deoarece 41111, 11111, 51111, 31111 sunt mai mici dect toate elementele din fiierul B.TXT.
b) Descriei succint, n limbaj natural, metoda utilizat la punctul a, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 067
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv definit alturat. Ce se va afia n urma apelului bac(5);? (4p.) procedure bac(x:integer); begin if x<>0 then begin write(x); bac(x-1); end end; a. 54321 b. 12345 c. 11111 d. 55555
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se genereaz n ordine cresctoare, toate numerele naturale de 5 cifre distincte, care se pot forma cu cifrele 5,6,7,8 i 9. S se precizeze numrul generat imediat naintea i numrul generat imediat dup secvena urmtoare : 67589, 67598, 67859. (6p.) 3. S se scrie n limbajul Pascal definiia complet a subprogramului calcul, care primete prin intermediul parametrului n un numr natural nenul (1n10000), iar prin intermediul parametrului a un tablou unidimensional care conine n valori naturale, fiecare dintre aceste valori avnd cel mult 9 cifre. Subprogramul returneaz numrul de numere prime din tablou. (10p.)
Exemplu: pentru n=5 i tabloul unidimensional (12,37,43,6,71) n urma apelului se va returna 3. 4. Fiierul text NUMERE.TXT conine pe prima linie un numr natural n (1n10000) i pe a doua linie un ir cresctor de n numere naturale, fiecare avnd cel mult 9 cifre. Numerele de pe a doua linie sunt separate prin cte un spaiu. a) Scriei un program Pascal care utiliznd o metod eficient din punct de vedere al timpului de executare i al spaiului de memorie, afieaz pe ecran elementele distincte ale irului aflat pe a doua linie a fiierului. (6p.)
atunci programul va afia pe ecran 111 2111 4111 71111.
b) Descriei succint, n limbaj natural, metoda utilizat la punctul a), justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 068
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv definit alturat. Cte apeluri ale funciei bac au loc pentru x=5? Se va numra inclusiv apelul din funcia principal. (4p.) procedure bac(x:integer); begin if x<>0 then begin bac(x-1); write(x) end end; a. 5 b. 6 c. 4 d. 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se utilizeaz metoda backtracking pentru a genera toate submulimile cu p elemente ale unei mulimi cu m elemente. Dac m=7 i p=1, scriei care este numrul de submulimi generate. Dar dac m=7 i p=4? (6p.) 3. S se scrie definiia complet a subprogramului calcul, care primete prin intermediul celor doi parametri ai si dou numere ntregi, n i k (1n100000000 i 1k9), i returneaz cifra de rang k a numrului n. Rangul unei cifre este numrul su de ordine, numerotnd cifrele de la dreapta la stnga; cifra unitilor avnd rangul 1. Dac numrul k este mai mare dect numrul de cifre ale lui n, atunci funcia returneaz valoarea -1. Exemplu: dac n=9243 i k=3, n urma apelului se va returna 2. (10p.) 4. Fiierul text SIR.TXT conine pe prima linie un numr natural n (1n10000) i pe a doua linie, separate prin spaii, un ir cresctor de n numere naturale cu cel mult 9 cifre fiecare. Numim platou ntr-un ir de valori o secven de elemente identice situate pe poziii alturate. Lungimea unui platou este egal cu numrul de elemente care l formeaz. a) Scriei un program Pascal care citete valorile din fiier i, printr-o metod eficient din punct de vedere al timpului de executare i al spaiului de memorie utilizat afieaz pe ecran, separate printr-un spaiu, lungimea maxim a unui platou, precum i valoarea care formeaz platoul. n cazul n care sunt mai multe platouri de aceeai lungime se va afia valoarea cea mai mare care formeaz unul dintre aceste platouri. (6p.)
Exemplu: dac fiierul SIR.TXT are coninutul alturat, 10 11 211 211 211 328 400 400 1201 1201 1201 atunci programul va afia pe ecran 3 1201.
b) Descriei succint, n limbaj natural, metoda utilizat la punctul a, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 069
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv definit alturat. Cte apeluri ale funciei bac au loc pentru x=5? Se va numra inclusiv apelul din funcia principal. (4p.) procedure bac(x:integer); begin if x>0 then begin bac(x-2); write(x) end end; a. 4 b. 3 c. 6 d. 5
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele de cte trei litere distincte din mulimea {v,a,l,s}. Care este primul cuvnt generat? Dar cel de- al treilea ? (6p.) 3. S se scrie n limbajul Pascal definiia complet a subprogramului calcul, care primete prin intermediul parametrului ntreg n, un numr natural de cel mult 9 cifre i returneaz valoarea absolut a diferenei dintre numrul de cifre pare i numrul de cifre impare coninute de n. (10p.) Exemplu: dac n=92465, n urma apelului se va returna valoarea 1. 4. Fiierul text NUMERE.TXT conine pe prima linie un numr natural n (1n10000) i pe a doua linie, n numere naturale cu cel mult 9 cifre fiecare. Aceste numere sunt dispuse n ordine cresctoare i separate ntre ele prin cte un spaiu. a) Scriei un program Pascal care citete valorile din fiier i, printr-o metod eficient din punct de vedere al timpului de executare, afieaz pe ecran, separate prin cte un spaiu, n ordine cresctoare, numerele pare de pe a doua linie a fiierului, urmate de cele impare n ordine descresctoare. (6p.) Exemplu: dac fiierul NUMERE.TXT are coninutul alturat 6 212 412 5111 71113 81112 101112 atunci programul va afia pe ecran 212 412 81112 101112 71113 5111
b) Descriei succint, n limbaj natural, metoda utilizat la punctul a, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 070
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv definit alturat. Cte apeluri ale funciei bac au loc pentru x=4? Se va numra inclusiv apelul din funcia principal. (4p.) procedure bac(x:integer); begin if x>0 then begin write(x); bac(x-2); end end; a. 6 b. 4 c. 5 d. 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se utilizeaz metoda backtracking pentru a genera n ordine lexicografic toate cuvintele de cte trei litere distincte din mulimea {d,a,n,s}. Care este primul cuvnt generat? Dar cel de- al treilea ? (6p.) 3. S se scrie n limbajul Pascal definiia complet a subprogramului calcul, care primete prin parametrul n un numr natural nenul de cel mult 9 cifre i furnizeaz prin parametrul x numrul obinut prin alturarea cifrelor pare ale lui n considerate de la dreapta ctre stnga. Dac n nu conine nicio cifr par, x primete valoarea 0. (10p.) Exemplu: n urma apelului calcul(9278,x), x primete valoarea 82. 4. Fiierul text NUMERE.TXT conine pe prima linie un numr natural n (1n10000) i pe a doua linie, n numere naturale cu cel mult 9 cifre fiecare, numere nu neaprat distincte. Aceste numere sunt dispuse n ordine cresctoare i separate ntre ele prin cte un spaiu. a) Scriei un program Pascal care citete valorile din fiier i, printr-o metod eficient din punct de vedere al timpului de executare i al spaiului de memorie utilizat, afieaz pe ecran, cu un spaiu ntre ele, valoarea care apare de cele mai multe ori n fiier i de cte ori apare ea. Dac exist mai multe valori care apar de un numr maxim de ori, se va afia cea mai mic dintre ele. (6p.) Exemplu: dac fiierul NUMERE.TXT are coninutul alturat, 8 711 711 711 11111 11111 11111 191111 231111 atunci programul va afia pe ecran 711 3.
b) Descriei succint, n limbaj natural, metoda utilizat la punctul a, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 071
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz n ordine cresctoare toate numerele de exact 4 cifre care se pot forma cu elementele mulimii {0,1,2,3,4}. Primele 8 soluii generate sunt, n ordine: 1000, 1001, 1002, 1003, 1004, 1010, 1011, 1012. Care sunt primele trei numere ce se vor genera imediat dup numrul 3443? (4p.) a. 4000,4001,4002 b. 3444,4443,4444 c. 3444,4444,4000 d. 3444,4000,4001
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce valoare va avea variabila ntreag x, n urma apelului F(1, x), tiind c, nainte de apel, variabila x are valoarea 0, iar subprogramul F este definit alturat? (6p.) procedure F(i:integer; var x:integer); begin if i <= 10 then begin if i mod 2 = 1 then x := x + 2 else x := x - 1; F(i + 1, x) end end; 3. Un numr natural se numete palindrom dac numrul citit de la stnga la dreapta este egal cu numrul citit de la dreapta la stnga. a) Scriei definiia complet a subprogramului Palindrom care primete prin intermediul parametrului n un numr natural de cel mult nou cifre i returneaz 1 dac acesta este palindrom i 0 n caz contrar. (10p.) b) Fiierul text numere.in conine mai multe numere naturale de cel mult 9 cifre fiecare, numerele fiind desprite prin cte un spaiu. Cel puin unul dintre numere este palindrom. Scriei un program Pascal care citete numerele din fiierul numere.in i, folosind apeluri utile ale funciei Palindrom, determin n mod eficient care este cel mai mare numr palindrom citit. Programul scrie n fiierul text numere.out numrul astfel determinat. Exemplu: dac numere.in conine numerele: 23 565 78687 7887 7865 78687 7887 23 78687 98798 atunci numere.out va conine: 78687 (6p.) c) Descriei succint, n limbaj natural, metoda de rezolvare folosit la punctul b (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 072
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz n ordine cresctoare toate numerele de 4 cifre, cu cifre distincte, astfel nct diferena n valoare absolut dintre prima i ultima, respectiv a doua i a treia cifr este egal cu 2. Primele 11 soluii generate sunt, n ordine: 1023, 1203, 1243, 1423, 1463, 1573, 1643, 1683, 1753, 1793, 1863. Care dintre urmtoarele numere se va genera imediat naintea numrului 9317? (4p.) a. 9247 b. 9357 c. 9207 d. 8976
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce se va afia n urma executrii subprogramului alturat, la apelul F(57);? (6p.) procedure F(x:integer); begin if x<>0 then begin F(x div 2); write(x mod 2) end end; 3. a) Scriei n limbajul Pascal definiia complet a subprogramului Cifre care primete prin parametrii a i b dou numere naturale (0<a<200000000, 0<b<200000000) i returneaz numrul de cifre comune ale celor dou numere. Exemplu: dac a = 123446 i b= 248766 atunci subprogramul va returna 3, iar dac a = 1244 i b = 4456 subprogramul va returna 1. (10p.) b) Fiierul text numere.in conine pe prima linie a sa dou numere naturale, x, cu cel mult nou cifre, i p, cu exact o cifr, iar pe a doua linie cel mult 1000 de numere naturale de cel mult nou cifre fiecare. Scriei programul Pascal care citete numerele din fiierulu numere.in i, apelnd funcia Cifre, scrie n fiierul text numere.out acele numere de pe a doua linie a fiierului numere.in care au exact p cifre comune cu numrul x. Numerele vor fi scrise pe aceeai linie, desprite prin cte un spaiu. (6p.) c) Descriei succint, n limbaj natural, metoda de rezolvare folosit la punctul b (3 4 rnduri) (4p.) Exemplu: numere.in numere.out 345638 3 123 45239 96583 900583 635 78900 45239 900583 635
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 073
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz n ordine cresctoare toate numerele de 4 cifre, cu cifre distincte, astfel nct diferena n valoare absolut dintre ultimele dou cifre ale fiecrui numr generat este egal cu 2. Primele opt soluii generate sunt, n ordine: 1024, 1035, 1042, 1046, 1053, 1057, 1064, 1068. Care dintre urmtoarele numere se va genera imediat dup numrul 8975? (4p.) a. 8979 b. 9013 c. 8957 d. 9024
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce se va afia n urma executrii subprogramului alturat, la apelul F(56);? (6p.) procedure F(x:integer); begin if x<>0 then begin F(x div 2); write (x mod 10) end end; 3. a) Scriei definiia complet a subprogramului Insereaza, cu patru parametri, n, x, k i v, care primete prin intermediul parametrului n un numr natural (0<n<1000), prin intermediul parametrului x un tablou unidimensional cu n elemente, numere reale, numerotate de la 1 la n, prin parametrul k un numr natural reprezentnd o poziie din tablou(1kn), iar prin parametrul v un numr real. Subprogramul va insera valoarea val pe poziia k a tabloului x i furnizeaz tabloul modificat, precum i numrul elementelor acestuia, actualizate. (10p.) b) Fiierul text sir.in conine cel puin dou i cel mult 100 numere naturale de maximum patru cifre fiecare, numerele fiind desprite prin cte un spaiu. Scriei un program Pascal care citete numerele din fiierul sir.in i, folosind apeluri ale subprogramului Insereaza, construiete n memorie un tablou unidimensional care va conine toate numerele din fiierul sir.in, iar ntre fiecare dou numere consecutive din fiier insereaz media lor aritmetic. Programul scrie n fiierul text sir.out elementele tabloului obinut, cu cel mult o zecimal, cte 10 elemente pe fiecare rnd (cu excepia ultimului rnd, care poate s conin mai puine), elementele de pe acelai rnd fiind desprite prin cte un spaiu. (6p.) Exemplu: dac fiierul sir.in conine numerele: 7 5 635 456 0 8 587 atunci, dup executarea programului, fiierul sir.out va conine: 7 6 5 320 635 545.5 456 228 0 4 8 297.5 587 c) Descriei succint, n limbaj natural, metoda de rezolvare folosit la punctul b (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 074
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. ntr-un spectacol sunt prezentate cinci melodii numerotate cu 1, 2, 3, 4 i 5. Utiliznd metoda backtracking, se genereaz toate posibilitile de a le prezenta pe toate, tiind c melodia 2 trebuie prezentat dup melodia 3, nu neaprat pe o poziie consecutiv, iar melodia 5 va fi prezentat tot timpul prima. Cte asemenea posibiliti exist? (4p.) a. 24 b. 6 c. 12 d. 4
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider funcia Suma, definit alturat. Ce valoare are Suma(2)? Dar Suma(8)?(6p.) function Suma(x: byte):integer; begin if x = 1 then Suma:= 0 else if x mod 2 = 0 then Suma:= Suma(x-1)+(x-1)*x else Suma:= Suma(x-1)-(x-1)*x end; 3. Subprogramul Cifra, cu doi parametri, n i x, primete prin intermediul parametrului n un numr natural de cel mult nou cifre i furnizeaz prin parametrul x cea mai mare cifr a numrului transmis prin parametrul n. a) Scriei definiia complet a subprogramului Cifra. (6p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n, n<1000000000, i afieaz pe ecran mesajul Da n cazul n care numrul citit este format doar din cifre aparinnd mulimii {0,1,2,3,4} i afieaz mesajul Nu n caz contrar. (4p.) c) Fiierul text NUMERE.IN conine pe prima linie un numr natural n (0<n<1000), iar pe a doua linie, separate prin cte un spaiu, n numere naturale cu cel mult nou cifre fiecare. Scriei un program Pascal care citete de la tastatur o cifr c, i, folosind apeluri utile ale subprogramului Cifra, determin pentru cte dintre numerele de pe a doua linie a fiierului NUMERE.IN, cifra c reprezint cifra maxim. Programul scrie pe primul rnd al fiierul text NUMERE.OUT mesajul DA dac exist astfel de valori i pe al doilea rnd numrul acestora, iar dac nu exist va scrie n fiier mesajul NU. (10p.) Exemplu: dac cifra citit este 8
NUMERE.IN conine 10 725 3695 423 0 7895 0 100 101 870 568 NUMERE.OUT va conine DA 2
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 075
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Ce valoare are F(2758), pentru funcia F, definit alturat? (4p.) function F(x:byte):integer; begin if x = 0 then F:= 0 else if x mod 10 mod 2=0 then F:=2+F(x div 10) else F:= 10 F(x div 10) end; a. 0 b. 20 c. 12 d. 4
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. n secvena alturat, variabila x memoreaz un tablou unidimensional, iar toate celelalte variabile sunt de tip ntreg. Ce se va afia n urma executrii secvenei dac n=6, iar elementele tabloului sunt: x 1 =10, x 2 =5, x 3 =-6, x 4 =7, x 5 =0, x 6 =-2? (6p.) for i := 1 to n div 2 do begin aux:=x[i]; x[i]:=x[ni+1]; x[n-i+1]:=aux end; for i:= 1 to n do write( x[i], ); 3. Scriei n limbajul Pascal definiia complet a subprogramului Invers cu doi parametri n i x, care primete prin intermediul parametrului n un numr natural de cel mult nou cifre i furnizeaz prin parametrul x numrul obinut prin inversarea ordinii cifrelor sale, ca n exemplu. Exemplu: dac n=78904 atunci, dup apel, x=40987. (10p.) 4. Pentru un ir de numere naturale, numim punct de minim al irului un termen din ir care are doi vecini, termenul precedent i termenul urmtor din ir, i valoarea termenului respectiv este strict mai mic dect valoarea fiecruia dintre cei doi vecini ai si. a) Fiierul text date.in conine un ir de cel puin dou i mult 10000 de numere naturale avnd maximum 6 cifre fiecare, numere separate prin cte un spaiu. Scriei un program Pascal care citete toate numerele din fiier i afieaz numrul de puncte de minim ale irului citit, folosind un algoritm eficient din punctul de vedere al memoriei utilizate. (6p.) Exemplu: dac fiierul date.in are urmtorul coninut: 51 20 100 43 43 618 5000 31 2020 4 atunci pe ecran se afieaz 2 (cele dou numere subliniate reprezint punctele de minim ale irului) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 076
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Dac se utilizeaz metoda backtracking pentru a genera toate permutrile de 4 obiecte i primele 5 permutri generate sunt, n aceast ordine, 4 3 2 1, 4 3 1 2, 4 2 3 1, 4 2 1 3, 4 1 3 2, atunci a 6-a permutare este: (4p.) a. 3 2 1 4 b. 3 4 2 1 c. 1 4 3 2 d. 4 1 2 3
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului sub, scriei ce valoare are sub(3). Dar sub(132764)? (6p.) function sub(n:longint):longint; begin if n<>0 then if n mod 2 <> 0 then sub:=n mod 10*sub(n div 10) else sub:=sub(n div 10) else sub:=1 end; 3. Scriei definiia complet a unui subprogram s, cu trei parametri, n, c, k, care primete prin intermediul parametrului n un numr natural de maximum 9 cifre, prin intermediul parametrului c o cifr i furnizeaz prin intermediul parametrului k numrul de cifre ale lui n care aparin intervalului [c-1,c+1]. Exemplu: pentru n=1233 i c=3, k va avea valoarea 3, iar pentru n=650 i c=3, k va avea valoarea 0. (10p.) 4. Pe prima linie a fiierului BAC.TXT se gsete un numr natural n (0<n<1000), pe linia a doua se gsesc n numere naturale, ordonate cresctor, cu cel mult 4 cifre fiecare, iar pe linia a treia un numr natural a (a<10000). Numerele de pe linia a doua a fiierului sunt separate prin cte un spaiu. S se scrie un program care citete toate numerele din fiier i afieaz pe ecran mesajul DA dac numrul a se afl printre cele n numere de pe linia a doua a fiierului, sau mesajul NU n caz contrar. Exemplu: dac fiierul conine: 7 2 3 3 4 5 8 9 8 atunci se va afia: DA a) Descriei n limbaj natural o metod de rezolvare eficient ca timp de executare. (4p.) b) Scriei programul Pascal corespunztor metodei descrise la punctul a). (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 077
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. La un concurs particip 50 de sportivi mprii n 5 echipe, astfel nct n fiecare echip s fie cte 10 sportivi. Problema determinrii tuturor grupelor de cte 5 sportivi, cte unul din fiecare echip, este similar cu generarea tuturor: (4p.) a. elementelor produsului cartezian AxAxAxAxA, unde A={1,2,,10} b. submulimilor cu 5 elemente ale mulimii {1,2,,10} c. permutrilor mulimii {1,2,3,4,5} d. partiiilor mulimii {1,2,,10}
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului sub, scriei ce valoare are sub(4). Dar sub(132764)? (6p.) function sub(n:longint):integer; begin if n<>0 then if n mod 2<>0 then sub:=n mod 10+sub(n div 10) else sub:=sub(n div 10) else sub:=0 end; 3. Fiierul text numere.in are pe prima linie un numr natural n (0<n<1000) i pe urmtoarea linie n numere reale. Scriei un program Pascal care citete numerele din fiier i afieaz pe ecran media aritmetic a numerelor aflate pe a doua linie a fiierului care au partea ntreag format din cel puin dou cifre. (10p.) 4. a) Scriei doar antetul unui subprogram prim, cu doi parametri, n i v, care primete prin intermediul parametrului n un numr natural i furnizeaz prin intermediul parametrului p valoarea true dac n este prim i false n caz contrar. (2p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (3<n<100) i apoi n numere naturale cu maximum 4 cifre fiecare i afieaz pe ecran, desprite prin cte un spaiu, toate numerele prime dintre cele n numere citite, n ordinea invers fa de cum au fost citite, utiliznd apeluri utile ale subprogramului prim. (8p.) Exemplu: pentru n=12 i numerele 1 2 2 3 7 2 9 3 3 9 7 1 se vor afia valorile : 7 3 3 2 7 3 2 2
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 078
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un program construiete i afieaz elementele produsului cartezian AxBxC pentru mulimile A={1,2,3,4}, B={1,2,3}, C={1,2}. Care dintre urmtoarele triplete NU va fi afiat? (4p.) a. (3,2,1) b. (1,3,2) c. (1,2,3) d. (2,2,2)
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului sub, scriei ce valoare are sub(4). Dar sub(123986)? (6p.) function sub(n:longint):integer; begin if n<>0 then if n mod 2<>0 then sub:=1+sub(n div 10) else sub:=sub(n div 10) else sub:=0 end; 3. Se citete de la tastatur un numr natural n, cu cel mult patru cifre, n2. S se scrie n fiierul prime.out, pe aceeai linie, n ordine cresctoare, separate prin cte un spaiu, toate numerele prime mai mici sau egale cu n. Exemplu: pentru n=10, n fiierul prime.out vor fi scrise numerele 2 3 5 7 . (10p.) 4. a) Scriei definiia de tip i definiia complet a unui subprogram max_neg cu trei parametri, n, v, max, care primete prin intermediul parametrului n (0<n<100) un numr natural, prin intermediul parametrului v un tablou unidimensional cu n numere ntregi cu cel mult 4 cifre fiecare i returneaz prin intermediul parametrului max cea mai mare valoare strict negativ dintre numerele din tablou sau valoarea 0 dac nu exist astfel de numere. (4p.) b) Scriei un program Pascal care citete de la tastatur un numr natural n (3<n<100) i apoi n numere ntregi cu cel mult 4 cifre fiecare i afieaz pe ecran, separate prin spaiu, cea mai mare valoare strict negativ i cea mai mic valoare strict pozitiv dintre cele n citite folosind pentru determinarea ambelor valori apeluri utile ale subprogramului max_neg. Dac nu exist valori strict negative se va afia mesajul NU EXISTA VALORI STRICT NEGATIVE, respectiv mesajul NU EXISTA VALORI STRICT POZITIVE dac nu exist valori strict pozitive. . Exemplu: pentru n=12 i numerele 11 2 2 -3 2 2 3 -13 2 3 2 10 se va afia: -3 2 (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 079
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Problema generrii tuturor codurilor formate din exact 4 cifre nenule, cu toate cifrele distincte dou cte dou, este similar cu generarea tuturor: (4p.) a. aranjamentelor de 9 elemente luate cte 4 b. permutrilor elementelor unei mulimi cu 4 elemente c. elementelor produsului cartezian AxAxAxA unde A este o mulime cu 9 elemente d. submultimilor cu 4 elemente ale mulimii {1,2,3,4,5,6,7,8,9}
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, scriei ce valoare are f(8). Dar f(1209986)? (6p.) function f(x:longint):byte; var y,z:byte; begin if x=0 then f:=x else begin y :=x mod 10; z :=f(x div 10); if y>z then f:=y else f:=z end end; 3. Scriei definiia complet a unui subprogram max_d cu trei parametri, n, m1, m2, care primete prin intermediul parametrului n un numr natural cu cel puin dou cifre i cel mult nou cifre i care returneaz prin intermediul parametrilor m1 i m2 cele mai mari dou cifre ale numrului n. Cifra returnat prin intermediul parametrului m1 va fi mai mare sau egal cu cea returnat prin intermediul parametrului m2. Exemplu: pentru n=128773, subprogramul returnez prin intermediul parametrului m1 valoarea 8 i prin intermediul parametrului m2 valoarea 7. (10p.) 4. Se citete de pe prima linie a fiierului text numere.in un numr natural n (0<n<10000) i, de pe a doua linie a fiierului, n numere naturale din intervalul [1,100] i se cere s se afieze pe ecran, desprite prin cte un spaiu, numrul sau numerele ntregi din intervalul [1,100] care nu apar printre numerele citite. Dac pe a doua linie a fiierului apar toate numerele din intervalul precizat, se va afia mesajul NU LIPSESTE NICIUN NUMAR. Alegei un algoritm de rezolvare eficient din punctul de vedere al timpului de executare. Exemplu: pentru fiierul numere.in cu urmtorul coninut 12 4 2 3 1 6 5 7 8 9 11 10 100 se vor afia valorile 12 13 99. a) Explicai n limbaj natural metoda utilizat, justificnd eficiena acesteia (4-6 rnduri) (4p.) b) Scriei programul Pascal ce rezolv problema enunat, corespunztor metodei descrise la punctul a). (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 080
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. O clas de 28 de elevi este la ora de educaie fizic i profesorul dorete s formeze o echip de 4 elevi; ordinea elevilor n cadrul echipei are importan. Algoritmul de generare a tuturor posibilitilor de a forma o asfel de echip este similar cu algoritmul de generare a tuturor: (4p.) a. aranjamentelor de 28 de elemente luate cte 4 b. combinrilor de 28 de elemente luate cte 4 c. partiiilor unei mulimi cu 28 de elemente d. elementelor produsului cartezian AxAxAxA, A fiind o mulime cu 28 de elemente
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului sub, scriei ce valoare are sub(9). Dar sub(132764)? (6p.) function sub(n:longint):integer; begin if n<>0 then if n mod 2<>0 then sub:=n mod 10+sub(n div 10) else sub:=sub(n div 10) else sub:=0 end; 3. Scriei programul Pascal care citete de la tastatur un numr natural nenul n (0<n<100000) i afieaz pe ecran, n ordine cresctoare, numerele naturale nenule mai mici sau egale cu n care sunt ptrate perfecte i nu sunt divizori ai numrului n. Numerele vor fi afiate cte 5 pe linie, cu excepia ultimei linii pe care pot fi mai puine numere. Pe linie, numerele sunt desprite prin cte un spaiu. Exemplu: pentru n=80 se afieaz: 9 16 25 36 49 64 (6p.) 4. a) Scriei definiia complet a unui subprogram cu numele ordonat, care primete prin intermediul singurului su parametru, n, un numr natural cu cel mult 9 cifre i returneaz valoarea true dac numrul are cifrele ordonate strict descresctor, de la stnga la dreapta, i valoarea false n caz contrar. (4p.) b) Scriei un program Pascal care citete de pe prima linie a fiierului text numere.in un numr natural n (0<n<1000) i de pe a doua linie a fiierului n numere naturale cu cel mult 9 cifre i afieaz pe ecran, desprite prin cte un spaiu, numerele naturale distincte, coninute de a doua linie a fiierului care au cifrele ordonate strict descresctor, de la stnga la dreapta. Se vor utiliza apeluri utile ale subprogramului ordonat . (10p.) Exemplu: dac fiierul numere.in are urmtorul coninut: 134 6420 1243 9802 731 6420 pe ecran se vor afia numerele: 6420 731 (nu neaprat n aceast ordine).
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 081
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Folosind cifrele {1,2,3} se genereaz, n ordinea cresctoare a valorii, toate numerele pare formate din trei cifre distincte. Astfel, se obin n ordine, numerele: 132, 312. Folosind aceeai metod, se genereaz numerele pare formate din patru cifre distincte din mulimea {1,2,3,4}. Care va fi al 4-lea numr generat ? (4p.) a. 2134 b. 1432 c. 2314 d. 1423
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, scriei ce valoare are f(0). Dar f(5552)? (6p.) function f(x:integer):integer; begin if x=0 then f:=0 else f:=f(x div 10)+1 end; 3. Subprogramul ordonat are 4 parametri: - n, prin care primete un numr natural (1n100) ; - v, prin care primete un tablou unidimensional cu n elemente, numerotate de la 1 la n, numere naturale cu cel mult patru cifre fiecare; - k1 i k2 dou numere ntregi (1k1k2n). Subprogramul returneaz valoarea 1 dac elementele din tablou, cu indici n intervalul [k1,k2], se afl n ordine cresctoare, i 0 n caz contrar . a) Scriei numai antetul subprogramului ordonat. (4p.) b) Scriei un program C/C++ care citete de la tastatur un numr natural n (1n100) i cele n elemente, numerotate de la 1 la n, ale unui tablou unidimensional. Elementele sunt numere naturale, cu cel mult 4 cifre fiecare. Programul determin i afieaz pe ecran, separate printr-un spaiu, dou valori k1 i k2 astfel nct secvena format din elementele cu indici n intervalul [k1,k2], pe poziii consecutive n tablou, s fie ordonat cresctor i s aib o lungime maxim. Dac sunt mai multe secvene de lungime maxim se vor afia indicii corespunztori unei valori minime a lui k1. Se vor utiliza apeluri utile ale subprogramului ordonat. Exemplu: dac n=7 i tabloul este (4, -6, 1, 2, 1, 4, 5) se va afia 2 4. (10p.) 4. Fiierul text NUMERE.IN conine, pe fiecare linie a sa, cte dou numere naturale mai mici sau egale cu 10000, desprite printr-un spaiu. Scriei programul PASCAL care s afieze pe ecran, unul sub altul, cel mai mare numr de pe fiecare linie, ca n exemplu. (6p.) Exemplu: dac fiierul NUMERE.IN are coninutul alturat: 12 14 110 12 4 -8
atunci pe ecran se afieaz: 14 110 4
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 082
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Folosind cifrele {1,2,3} se genereaz, n ordinea cresctoare a valorii, toate numerele pare formate din trei cifre distincte. Astfel se obin, n ordine, numerele: 132, 312. Folosind aceeai metod, se genereaz numerele pare formate din patru cifre distincte din mulimea {1,2,3,4}. Care va fi al 5-lea numr generat ? (4p.) a. 1432 b. 2134 c. 2314 d. 1423
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, scriei ce valoare are f(2). Dar f(123)? (6p.)
function f(x:integer):integer; begin if x=0 then f:=0 else if x mod 2=0 then f:=1+f(x div 10) else f:=2+f(x div 10) end; 3. Scriei n PASCAL definiia complet a subprogramului medie, care are doi parametri: - n, prin care primete un numr natural (1n100); - v, prin care primete un tablou unidimensional cu n elemente, fiecare element avnd cel mult patru cifre. Funcia returneaz media aritmetic a elementelor impare din tablou sau valoarea 0 dac, n tablou, nu exist elemente impare. (10p.) Fiierul text NUMERE.IN conine, pe mai multe linii, cel mult 30000 de numere naturale nenule mai mici sau egale cu 500, numerele de pe fiecare linie fiind desprite prin cte un spaiu. a) Scriei programul PASCAL care afieaz pe ecran, n ordine cresctoare, toate numerele care au aprut o singur dat n fiierul NUMERE.IN, desprite prin cte un spaiu. 4. Exemplu: dac fiierul NUMERE.IN conine numerele scrise alturat, se vor afia valorile urmtoare: 3 4 5 6 34 . (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit la punctul a) (3 4 rnduri). (4p.) 2 23 34 3 8 9 9 23 6 8 9 2 4 5 23 9
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 083
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Subprogramul cmmdc are doi parametri i returneaz cel mai mare divizor comun al valorilor celor doi parametri, iar subprogramul max are doi parametri i returneaz cea mai mare dintre valorile celor doi parametri. Care este rezultatul evaluarii expresiei: max(cmmdc(max(194,87),342),3)? (4p.) a. 87 b. 194 c. 3 d. 2
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, scriei ce valoare are f(2). Dar f(123)? (6p.)
function f(x:integer):integer; begin if x=0 then f:=0 else if x mod 2=0 then f:=3+f(x div 10) else f:=4+f(x div 10) end; 3. Scriei n PASCAL definiia complet a subprogramului medie, care are doi parametri: - n, prin care primete un numr natural (1n100); -v, prin care primete un tablou unidimensional cu n elemente, numere ntregi, fiecare avnd cel mult patru cifre. Funcia returneaz media aritmetic a elementelor pare din tablou sau valoarea 0 dac, n tablou, nu exist elemente pare. (10p.) Fiierul text NUMERE.IN conine, pe mai multe linii, cel mult 30000 de numere naturale nenule mai mici sau egale cu 500, numerele de pe fiecare linie fiind desprite prin cte un spaiu. a) Scriei programul PASCAL care afieaz pe ecran, n ordine descresctoare, desprite prin cte un spaiu, toate numerele care au aprut exact o singur dat n fiierul NUMERE.IN. 4. Exemplu: dac fiierul NUMERE.IN conine numerele scrise alturat, se vor afia valorile urmtoare: 34 6 5 4 3 (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit la punctul a) (3 4 rnduri). (4p.) 2 23 34 3 8 9 9 23 6 8 9 2 4 5 23 9
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 084
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Folosind cifrele {2,3,4} se genereaz, n ordinea cresctoare a valorii, toate numerele pare formate din trei cifre distincte. Astfel se obin, n ordine, numerele: 234, 324, 342, 432. Folosind aceeai metod se genereaz numerele pare formate din patru cifre distincte din mulimea {2,3,4,5}. Care va fi al doilea numr generat? (4p.) a. 2354 b. 3254 c. 5432 d. 2534
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, scriei ce valoare are f(99). Dar f(0)? (6p.)
function f(x:integer):integer; begin if(x=100)then f:=1 else f:=1+f(x+1) end; 3. Scriei programul PASCAL care citete de la tastatur un numr natural n (1n100), un ir de cte n numere ntregi, cu cel mult 5 cifre fiecare, notat a 1 ,a 2 ,a 3 ,a n , apoi un al doilea ir de n numere ntregi, cu cel mult 5 cifre fiecare, notat b 1 ,b 2 ,b 3 ,b n . Programul construiete n memorie i afieaz pe ecran un ir c format din n numere calculate astfel: c i =a i +b i , pentru i=1,2,3,n. Numerele afiate vor fi separate prin cte un spaiu. Exemplu: pentru n=4 i numerele 2,3,7,8 respectiv 43,3,1,8 se afieaz 45 6 8 16. (10p.) 4. Se consider subprogramul CMMMC care primete prin cei doi parametri, x i y, dou numere naturale (1x10000, 1y10000) i returneaz cel mai mic multiplu comun al lor. a) Scriei numai antetul subprogramului CMMMC. (4p.) b) Fiierul text NUMERE.IN conine, pe fiecare linie, cte dou numere naturale nenule mai mici sau egale dect 10000, desprite printr-un spaiu. Scriei un program PASCAL care, pentru fiecare linie k din fiierul NUMERE.IN, citete cele dou numere de pe aceast linie i scrie n fiierul text NUMERE.OUT , tot pe linia k, cel mai mic multiplu comun al acestora, ca n exemplu. Se vor utiliza apeluri utile ale subprogramului CMMMC. (6p.) Exemplu: dac fiierul NUMERE.IN are coninutul alturat: 12 14 11 12 4 8
atunci fiierul NUMERE.OUT va avea urmtorul coninut: 84 132 8
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 085
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Folosind cifrele {1,2,3} se genereaz, n ordinea cresctoare a valorii, toate numerele impare formate din trei cifre distincte. Astfel se obin, n ordine, numerele: 123, 213, 231, 321. Folosind aceeai metod, se genereaz numerele impare formate din patru cifre distincte din mulimea {1,2,3,4}. Care va fi al 2-lea numr generat ? (4p.) a. 1423 b. 1243 c. 4321 d. 1234
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Pentru definiia alturat a subprogramului f, scriei ce valoare are f(21). Dar f(30)? (6p.)
function f(x:integer):integer; begin if x=20 then f:=20 else if x mod 2=1 then f:=1+f(x-1) else f:=2+f(x-1) end; 3. Scriei programul PASCAL care citete de la tastatur un numr natural n (1n100), un ir de cte n numere ntregi, cu cel mult 5 cifre fiecare, notat a 1 ,a 2 ,a 3 ,a n , apoi un al doilea ir de n numere ntregi, cu cel mult 5 cifre fiecare, notat b 1 ,b 2 ,b 3 ,b n . Programul construiete n memorie i afieaz pe ecran un ir C format din n numere calculate astfel: c i =a i -b i , pentru i=1,2,3,n. Numerele afiate sunt separate prin cte un spaiu. Exemplu: pentru n=4 i numerele 2,3,7,8 respectiv 43,3,1,8 se afieaz: -41 0 6 0. (10p.) 4. Se consider subprogramul CMMDC care primete prin cei doi parametri, x i y, dou numere naturale (1x10000, 1y10000) i returneaz cel mai mare divizor comun al lor. a) Scriei numai antetul subprogramului CMMDC. (4p.) b) Fiierul text NUMERE.IN conine, pe fiecare linie, cte dou numere naturale nenule mai mici sau egale dect 10000, desprite printr-un spaiu, reprezentnd numitorul i numrtorul cte unei fracii. Scriei un program PASCAL care, pentru fiecare linie k din fiierul NUMERE.IN, citete numitorul i numrtorul fraciei de pe aceast linie i scrie n fiierul text NUMERE.OUT , tot pe linia k, numitorul i numrtorul acestei fracii, adus la forma ireductibil, ca n exemplu. Se vor utiliza apeluri apeluri utile ale subprogramului CMMDC. (6p.) Exemplu: dac fiierul NUMERE.IN are coninutul alturat: 12 14 11 12 2 2 4 8 atunci fiierul NUMERE.OUT va avea urmtorul coninut: 6 7 11 12 1 1 1 2
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 086
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. La examenul de bacalaureat, un elev primete un test format dintr-un subiect de tip I, unul de tip II i unul de tip III. Stiind c pentru fiecare tip de subiect sunt elaborate exact 100 de variante, algoritmul de generare a tuturor posibilitilor de a forma un test este similar cu algoritmul de generare a: (4p.) a. elementelor produsului cartezian b. aranjamentelor c. permutrilor d. submulimilor
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce se afieaz la apelul f(4);?
(6p.) procedure f(n:integer); begin write('*'); if n>2 then begin f(n-1); write('#') end end; 3. Scriei definiia complet a subprogramului numar, cu doi parametri, care primete prin intermediul parametrului n un numr natural format din cel mult 9 cifre, iar prin intermediul parametrului c o cifr nenul; subprogramul returneaz numrul obinut prin nlocuirea fiecrei apariii a cifrei c n numrul n cu partea ntreag a valorii (c+1)/2. Dac c nu apare n n, subprogramul returneaz valoarea n. Exemplu: pentru n=1525735, c=5 valoarea returnat va fi 1323733. (10p.) 4. Fiierul text bac.txt conine cel puin dou i cel mult 1000 de numere naturale distincte. Numerele sunt separate prin cte un spaiu i fiecare dintre ele are cel mult 9 cifre. a) Scriei un program Pascal care determin cele mai mici dou numere din fiier, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al spaiului de memorie utilizat. Cele dou numere vor fi afiate pe ecran, n ordine cresctoare, separate printr-un spaiu. (6p.) Exemplu: dac fiierul conine numerele: 512 6 860 3 12 300 se va afia: 3 6 b) Descriei succint, n limbaj natural, algoritmul utilizat, justificnd eficiena acestuia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 087
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Algoritmul de generare a tuturor numerelor de 3 cifre, formate numai cu cifre impare, este echivalent cu algoritmul de generare a: (4p.) a. submulimilor unei mulimi cu 3 elemente b. combinrilor de 5 elemente luate cte 3 c. aranjamentelor de 5 elemente luate cte 3 d. produsului cartezian a 3 mulimi de cifre impare
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce se afieaz la apelul f(4);?
(6p.) procedure f(n:integer); begin if n<8 then begin write(n); f(n+1); write(n) end end; 3. Scriei definiia complet a subprogramului numar, cu doi parametri, care primete prin intermediul parametrilor a i b dou numere naturale, a fiind format din cel mult 9 cifre, iar b fiind un numr natural strict mai mic dect numrul de cifre ale lui a. Subprogramul nlocuiete cu 1 primele b cifre ale numrului a i returneaz valoarea astfel obinut. Exemplu: pentru a=184465709 i b=5, valoarea returnat va fi 111115709. (10p.) 4. Fiierul text bac.txt conine un ir de cel mult 2009 numere naturale nenule, cu cel mult 4 cifre fiecare, pe mai multe rnduri, numerele de pe acelai rnd fiind separate prin cte un spaiu. a) Scriei un program Pascal care citete de la tastatur un numr natural k i afieaz pe ecran cel mai mic numr din fiierul bac.txt care este mai mare sau egal cu numrul natural k, precum i numrul de apariii ale acestuia n fiier, folosind o metod eficient din punctul de vedere al timpului de executare. Cele dou valori vor fi afiate pe o linie a ecranului, separate printr-un spaiu. Dac n fiier nu exist nici un numr mai mare sau egal cu k, se va afia doar valoarea 0. (6p.) Exemplu: dac n fiier avem numerele 31 2 63 71 8 63 5 281 i numrul citit este k=50, atunci pe ecran se vor afia numerele: 63 2. b) Descriei succint, n limbaj natural, algoritmul utilizat, justificnd eficiena acestuia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 088
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Ionel dorete s ofere cadouri membrilor familiei sale, format din cei doi prini i o sor. Decide s le ofere stilouri de diferite culori. La magazin exist stilouri de 5 culori diferite. Algoritmul de generare a tuturor posibilitilor de a atribui cte un stilou fiecruia dintre cei trei membri ai familiei, fr s se repete vreo culoare, este similar cu algoritmul de generare a (4p.) a. aranjamentelor b. elementelor produsului cartezian c. permutrilor d. submulimilor
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(1)? Dar f(4)?
(6p.) function f(n:integer):integer; begin if n=0 then f:=1 else if n=1 then f:=2 else f:=f(n-1)-f(n-2) end; 3. Scriei definiia complet a subprogramului numar, cu patru parametri, care primete prin intermediul parametrului n un numr natural format din cel mult 9 cifre, iar prin intermediul parametrilor c1 i c2 cte o cifr, cu proprietatea c1<c2; subprogramul furnizeaz prin intermediul celui de al patrulea parametru, x, o valoare egal cu suma cifrelor lui n care aparin intervalului nchis [c1,c2]. Exemplu: pentru n=123, c1=2 i c2=7, valoarea furnizat prin x va fi 5. (10p.) 4. Fiierul text bac.txt conine cel mult 10000 de numere naturale din intervalul nchis [0, 999], aflate pe mai multe linii, numerele de pe aceeai linie fiind separate prin cte un spaiu. a) Scriei un program Pascal care determin i afieaz pe ecran cel mai mic numr prim a cu proprietatea maxa, unde max este cea mai mare valoare din fiier. Se va utiliza un algoritm eficient din punct de vedere al spaiului de memorie utilizat. (6p.) Exemplu: dac fiierul conine numerele: 5 8 99 5 1 1 2 2 se va afia 101. b) Descriei succint, n limbaj natural, algoritmul utilizat, justificnd eficiena acestuia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 089
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. O clas format din 28 de elevi dorete s trimit la consftuirea reprezentanilor claselor colii o delegaie format din 3 elevi. Algoritmul de generare a tuturor posibilitilor de a forma o delegaie este similar cu algoritmul de generare a: (4p.) a. permutrilor b. aranjamentelor c. combinrilor d. submulimilor
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce valoare are f(0)? Dar f(4)? (6p.) function f(n:integer):longint; begin if n=0 then f:=0 else f:=n*n+f(n-1) end; 3. Scriei definiia complet a subprogramului numar, cu trei parametri, care primete prin intermediul parametrului n un numr natural format din cel mult 9 cifre, iar prin intermediul parametrilor c1 i c2 cte o cifr nenul. Subprogramul caut fiecare apariie a cifrei c1 n n, i dac aceasta apare, o nlocuiete cu c2. Subprogramul furnizeaz tot prin n numrul astfel obinut. Dac cifra c1 nu apare n n, atunci valoarea lui n rmne nemodificat. Exemplu: pentru n=149448, c1=4 i c2=2, valoarea furnizat prin n va fi 129228. (10p.) 4. Fiierul text bac.txt conine pe mai multe rnduri cel mult 50000 de numere naturale din intervalul nchis [0, 99], numerele de pe acelai rnd fiind separate prin cte un spaiu. a) Scriei un program Pascal care afieaz pe ecran, n ordine cresctoare, acele numere din fiier care sunt mai mari dect un numr natural k, citit de la tastatur, utiliznd un algoritm eficient din punct de vedere al timpului de executare. Dac un numr care corespunde cerinei apare de mai multe ori, se va afia o singur dat. Numerele vor fi afiate pe ecran separate prin cte un spaiu. (6p.) Exemplu: dac fiierul conine numerele: 15 36 33 36 1 12 1 24 2, iar pentru k se citete valoarea 24, se vor afia numerele 33 36. b) Descriei succint, n limbaj natural, algoritmul utilizat, justificnd eficiena acestuia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 090
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. La un bal mascat, magazia colii pune la dispoziia elevilor 10 pelerine, 10 mti i 10 plrii divers colorate. Algoritmul de generare a tuturor posibilitilor de a obine un costum format dintr-o plrie, o masc i o pelerin este similar cu algoritmul de generare a : (4p.) a. elementelor produsului cartezian b. aranjamentelor c. permutrilor d. submulimilor
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce se afieaz la apelul f('a');? (6p.) procedure f(c:char); begin if c<>'e' then begin f(succ(c)); write(c) end end; 3. Scriei definiia complet a subprogramului f, care primete prin intermediul parametrului n un numr natural nenul (2n200), iar prin intermediul parametrului a un tablou unidimensional care conine n valori ntregi, fiecare dintre aceste valori ntregi avnd cel mult patru cifre. Subprogramul returneaz valoarea 1 dac diferena dintre elementul maxim i elementul minim din tablou este mai mare dect 1000, altfel valoarea returnat va fi 0.(10p.) 4. Fiierul text bac.txt conine pe mai multe rnduri cel mult 50000 de numere naturale, numerele de pe acelai rnd fiind separate prin cte un spaiu. a) Scriei un program Pascal care, utiliznd un algoritm eficient din punct de vedere al timpului de executare i al spaiului de memorie folosit, determin numrul din fiier care are cei mai muli divizori. n cazul n care exist mai multe valori n fiier care au numr maxim de divizori, programul va afia cea mai mic dintre acestea. (6p.) Exemplu: dac fiierul conine valorile 23 12 100 36 atunci se va afia 36, pentru c att 100 ct i 36 au numr maxim de divizori, dar 36 este cel mai mic. b) Descriei succint, n limbaj natural, algoritmul utilizat, justificnd eficiena acestuia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 091
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se genereaz, utiliznd metoda bactracking, numerele cu exact 3 cifre distincte din mulimea {5,1,3}. Dac primele 3 numere generate sunt, n ordine, 513, 531,153, care este urmtorul numr generat? (4p.) a. 351 b. 155 c. 315 d. 135
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider subprogramul f, definit alturat. Ce se afieaz la apelul f(20);? (6p.) procedure f (i:integer); begin if i<>0 then begin write(i); f(i div 2); write(i) end end; 3. Subprogramul par primete prin singurul su parametru, n, un numr natural nenul cu cel mult 8 cifre i returneaz valoarea 1 dac n conine cel puin o cifr par, sau returneaz valoarea 0 n caz contrar. Exemplu: pentru n=723 subprogramul va returna valoarea 1. a) Scriei numai antetul subprogramului par. (2p.) b) Scriei un program Pascal care citete de la tastatur un numr natural nenul n cu cel mult trei cifre, apoi un ir de n numere naturale, cu cel puin dou i cel mult 8 cifre fiecare, i afieaz pe ecran numrul de valori din irul citit care au numai cifra unitilor par, celelalte cifre fiind impare. Se vor utiliza apeluri utile ale subprogramului par. Exemplu: dac n=4, iar irul citit este 7354, 123864, 51731, 570 se va afia 2 (numerele 7354 i 570 respect condiia cerut). (8p.) Fiierul numere.in conine cel mult 5000 de numere reale, cte unul pe fiecare linie. Se cere s se scrie un program care s citesc toate numerele din fiier i s afieze pe ecran numrul de ordine al primei, respectiv al ultimei linii pe care se afl cel mai mare numr din fiier. Cele dou numere vor fi separate printr-un spaiu. Alegei o metod de rezolvare eficient din punct de vedere al spaiului de memorare i al timpului de executare. 4. Exemplu: dac fiierul are coninutul alturat, pe ecran se vor afia numerele 2 6. a) Descriei succint, n limbaj natural, metoda de rezolvare aleas, explicnd n ce const eficiena ei. (4p.) b) Scriei programul Pascal corespunztor metodei descrise. (6p.) 3.5 7 -4 7 2 7 6.3 5
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 092
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Avnd la dispoziie cifrele 0, 1 i 2 se pot genera, n ordine cresctoare, numere care au suma cifrelor egal cu 2. Astfel, primele 6 soluii sunt 2, 11, 20, 101, 110, 200. Folosind acelai algoritm, se genereaz numere cu cifrele 0, 1, 2 i 3 care au suma cifrelor egal cu 4. Care va fi al 7-lea numr din aceast generare? (4p.) a. 130 b. 301 c. 220 d. 103
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se consider definit subprogramul f. Ce se va afia n urma apelului f(14);? (6p.)
procedure f(x:integer); begin if x<=10 then write(0 ) else begin f(x-2); write(x, ) end end; 3. Subprogramul ordonare primete prin parametrul x un tablou unidimensional cu cel mult 100 de elemente numere reale, iar prin parametrul n un numr ntreg ce reprezint numrul efectiv de elemente ale tabloului x. Subprogramul ordoneaz cresctor elementele tabloului i furnizeaz, tot prin intermediul parametrului x, tabloul ordonat. a) Scriei declarrile de tip necesare i numai antetul acestui subprogram. (4p.) b) Scriei un program Pascal care citete de la tastatur dou numere naturale, n i m (1n100 i mn), i apoi un ir de n numere reale distincte. Folosind apeluri utile ale subprogramului ordonare, programul afieaz pe prima linie a ecranului cele mai mari m elemente din irul citit (n ordine cresctoare a valorilor lor), iar pe a doua linie de ecran, cele mai mici m elemente din ir (n ordine descresctoare a valorilor lor). Numerele afiate pe aceeai linie vor fi separate prin cte un spaiu. (10p.) Exemplu : dac n=9, m=3, iar irul este (14.2, 60, -7.5, -22, 33.8, 80, 4, 10, 3) se va afia pe ecran: 33.8 60 80 3 -7.5 -22 4. Scriei un program Pascal care creeaz fiierul text SIR.TXT i scrie n el, n ordine alfabetic, toate irurile formate din dou caractere distincte, litere mari ale alfabetului englez. Fiecare ir va fi scris pe cte o linie a fiierului. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 093
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. n cte dintre permutrile elementelor mulimii {I,N,F,O} vocala I apare pe prima poziie? (4p.) a. 1 b. 24 c. 6 d. 12
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Subprogramul f este definit alturat. Ce se afieaz ca urmare a apelului f(1,3);? (4p.) procedure f (x,y :integer); begin if x<y then begin y:=y-1; f(x,y) end else write(x,y) end; Scriei programul Pascal care citete de la tastatur un numr natural n (1n99), impar, i construiete n memorie un tablou unidimensional A=(A 1 , A 2 ,, A n ) cu elementele mulimii {1,2,...,n} astfel nct elementele de pe poziii impare formeaz irul cresctor 1,2,...,[(n+1)/2], iar elementele de pe poziii pare irul descresctor n,n-1,..., [(n+1)/2]+1. Exemplu: pentru n=11 se va construi tabloul A :
3. Elementele tabloului se afieaz pe ecran, separate prin cte un spaiu. (6p.) 4. a) Scriei definiia complet a subprogramului dcm, cu doi parametri, care: - primete prin parametrii a i b dou valori naturale din intervalul [1,30000] - returneaz o valoare natural reprezentnd cel mai mare numr care este att divizor al lui a ct i divizor al lui b. Exemplu: dac a=100 i b=120, subprogramul returneaz valoarea 20. (6p.) b) Fiierul text NUMERE.IN conine pe prima linie un numr natural nenul n (1n100) i pe urmtoarea linie n numere naturale din intervalul [1,30000], separate prin cte un spaiu. Scriei un program Pascal care citete toate numerele din fiierul NUMERE.IN i determin, folosind apeluri ale subprogramului cmmdc, cel mai mare divizor comun al celor n numere situate pe linia a doua n fiier. Programul afieaz pe ecran numrul cu proprietatea cerut. Exemplu: dac fiierul NUMERE.IN are coninutul: 5 60 72 600 24 48 atunci se afieaz valoarea 12. (10p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 094
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un elev realizeaz un program care citete o valoare natural pentru o variabil n i apoi afieaz n fiierul permut.txt, pe prima linie, valoarea lui n, apoi toate permutrile mulimii {1,2,...,n}, cte o permutare pe cte o linie a fiierului. Rulnd programul pentru n=3, fiierul va conine cele 7 linii alturate. Dac va rula din nou programul i va introduce pentru variabila n valoarea 5, cte linii va conine fiierul? (4p.) 3 3 2 1 3 1 2 2 3 1 2 1 3 1 3 2 1 2 3. a. 25 b. 24 c. 121 d. 721
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Funcia recursiv f este astfel definit nct f(1)=8, iar f(n+1)=2*f(n)-4 pentru orice n natural nenul. a) Ce valoare are f(5) ? (3p.) b) Care este cea mai mare valoare pe care o poate lua x astfel nct f(x)<1000 ? (3p.) 3. Se consider funcia f care primete prin intermediul parametrului n un numr natural nenul (2n200), prin intermediul parametrului a un tablou unidimensional care conine n valori ntregi (fiecare dintre aceste valori ntregi avnd cel mult patru cifre), iar prin intermediul parametrilor p1 i p2 dou valori naturale reprezentnd dou poziii din tablou (0p1p2<n). Numerotarea poziiilor din tablou ncepe de la 0. Subprogramul returneaz valoarea -1 dac cele mai multe valori din tabloul a, aflate ntre poziiile p1 i p2 inclusiv, sunt strict negative, valoarea 0 dac cele mai multe valori din a, aflate ntre poziiile p1 i p2 inclusiv, sunt nule respectiv valoarea 1 dac cele mai multe valori din tabloul a aflate ntre poziiile p1 i p2 inclusiv, sunt strict pozitive. a) Scriei definiia complet a funciei f. (5p.) b) Scriei un program Pascal care citete de la tastatur un numr natural nenul n (2n200), apoi valorile celor n componente ale unui tablou unidimensional. Valorile citite sunt numere ntregi de maximum patru cifre fiecare. Programul afieaz pe ecran mesajul negative dac cele mai multe valori din tablou sunt strict negative, mesajul nule dac cele mai multe valori din tablou sunt egale cu 0 sau mesajul pozitive dac cele mai multe valori din tablou sunt strict pozitive sau mesajul nedecis n celelalte cazuri. Pentru a stabili care dintre mesaje urmeaz s fie afiat, programul va apela funcia f. (5p.) 4. Fiierul text bac.txt conine pe fiecare linie cte un numr ntreg format din cel mult patru cifre. Se tie c fiierul conine cel puin un numr. Scriei un program eficient att din punct de vedere al timpului de executare ct i din punct de vedere al spaiului de memorie utilizat, care citete de la tastatur un numr real x, apoi determin i afieaz acel numr din fiierul bac.txt care are valoarea cea mai apropiat de valoarea lui x.
Exemplu: dac fiierul bac.txt are coninutul alturat, iar de la tastatur se citete valoarea -3.85, programul va afia valoarea -5. a) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.) b) Scriei un program Pascal care rezolv problema conform metodei descrise. (6p.) 4 -5 -6 -984 1345 -1
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 095
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un program citete o valoare natural nenul pentru n i apoi genereaz i afieaz, n ordine cresctoare lexicografic, toate combinaiile formate din n cifre care aparin mulimii {0,1}. Astfel, pentru n=2, combinaiile sunt afiate n urmtoarea ordine: 00, 01, 10, 11. Dac se ruleaz acest program i se citete pentru n valoarea 6, imediat dup combinaia 011011 va fi afiat combinaia: (4p.) a. 100100 b. 011100 c. 011111 d. 100000
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Funcia f are definiia alturat. a) Ce valoare are f(10)? (3p.) b) Ce valoare are f(29)? (3p.) function f(n:integer):integer; begin if n<=9 then f:=0 else if n mod 5=0 then f:=0 else f:=1+f(n-3) end; 3. Funcia f primete prin intermediul parametrului n un numr natural nenul (2n200), iar prin intermediul parametrului a un tablou unidimensional care conine n valori ntregi nenule (fiecare dintre aceste valori ntregi avnd cel mult patru cifre). Funcia returneaz valoarea -1 dac numrul de valori negative din tabloul a este strict mai mare dect numrul de valori pozitive din tablou, valoarea 0 dac numrul de valori negative din a este egal cu numrul de valori pozitive din tablou i valoarea 1 dac numrul de valori pozitive din tabloul a este strict mai mare dect numrul de valori negative din a. Scriei definiia complet a funciei f. (10p.) 4. a) Scriei un program Pascal care citete de la tastatur un numr natural nenul, S, avnd maximum 9 cifre, i printr-o metod eficient din punct de vedere al timpului de executare, determin i scrie n fiierul rez.dat trei valori naturale a cror sum este egal cu S, i al cror produs este maxim. Cele trei valori vor fi scrise n ordine cresctoare pe prima linie a fiierului rez.dat, separate prin cte un spaiu. Exemplu: dac se citete valoarea 5, fiierul rez.dat va avea o linie cu coninutul 1 2 2. (6p.) b) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 096
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Un program citete o valoare natural nenul pentru n i apoi genereaz i afieaz, n ordine descresctoare lexicografic, toate combinaiile de n cifre care aparin mulimii {0,1}. Astfel, pentru n=2, combinaiile sunt afiate n urmtoarea ordine: 11, 10, 01, 00. Dac se ruleaz acest program i se citete pentru n valoarea 8, imediat dup combinaia 10101000 va fi afiat combinaia: (4p.) a. 01010111 b. 10100111 c. 10101001 d. 10100100
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Funcia f are definiia alturat. Scriei 4 valori de apel pe care le poate avea n astfel nct, pentru cele 4 apeluri, corespunztoare acestor valori, s se obin 4 valori, distincte dou cte dou. (6p.) function f(n:integer):integer; begin if n<=9 then f:=0 else if n mod 4=0 then f:=0 else f:=1+f(n-3) end; 3. Funcia verif primete prin intermediul a trei parametri, notai a, b i c, trei valori naturale nenule, fiecare de maximum patru cifre. Funcia returneaz valoarea 1 dac cele trei valori pot constitui laturile unui triunghi i valoarea 0 n caz contrar. a) Scriei definiia complet a funciei verif. (5p.) b) Scriei un program Pascal care citete de la tastatur ase valori naturale nenule, fiecare de maximum patru cifre, apoi verific, utiliznd apeluri utile ale funciei verif, dac primele trei numere citite pot constitui laturile unui triunghi i dac ultimele trei numere citite pot constitui laturile unui triunghi; n caz afirmativ, programul afieaz pe ecran mesajul congruente dac cele dou triunghiuri sunt congruente sau mesajul necongruente dac cele dou triunghiuri nu sunt congruente; dac cel puin unul dintre cele dou triplete de valori nu pot constitui laturile unui triunghi, programul va afia pe ecran mesajul nu. (5p.) Fiierul text BAC.DAT conine pe prima linie, separate printr-un spaiu, dou valori naturale n i m (2n1000, 2m1000), pe a doua linie n valori ntregi, apoi pe urmtoarele m linii cte dou valori, fiecare dintre aceste perechi determinnd un interval nchis (prin interval nchis determinat de dou valori a i b se nelege intervalul [a,b], dac ab sau intervalul [b,a], dac b<a). Valorile de pe a doua i de pe urmtoarele m linii sunt separate ntre ele prin cte un spaiu i au cel mult 4 cifre fiecare. Se cere determinarea i afiarea pe ecran a numrului de intervale, dintre cele citite din fiier, care conin toate valorile aflate pe a doua linie a fiierului. Se va utiliza o metod eficient din punct de vedere al timpului de executare i al memoriei utilizate. Exemplu: dac fiierul BAC.DAT are coninutul alturat, programul va afia: 2 Explicaie: din cele patru intervale date pe liniile 3, 4, 5 i 6, numai dou conin toate valorile de pe a doua linie a fiierului i anume [-20,50] i [-11,20]. 10 4 8 3 -11 17 -8 3 14 5 0 -2 -10 100 -20 50 15 -80 20 -11 4. a) Descriei succint, n limbaj natural, metoda de rezolvare folosit, explicnd n ce const eficiena ei (3 4 rnduri). (4p.) b) Scriei un program Pascal care s rezolve problema conform metodei descrise. (6p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 097
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Subprogramul recursiv alturat este definit incomplete. Care dintre urmtoarele expresii poate nlocui punctele de suspensie astfel nct, n urma apelului, subprogramul f s returneze suma primelor dou cifre ale numrului primit prin intermediul parametrului x? Exemplu: n urma apelului f(2318) valoarea returnat este 5. (4p.) function f(x:integer):byte; begin if ... then f:=x mod 10 + x div 10 else f:= f(x div 10) end; a. x<=100 b. x<=99 c. x=99 d. x<>0
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se genereaz, utiliznd metoda backtracking, cuvintele cu exact 3 litere din mulimea {a,x,c,f,g}. Dac primele patru cuvinte generate sunt, n ordine, aaa, aax, aac, aaf, scriei ultimele trei cuvinte care ncep cu litera a, n ordinea n care vor fi generate. (6p.) 3. Subprogramul Suma, cu trei parametri, primete prin intermediul parametrilor x i y dou numere naturale de cel mult 4 cifre fiecare i furnizeaz, prin intermediul parametrului z, suma numerelor pare cuprinse ntre x i y inclusiv sau valoarea 0 dac nu exist numere pare n acest interval. Exemplu: dac la apel sunt transmise valorile x=12 i y=23, atunci subprogramul Suma va returna, prin intermediul parametrului z, valoarea 102. Scriei, n limbajul Pascal, definiia complet a subprogramului Suma. (10p.) 4. Pe prima linie a fiierului text DATE.TXT se afl un numr natural n (0<n10000), iar pe a doua linie un ir de n numere naturale, deprite prin cte un spaiu, fiecare avnd cel mult 4 cifre. a) Scriei un program Pascal care citete numerele din fiier i afieaz, pe ecran, valorile din ir n ordinea cresctoare a cifrei unitilor. Dac dou numere din ir au aceeai cifr a unitilor nu conteaz care dintre ele va fi afiat primul. Realizai un program eficient din punct de vedere al timpului de executare. (6p.)
Exemplu: dac fiierul DATE.TXT conine 7 32 491 26 328 213 500 422 pe ecran se va afia: 500 491 32 422 213 26 328
b) Descriei succint, n limbaj natural, metoda utilizat, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 098
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv alturat, definit incomplet. Cu ce valoare trebuie nlocuite punctele de suspensie, pentru ca funcia s returneze cifra minim a numrului natural nenul transmis prin intermediul parametrului x? (4p.) function Min(x:integer):byte; var c: byte; begin if x=0 then Min:=... else begin c := Min(x div 10); if c<x mod 10 then Min:=c else Min:=x mod 10 end end; a. -1 b. 1 c. 9 d. 0
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Utiliznd metoda backtracking se genereaz toate submuimile nevide ale mulimii {3,6,2,5}. Primele ase submulimi generate sunt, n ordine: {3}, {3,6}, {3,6,2}, {3,6,2,5}, {3,6,5}, {3,2}. Care sunt, n ordinea obinerii, ultimele trei submulimi, generate dup aceast regul? (6p.) 3. Scriei n limbajul Pascal definiia complet a subprogramului numar, cu exact doi parametri, care primete prin intermediul parametrului x un numr natural nenul de cel mult dou cifre, i prin intermediul parametrului y un numr natural nenul de cel mult 9 cifre. Subprogramul returneaz cel mai mare numr natural z pentru care exist un numr natural k astfel nct z=x k i zy. Exemplu: pentru y=18 i x=2 subprogramul va returna valoarea 16(=2 4 18). (10p.) 4. Pe prima linie a fiierului text DATE.TXT se afl un ir de cel mult 10000 de numere naturale, desprite prin cte un spaiu, fiecare avnd exact o cifr. a) Scriei un program Pascal care citete numerele din fiier i le scrie n fiierul text OUT.TXT, pe o singur linie, n ordine cresctoare a valorilor lor, separate prin cte un spaiu. Se va utiliza un algoritm eficient din punct de vedere al timpului de executare. Exemplu: dac din fiierul DATE.TXT se citete irul: 2 4 3 2 7 4 3 7 2 7 7 2 1 9 1 1 2 3 fiierul OUT.TXT va conine 1 1 1 2 2 2 2 2 3 3 3 4 4 7 7 7 7 9 (6p.) b) Explicai n limbaj natural metoda utilizat, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 099
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Se consider subprogramul recursiv alturat, S, definit incomplet. Cu ce expresie pot fi nlocuite punctele de suspensie astfel nct, n urma apelului S(2), s se afieze 3 caractere * ? (4p.)
procedure S(x:integer); begin write('*'); if ... then begin write('*'); S(x-1) end end; a. x>1 b. x>2 c. x>=3 d. x>0
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Se utilizeaz metoda backtracking pentru a genera toate cuvintele formate din dou litere distincte din muimea {w,x,z,y} astfel nct niciun cuvnt s nu nceap cu litera x i niciun cuvnt s nu conin litera w lng litera z. Cuvintele vor fi generate n ordinea wx, wy, zx, zy, yw, yx, yz. Folosind aceeai metod se genereaz toate cuvintele de dou litere distincte din mulimea {w,x,z,y,t} astfel nct niciun cuvnt s nu nceap cu litera x i niciun cuvnt s nu conin litera w lng litera z. Care sunt a treia i a patra soluie generat? (6p.) 3. Subprogramul Nr are un singur parametru, k, prin intermediul cruia primete un numr natural de cel puin 3 cifre i cel mult 9 cifre, cu toate cifrele nenule. Subprogramul furnizeaz tot prin intermediul parametrului k, valoarea obinut prin eliminarea primei cifre a numrului transmis la apel. Exemplu: dac subprogramul primete prin intermediul parametrului k valoarea 12438, atunci n urma apelului subprogramului Nr, k va primi valoarea 2438 Scriei, n limbajul Pascal, definiia complet a subprogramului Nr. (10p.) 4. Pe prima linie a fiierului text DATE.TXT se afl un numr natural nenul n (n1000), iar pe a doua linie un ir de n numere ntregi nenule, deprite prin cte un spaiu, fiecare avnd cel mult 9 cifre. a) Scriei un program Pascal care citete numerele din fiier i ordoneaz cresctor doar numerele pozitive din ir, fr a modifica poziiile numerelor negative. Programul va afia, pe ecran, pe o singur linie, irul obinut dup ordonare, numerele fiind desprite prin cte un spaiu. n locul fiecrui numr negativ din irul citit se va afia valoarea 0. Realizai un program eficient din punct de vedere al spaiului de memorie folosit. (6p.)
Exemplu: dac fiierul DATE.TXT conine: 7 32 -491 23 -328 213 51 -4 pe ecran se va afia: 23 0 32 0 51 213 0
b) Descriei succint, n limbaj natural, metoda utilizat, justificnd eficiena acesteia. (4p.)
Ministerul Educaiei, Cercetrii i Inovrii Centrul Naional pentru Curriculum i Evaluare n nvmntul Preuniversitar
BACALAUREAT 2009 - INFORMATIC, limbajul Pascal Subiectul III Specializarea Matematic-informatic Subiectul III (30 de puncte) - Varianta 100
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect. 1. Aplicnd metoda backtracking pentru a genera toate permutrile celor n elemente ale unei mulimi, o soluie se memoreaz sub forma unui tablou unidimensional x 1 ,x 2 ,,x n . Dac sunt deja generate valori pentru componentele x 1 ,x 2 ,,x k-1 , iar pentru componenta curent, x k (1<k<n), a fost gsit o valoare convenabil, atunci se ncearc alegerea (4p.) a. unei noi valori pentru componenta x k-1 b. unei valori pentru componenta x k+1 c. unei noi valori pentru componenta x k d. unei noi valori pentru componenta x 1
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare. 2. Ce afieaz subprogramul F, descris alturat, la apelul F(5);? (6p.) procedure F(x:integer); begin write(x); if x>=3 then F(x-2) end; 3. Scriei definiia complet a subprogramului divizor, cu trei parametri, prin care primete 3 numere naturale nenule cu cel mult 9 cifre fiecare i returneaz numrul divizorilor comuni tuturor celor 3 numere. Exemplu: dac numerele primite ca parametri sunt 24, 20 i 12, subprogramul returneaz valoarea 3 (divizorii comuni sunt 1, 2 i 4). (10p.) 4. Fiierul BAC.TXT conine 10000 de numere naturale (dintre care cel puin dou impare) cu cel mult 9 cifre fiecare. Numerele sunt separate prin cte un spaiu. a) Scriei un program Pascal care, utiliznd un algoritm eficient din punct de vedere al spaiului de memorare i al timpului de executare, determin i afieaz pe ecran penultimul numr impar din fiier precum i numrul de ordine al acestuia. (6p.) Exemplu: dac fiierul conine valorile alturate, se vor afia numerele 49 9998 (penultimul numr impar este 49 i are numrul de ordine 9998.
b) Descriei n limbaj natural metoda utilizat i explicai n ce const eficiena ei. (4p.)