BluePink BluePink
XHost
Servere virtuale de la 20 eur / luna. Servere dedicate de la 100 eur / luna - servicii de administrare si monitorizare incluse. Colocare servere si echipamente de la 75 eur / luna. Pentru detalii accesati site-ul BluePink.

TEST DE BACALAUREAT
Profil matematică-informatică - Varianta Pascal

Timpul efectiv de lucru este de 3 ore. Se acordă 10 puncte din oficiu.
<< Back
I. Pentru fiecare dintre itemii de la 1 la 10, scrieţi pe foaia de examen litera corespunzătoare răspunsului corect. Fiecare răspuns corect se notează cu 4 puncte.

1. Care este numărul de elemente al fiecăruia din tablourile următoare:
type vector=array[-1..1] of integer;
var x:array[1..10] of vector;
a:array[char,boolean]of integer;
b:array[‘0’..’9’] of real;
a) 30 512 10
b) 10 256 10
c) 30 256 9
d) 30 512 9

2. Se consideră că într-un program variabila a reţine valorile elementelor unui tablou binar unidimensional. Care din referirile următoare la un element al variabilei a este incorectă ?
declaraţia variabilei a: var a:array[0..10] of 0..1;
a) a[a[2]]
a[1+4 div 2]
a[sqrt(3+1)]
a[abs(a[1])]

3. Care dintre următoarele declaraţii reprezintă antetul corect al unui subprogram care calculează media aritmetică a două numere întregi x şi y?
a) function f(x,y:integer):integer;
function f(x,y:integer);
procedure f(x,y:integer):real;
function f(x,y:integer):real;

4. Enunţul "dacă şirul s conţine cel puţin p caractere, atunci şterge primele p-1 caractere din s", se traduce prin secvenţa de program:
a) if p<length(s) then delete(s,1,p-1);
if length(s)>=p then delete(s,1,p-1);
if s>=p then delete(p-1,1,s);
if p<=length(s) then delete(1,p-1,s);

5. Ce va afişa următoarea procedură la apelul afiş (1), pentru n=2?
procedure afiş (i : integer);
begin
if i<=n then begin
write(i*i);
afiş (i+1);
write(‘*’);
end;
end;
1*4*
12**
14**
1*2*

6. Se consideră un arbore cu rădăcină în care orice nod care nu este terminal are exact 3 descendenţi direcţi. Atunci numărul de noduri terminale ale arborelui poate fi :
a) 2
24
15
14

7. Care dintre următoarele secvenţe atribuie variabilei s suma cifrelor numărului natural x de două cifre ?
a) s:=x + x ;
s:= x mod 10 + x div 10 ;
s:= (x div 10) mod 10 + x div 10 ;
s:=( x mod 10) div 10 + x div 10 ;

8. Care este numărul minim de arce ce trebuie adăugate astfel incât graful alăturat să devină tare conex :
a) 0; b) 1; c) 2; d) 3.

 

9. Pentru a determina toate modalităţile de a scrie pe 9 ca sumă de numere naturale nenule distincte (abstracţie făcând de ordinea termenilor), un elev foloseşte metoda Backtracking generând, în această ordine, toate soluţiile: 1+2+6, 1+3+5, 1+8, 2+3+4, 2+7, 3+6 şi 4+5. Aplicând exact aceeaşi metodă, el determină sumele diferite pentru scrierea lui 12. Care este a 8-a soluţie determinată?
a) 1+5+6
2+3+7
1+11
3+4+5

10. O listă liniară înlănţuită este compusă din elemente care memorează în câmpul adr adresa elementului următor. Dacă adresa de început a listei este p şi u este adresa ultimului element, atunci transformarea listei în listă circulară se realizează prin instrucţiunea:
a) u^.adr:=p
p^.adr:=u
p:=u^.adr
u:=p^.adr

II. Se consideră programul pseudocod alăturat:
Ce se va afişa pentru a=7 si b=3. (5 p)
Daca se citeşte a=0, câte numere naturale de 3 cifre se pot introduce pentru b astfel încât sa se afişeze valoarea 0. (2 p)
Scrieţi programul Pascal corespunzător algoritmului dat. (8 p)
Să se scrie un algoritm echivalent cu cel dat, dar care să nu utilizeze nici o structură repetitivă. (5 p)

Citeste a, b (numere naturale)
c ← 0
Pentru i ← 1, b executa
j ← a
Cat timp j > 0 executa
c ← c+1
j ← j-1

Scrie c

III. 1. a) Să se scrie antetul unui subprogram grad care primeşte prin intermediul primului parametru x un număr natural reprezentând vârful unui graf neorientat cu n noduri (n<50) şi returnează prin al doilea parametru g gradul (valenţa) nodului respectiv. (3 p)
b) Folosind apeluri ale subprogramului grad, scrieţi declarările de date şi programul principal pentru a afişa numărul total de muchii din graful dat. (7 p)
Observaţie. Modul de reprezentare în memorie a grafului dat nu se ia în considerare la rezolvarea problemei.

2. Să se creeze fişierul „numere.out” care conţine pe prima linie, separate prin spaţiu, primele n numere naturale pare, pătrate perfecte. Valoarea lui n se citeşte de la tastatură. (10 p)
Exemplu. pentru n=7, fişierul „numere.out” conţine: 0 4 16 36 64 100 144

3. Se citeşte de la tastatură un număr natural nenul S (S<60000). Folosind un algoritm eficient, să se afişeze toate perechile de numere naturale nenule, cu proprietatea că cele două numere din pereche îndeplinesc simultan următoarele condiţii:
- primul număr din pereche este întotdeauna strict mai mare decât al doilea
- cele două numere din pereche nu au nici un divizor comun.
- suma celor două numere din pereche este egală cu S. (10 p)
Exemplu: S = 20, se vor afişa perechile(nu neapărat în această ordine):
19 1 ; 17 3 ; 13 7 ; 11 9

Prof. Vasilica Tomulescu, Prof. Dumitru Tomulescu, Colegiul Naţional „Ecaterina Teodoroiu” Târgu-Jiu

<< Back