ТЕСТ
1. Какво представлява условието за край на цикъла:
- една единствена булева променлива
- логически израз;
- аритметичен израз
- една единствена булева функция
2. Колко пъти ще се изпълни следващия цикъл и кое е последното отпечатано число:
i:=5;
while i<=5 do
write(i);
- цикълът е безкраен
- 1 път, последното число е 5
- цикълът е грешен
- 0 пъти
3. Какво ще се изведе на екрана в резултат от изпълнението на циклите:
for i:=1 to 5 do
for j:=i to 6-i do
write(j);
- 1234512345
- 123451231
- 12345
- 123452343
4. Колко пъти ще се изпълни следващия цикъл и кое е последното отпечатано число:
N:=123456;
while N>10 do
begin
N := N div 10;
write(N mod 10)
end;
- 5 пъти, последното число е 2
- 6 пъти, последното число е 1
- 5 пъти, последното число е 1
- 6 пъти, последното число е 2
5. Ако a=8, каква е стойността на b след изпълнението на оператора: if (a>4) then b:=5 elsе if (a<4) then b:=-5 else if (a=8) then b:=6 else b:=-6;
- b=6
- b=-5
- b=-6
- b=5
6. Какво е предназначението на дадения оператор:
var n : integer;
. . . .
if n div 10 = 0 then write(‘Yes’)
else write(‘No)
- определя дали N се дели на 10 без остатък
- определя дали последната цифра на N е нула
- определя дали N е четно число
- определя дали N е едноцифрено число
7. Какво ще се изведе на екрана в резултат от изпълнението на откъса:
s:=0;
for i:=1 to 4 do
begin
p:=1;
for j:=1 to i do p:=p*j;
s:=s+p;
end;
write(s);
- 0
- 33
- 32
- 4
8. Посочете колко пъти ще се изпълни тялото на цикъла и каква ще бъде последната стойност на променливата М:
const N=3;
var i, M : integer;
. . . .
M := -1;
for i := -N to N do
if M>7 then M := M div 7
else M := M + 1;
- 6 , 5
- 6 , 6
- 7 , 6
- 7 , 5
9. Колко звездички ще се отпечатат в резултат от изпълнението на циклите:
for i:=1 to 5 do
for j:=i to 5 do
for k:=j to 5 do
write(‘*’);
- 35
- 125
- 13
- 15
10. Колко пъти ще се изпълни следващия цикъл и кое е последното отпечатано число:
for i:=-1 to 1 do
for j:=i to 2 do
write(j);
- няма да се изпълни нито веднъж
- 5 пъти, последното число е 2
- 8 пъти, последното число е 2
- 9 пъти, последното число е 2
11. Кой от изразите дава резултат 1?
- (a+b) mod (b+a)
- a*b mod b*a
- (a+b) div (b+a)
- a*b mod (b+a)
12. Дадено е цяло положително петцифрено число N. Кой от следните изрази връща стойността на цифрата на хилядните в числото:
- N mod 1000
- N mod 10000
- N mod 1000 div 10
- N div 1000 mod 10
13. Колко пъти ще се изпълни следващия цикъл и кое е последното отпечатано число:
i:=4;
repeаt
write(i);
i:=i+2
until i>=4;
- 1 път, последното число е 6
- 0 пъти
- цикълът е безкраен
- 1 път, последното число е 4
14. Къде трябва да се инициализират променливите в условието за край на цикъл с предусловие (while):
- не бива да се инициализират
- в началото на тялото на цикъла
- в края на тялото на цикъла
- преди началото на цикъла
15. Ако x=0, каква е стойността на y след изпълнението на оператора: If x>10 then y:=1 else if x>0 then y:=2 else if x< -10 then y:=3 else y:=4;
- y=4
- y=2
- y=1
- y=3
16. Посочете колко пъти ще се изпълни тялото на цикъла и каква ще бъде последната стойност на променливата М:
const N=3;
var i, M : integer;
. . . .
M := 8;
for i := -N to N do
if M>7 then M := M div 7
else M := M + 1;
- 7 , 7
- 7 , 5
- 6 , 7
- 6 , 5
17. Каква е стойността на израза: 123 mod 10 * 5 div 2 + 45 div 4 mod 2
- 4
- 8
- 1
- 11
18. Каква е стойността на израза: 123 div 10 mod 5 + 45 mod 4 div 2
- 8
- 2
- 1
- грешка при делене
19. Колко пъти ще се изпълни следващия цикъл и кое е последното отпечатано число:
For i:=-5 to 5 do
write(i-1)
- 11 пъти, последното число е 5
- 11 пъти, последното число е 4
- 10 пъти, последното число е 4
- 10 пъти, последното число е 5
20. Колко звездички ще се отпечатат в резултат от изпълнението на циклите:
for i:=1 to 5 do
for j:=1 to i do
for k:=1 to j do
write(‘*’);
- 13
- 15
- 125
- 35
21. Ако x=2, каква е стойността на y след изпълнението на оператора: if (x>4) then y:=1 else if (x<4) then y:=2 else if (x=2) then y:=3 else y:=4;
- y=3
- y=2
- y=1
- y=4
22. Ако x=4, каква е стойността на y след изпълнението на оператора: if (x>4) then y:=1 else if (x<4) then y:=2 else if (x=2) then y:=3 else y:=4;
- y=3
- y=1
- y=4
- y=2
23. Какво е предназначението на дадения оператор:
if not((x=y) or (y=z) or (x=z)) then write(‘Yes’)
else write(‘No’);
- определя дали X, Y и Z имат равни стойности
- определя дали измежду X, Y и Z има поне две равни
- определя дали X, Y и Z имат различни стойности
- определя дали измежду X, Y и Z има равни
24. Ако a=4, каква е стойността на b след изпълнението на оператора: if (a>4) then b:=5 else if (a<4) then b:=-5 else if (a=8) then b:=6 else b:=-6;
- b=6
- b=5
- b=-5
- b=-6
25. Какво е предназначението на дадения оператор:
var n : integer;
. . . .
if n mod 2 <> 0 then write(‘Yes’)
else write(‘No)
- определя дали N е нечетно число
- определя дали N е едноцифрено число
- определя дали последната цифра на N е нула
- определя дали N е четно число
26. Какво е предназначението на дадения оператор:
if (x<0)and(y<0) or (x<0)and(z<0) or (y<0)and(z<0) then write(‘Yes’)
else write(‘No’)
- определя дали измежду X, Y и Z има отрицателни
- определя дали и трите X, Y и Z са отрицателни
- определя дали измежду X, Y и Z няма отрицателни
- определя дали поне две от X, Y и Z са отрицателни
27. След изпълнението на дадения оператор стойността на M е 5. Каква е била стойността на М преди да се изпълни условният оператор?
if (M>6) and (M<20) then M:=M+1
else M:=M-1;
- -1
- 4
- 20
- 6
28. Какво е предназначението на дадения оператор:
var n : integer;
. . . .
if n mod 10 = 0 then write(‘Yes’)
else write(‘No)
- определя дали N е двуцифрено число
- определя дали N е едноцифрено число
- определя дали последната цифра на N е нула
- определя дали N е четно число
29. Какво е предназначението на дадения оператор:
if (x<=y) and (y<=z) then write(‘Yes’)
else write(‘No’)
- определя дали X, Y и Z имат равни стойности
- определя дали X, Y и Z са подредени в нарастващ ред
- определя дали измежду X, Y и Z има равни
- определя дали Y е най-голямото измежду X, Y и Z
30. Каква ще бъде стойността на променливата N при изпълнението на следния програмен фрагмент:
var M, N : integer;
. . . .
M := 0; N := 1;
if M>=0 then
if M=0 then N := -N else N := 0;
- остава непроменена
- сменя знака си
- 2
- 0
31. Каква ще бъде стойността на променливата N при изпълнението на следния програмен фрагмент:
var M, N : integer;
. . . .
M := 1; N := 1;
if M>=0 then
if M=0 then N := -N else N := 0;
- остава непроменена
- 2
- сменя знака си
- 0
32. Ако x=5, каква е стойността на y след изпълнението на оператора: If x>10 then y:=1 else if x>0 then y:=2 else if x< -10 then y:=3 else y:=4;
- y=2
- y=3
- y=1
- y=4
