Documente Academic
Documente Profesional
Documente Cultură
MULTIPLE CHOICE
şi testul:
{( x = 0, y = 1) , ( x = 1. y = 0 )}
Care din următoarele afirmaŃii sunt adevarate:
a. Testul acoperã toate condiþiile simple
b. Testul acoperã toate drumurile
c. Testul acoperã 3 drumuri
d. Testul acoperã 4 drumuri
2. Fie instrucŃiunile următoare:
if x <> 0 then z := 0;
else z := 1;
if y <> 0 then z := 2
else z := 1/(x + y)
şi testul:
{( x = 0, y = 1) , ( x = 1, y = 0 ) , ( x = 0, y = 0 ) , ( x = 1, y = 1)}
Care din următoarele afirmaŃii sunt adevarate:
a. Testul acoperã toate condiþiile simple
b. Testul acoperã toate drumurile
c. Testul acoperã doar 3 drumuri
d. ) Testul acoperã doar 2 drumuri
3. Fie instrucþiunile urmãtoare:
if (x <> 0) and (y <> 0) then
z := 0
else z := 1 / y
şi testul :
{( x = 1, y = 1) , ( x = 0, y = 1)}
Care din următoarele afirmaŃii sunt adevarate:
a. Testul asigurã acoperirea celor douã arce
b. Testul e concludent
c. Testul acoperã toate condiþiile simple
d. La testare se semnaleazã o eroare
1
4.
Fie instrucþiunile urmãtoare :
if c then
if c and d then x :=1 if d then x :=1
else x :=2 ºi
else x :=2
else B
2
6.
Fie urmãtorul program Turbo Pascal:
var x, y : string;
egal : boolean;
i : integer;
begin
write(' x ='); readln(x);
write(' y ='); readln(y);
egal := (length(x) = length(y));
if egal then
for i := 1 to length(x) do
egal := (x[i] = y[i]);
if egal then writeln('x si y sint identice')
else writeln('x si y sint distincte')
end.
Scopul programului este de a verifica dacã ºirurile x ºi y sunt identice. Se cere sã se indice care
test este concludent din urmãtoarele teste:
a. x = 'a'; y = 'a';
b. x = 'abc'; y = 'abc';
c. ✟ x = 'ab'; y = 'cb';
d. x = 'ab'; y = 'ac';
7. Sã presupunem cã pentru determinarea celui mai mare divizor comun pozitiv ( a, b ) a douã numere
întregi a fost scris în limbajul Pascal urmãtorul algoritm:
var a, b, x, y : integer;
begin
read (a, b);
x := abs(a) ; y := abs(b);
while x <> y do
if x > y then x := x - y
else y := y - x;
writeln(x)
end.
3
9. Fie programul:
var x,y : integer;
function e : integer;
begin
e := y;
y := 1 {efect lateral de modificare a
variabilei globale y}
end;
begin
y := 0;
x := e;
writeln ('y=', y)
end.
10.
Fie instrucþiunile urmãtoare, prin care se calculeazã suma elementelor unui ºir finit x1,...
xn de numere întregi (0 ≤ n ≤ 100):
{P : 0 ≤ n ≤ 100}
s := 0; i := n;
while i >= 1 do begin
s := s + x[i];
i := i - 1
end;
n
{Q : s = ∑
k =1
x[k]}
4
11.
Fie algoritmul urmãtor:
{n ≥ 0}
s := 0; i := 1;
while i <= n do begin
s := s + i;
i := i + 1
end
{s = n(n+1)/2}
Care afirmaþie, din urmãtoarele patru, este adevãratã:
a. I : s = ((i - 1)i)/2 & 1 ≤ i ≤ n + 1 este proprietate invariantã
iar t(n,i) = n - i + 1 este funcþie de terminare
b. I : s = ((i - 1)i)/2 & 1 ≤ i ≤ n este proprietate invariantã
iar t(n,i) = n - i + 1 este funcþie de terminare
c. I : s = (i - 1)i & 1 ≤ i ≤ n + 1 este proprietate invariantã
iar t(n,i) = n - i + 1 este funcþie de terminare
d. I : s = ((i - 1)i)/2 & 1 ≤ i ≤ n + 1 este proprietate invariantã
iar t(n,i) = n este funcþie de terminare
12. Fie algoritmul urmãtor:
{x > 0 & y > 0 & x = m & y = n}
while x <> y do
if x > y then x := x - y
else y := y - x
{x = (m, n)}
Care afirmaþie, din urmãtoarele patru, este adevãratã:
a. I : (x, y) = (m, n) & x > 0 & y > 0 este proprietate invariantã
iar t(x,y) = x-y este funcþie de terminare
b. I : (x, y) = 1 & x > 0 & y > 0 este proprietate invariantã
iar t(x,y) = x+y este funcþie de terminare
c. I : (x, y) = (m, n) & x > 1 & y > 0 este proprietate invariantã
iar t(x,y) = x+y este funcþie de terminare
d. I : (x, y) = (m, n) & x > 0 & y > 0 este proprietate invariantã
iar t(x,y) = x+y este funcþie de terminare
13. Fie algoritmul urmãtor:
{x ≥ 0 & y ≥ 0}
p := 0; c := y;
while c > 0 do begin
p := p + x;
c := c - 1
end
{p = x * y}
5
14. Fie algoritmul urmãtor:
{x ≥ 0 & y > 0}
q := 0; r := x;
while r >= y do begin
r := r - y;
q := q + 1
end
{0 ≤ r < y & x = q * y + r}
{x = m & m ≥ 0 & a ≠ 0}
y := 1;
while x > 0 do begin
y := y * a;
x := x - 1
end
{y = am}
{x = m & m ≥ 0}
y := 1;
while x > 0 do begin
y := y + y;
x := x - 1
end
{y = 2m}
6
17. Fie algoritmul urmãtor: