Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Объектно-ориентированный анализ и программирование__.rtf
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
239.1 Кб
Скачать

Условный оператор и оператор case

В каких из следующих примеров допущены ошибки:

if (x<1) and (x<2) then x:=x+1 else x:=x*x;

if k div 10 then k:=k+5 else if k<9 then k:=k*3;

if i>n+1 then inc(i) else dec(i);

if i<>n then a:=false else a:=true;

- все примеры правильные

Какое значение примут переменные a и c после выполнения

оператора: (a=1, b=2, c=3, d=4)

if a>b then if c<d then c:=0

else else a:=b;

a=2, c=3

a=1, c=0

a=2, c=0

значения а и с не изменятся

в выражении допущена ошибка

Если переменная c-символьного типа, k-целого типа, то какой тип ошибки

содержит оператор:

case c of

'a'..'z':writeln('символ');

'0'..'9':writeln('цифра');

else c:=chr(k);

end;

ошибок нет

синтаксическая ошибка

константы в альтернативах повторяются

тип констант не соответствует типу выражения-"ключа"

тип выражения-"ключа" не является дискретным

Если переменная k-целого типа, c-символьного типа,

то какой тип ошибки содержит оператор?

case k div 3 of

0..9: c:=chr(k div 3+48);

1,11,2,22: c:=chr(k);

end;

ошибок нет

синтаксическая ошибка

константы в альтернативах повторяются

тип констант не соответствует типу выражения-"ключа"

тип выражения-"ключа" не является дискретным

Если переменная s-перечислимого типа, то какой тип ошибки содержит оператор?

case s of

1: writeln('start');

2: writeln('stop');

else writeln('error');

end;

ошибок нет

синтаксическая ошибка

константы в альтернативах повторяются

тип констант не соответствует типу выражения-"ключа"

тип выражения-"ключа" не является дискретным

Если y-переменная вещественного типа, k-целого типа,

то какой тип ошибки содержит оператор?

case y of

1..15:y:=y+k;

20,25:y:=y-k;

else y:=y*k

end;

ошибок нет

синтаксическая ошибка

константы в альтернативах повторяются

тип констант не соответствует типу выражения-"ключа"

тип выражения-"ключа" не является дискретным

Если y-переменная вещественного типа, k-целого типа,

то какой тип ошибки содержит оператор?

case k of

1..15:y:=y+k

20,25:y:=y-k

else y:=y*k

end;

ошибок нет

синтаксическая ошибка

константы в альтернативах повторяются

тип констант не соответствует типу выражения-"ключа"

тип выражения-"ключа" не является дискретным

В каких из следующих примеров допущены ошибки:

if 1<x then begin x:=x+1; y:=0 end else x:=0;

if x > 0 then if x < 5 then a=x else a:=x+5;

if a + 2 < b then b:= 3 else b:= 1 ;

if a<2 then;

- ошибок нет

Какое значение примут переменные a и c после выполнения

оператора: (a=9, b=3, c=6, d=1)

if a>b then if c<d then c:=0 else a:=b;

a=3, c=6

a=3, c=0

a=9, c=0

значения а и с не изменятся

в выражении допущена ошибка

В каких из следующих примеров допущены ошибки:

if x<2 then begin x:=x+1; y:=0 end else x:=0;

if x <> 0 then if y <> 0 then a:=x else a:=x+y;

if odd(a+b) then b:= a+345; else b:=-a;

if x>0 and x<5 then x:= sin(x) else x:= sin(abs(x));

- ошибок нет

Какое значение примут переменные b и d после выполнения

оператора: (a=1, b=0, c=-3, d=4)

if a>b then if c<d then d:=abs(c) else else b:=a+1;

d=4, b=2

d=3, b=0

d=-3, b=0

значения d и b не изменятся

в выражении допущена ошибка

Если переменная k-целого типа, s-символьного типа,

то какой тип ошибки содержит оператор?

case chr(ord(s)+1) of

'F'..'Z': k:=ord(s);

'c','g': k:=ord(s)-5;

else k:=ord(s)+1

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если f-переменная вещественного типа, k-целого типа,

то какой тип ошибки содержит оператор?

case f/4 of

1: f:=f*k;

2,3: f:=f*k+1;

else f:=f+k

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если переменная k-целого типа, s-символьного типа, l-логического типа,

то какой тип ошибки содержит оператор?

case l and odd(k) of

1: s:=chr(k);

0: s:=chr(k-1);

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если переменная k-целого типа, s-символьного типа, l-логического типа,

то какой тип ошибки содержит оператор?

case k*2 of

1..12: begin l:=true; s:='t' end;

0,8: begin l:=false; s:='f' end;

else writeln('error');

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если переменная k-целого типа, s-символьного типа,

то какой тип ошибки содержит оператор?

case chr(ord(s)+1) of

'F'..'Z': k:=ord(s); s:='a';

'c','g': k:=ord(s)-5; s:='t';

else k:=ord(s)+1; s:='i';

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если переменные x и k-целого типа,

то какой тип ошибки содержит оператор?

case (k mod 3)/ x of

1..8: x:=x*k;

9..20: x:=x*k+1;

else x:=x+k

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если k-целого типа, c-символьного типа,

то какой тип ошибки содержит оператор?

case ord(c) of

32..127: k:=ord(c);

0..31: k:=ord(c)-5;

else k:=ord(c)+1

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если x , k-целого типа,

то какой тип ошибки содержит оператор?

case chr(x*2) of

#1..#67: k:=x div 3;

#45..#128: k:= x mod 3;

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Если c-символьного типа, b-логического типа,

то какой тип ошибки содержит оператор?

case not b xor (c>#32) of

'a'..'z': begin b:=true; c:='t' end;

'1'..'9': begin b:=false; c:='f' end;

else writeln('error');

end;

- ошибок нет

- синтаксическая ошибка

- константы в альтернативах повторяются

- тип констант не соответствует типу выражения-"ключа"

- тип выражения-"ключа" не является дискретным

Какого типа может быть выражение-"ключ" в операторе CASE?

- любого дискретного типа

- любого целочисленного типа

- любого простого типа

- любого перечислимого типа

- любого типа

Каким образом запрещено задавать константы в альтернативах

в операторе CASE?

одиночная константа

список констант

диапазон значений

выражение

нет правильного ответа

Допускает ли ветвь ELSE следование нескольких операторов?

зависит от ситуации

Да, в любом случае

Нет

Да, если сгруппировать их в составной оператор

Нет правильного ответа

Какое максимальное количество ветвей возможно у условного оператора?

Одна

Две

Три

Четыре

Нет правильного ответа