29 березня 2011 р.

Перевірка знань з теми "Команди розгалуження та повторення"

Задания.
1. Как выглядит полная форма команды ветвления?
a) if ...else...; б) if... then ... else...; в) while... than ..; г) if... then ...
2. Какие из приведенных ниже операторов ветвления записаны не правильно?
a) if х><0 then y:=x-2 else у:=х+2;
б) if x=0 then у:=1024 else y:=x-1024;
в) if x<>0 then y:=x-2; else y:=x+2;
г) if (x<5) and (y>3) then s:=s+1; else s:=s-1;
д) if a
е) if a<>b then b:=a;
ж) if 9 then k:=k+1;3. Какое значение будет иметь переменная a в результате выполнения команды ветвления:
if a4. Какое значение будет иметь переменная d, если после выполнения команды
if d<=4 then c:=5 else c:=10; значение переменной c=5?
А) d=4; Б) d=10; В) d=2;
5. После служебного слова While пишется:
а) условие б) оператор
6. Выход из цикла Repeat происходит при истинности логического выражения (условия):
а) Да б) Нет
7. Цикл While называется с предусловием, т.к. сначала идет условие, затем тело цикла:
а) Да б) Нет
8. В цикле For заранее известно число повторений цикла:
а) Да б) Нет
9. В каком из циклов вначале выполняется тело цикла, а затем проверяется условие выхода из цикла?
a) while; б) for; в) repeat.
10. В каких командах повторения увеличение (уменьшение) счетчика цикла на 1 предусмотрено автоматически:
А) while … do Б) for … to … do В) repeat … until
11. В каком случае, при k=3, тело цикла не будет выполняться ни разу:
А) for i:=k to 10 do s:=s+k; В) for i:=k downto 10 do s:=s+k;
Б) for i:=k to 2 do s:=s+k; Г) for i:=k downto 2 do s:=s+k;
12. Сколько раз будет выполняться цикл? Каким будет значение переменной а после выполнения заданного фрагмента программы?
а:=9; repeat S:=S dіv 2; а:=а+3; until a>18.
13. Указать значение переменной s после выполнения фрагмента программы:
s:=1; for i:=2 downto 2 do s:=s+1;
14. Указать значение переменной s после выполнения фрагмента программы:
s:=1; for i:=5 to 9 do s:=s+1;
15. Указать значение переменной s после выполнения фрагмента программы:
s:=2; i:=0; while i<5 do i:=i+1; s:=s+1/i;
16. Указать значение переменной s после выполнения фрагмента программы:
s:=5; i:=1; while i>1 do begin s:=s+1/i; i:=i-1; end;
17. Указать значение переменной s после выполнения фрагмента программы:
s:=4; i:=1; repeat s:=s+1/i; i:=i-1; until i<=1;
18. Указать значение переменной s после выполнения фрагмента программы:
s:=2; i:=1; repeat s:=s+1/(i+1); i:=i+3; until i>=5;
19. Вычислить сумму n чисел, вводимых с клавиатуры (кратных 3).

Ответы.
1. б
2. а,в,г,ж
3. а=1,7
4. а,в
5. а
6. а
7. а
8. а
9. в
10. б
11. б,в
12. 4 раза, а=21
13. 2
14. 6
15. 2,2
16. 5
17. 5
18. 2,7
19. program z1;
      var a,n,s,i:integer;
      begin
      writeln('введите количество чисел');
      readln(n);
     s:=0;
     for i:=1 to n do
     begin
     writeln('введите поочерёдно n чисел');

     readln(a);
     if a mod 3=0 then s:=s+a;
     end;
     writeln(s);
     end.