Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания по ЯиСП 1-14 ИВТ.doc
Скачиваний:
53
Добавлен:
01.04.2015
Размер:
648.7 Кб
Скачать

Задания для самостоятельного выполнения лабораторной работы 4:

1 Определить и вывести на печать номер квадранта, в котором располо­жена точка М(х,у).

2 Даны действительные числа X, Y. Меньшее из этих двух чисел заменить их полусуммой, а большее - их удвоенным произведением. Результат вычисления вывести на экран монитора.

3 Даны три действительных числа. Возвести в квадрат те из них, значе­ния которых неотрицательны. Результат вычисления вывести на экран монитора.

4 Написать программу вычисления значения функции

y= х*х, если 0<х<2;

у =х+4, если -2<х<=0;

y=0, в остальных случаях.

5 Написать программу выбора наибольшего из трёх чисел.

6 Даны х, у. Если х и у отрицательны, то каждое значение заменить его модулем; если отрицательно только одно из них, то оба значения уве­личить на 0.5; если оба значения неотрицательны, то оба значения увеличить в 10 раз.

7 Выяснить, принадлежит ли точка М(х,у) кругу радиуса r с центром в точке с координатами а,b.

8 Определить, принадлежит ли точка М(х,у) кольцу с центром в начале координат, внешним радиусом R1, и внутренним радиусом R2.

9 Даны три числа а, b, с. Выяснить, верно ли, что а<Ь<с. Ответ полу­чить в текстовой форме: верно или неверно.

10 Определить, является ли частное чисел а и b, округлённое до ближай­шего целого чётным числом.

Лабораторная работа 5.

Управляющие конструкции языка Оператор выбора.

В системе программирования TurboPascal 7.0 для организации алго­ритмов с ветвлениями, наряду с условным оператором применяют оператор выбора.

Оператор "выбор".

Его часто используют для замены конструкций из вложенных условных операторов. Управляющая конструкция "выбор" является идеальным средс­твом для обработки ситуаций со многими (более чем двумя) исходами, т.е. в случае, когда условие может принимать более двух значений. Оператор "выбор" имеет следующую структуру:

CASE<порядковая переменная>OF<значение 1>: <оператор 1>; <значение 2>: <оператор 2>;

...

<значение N>: <оператор N>; [ELSE<оператор N+l>]; END; {CASE}

В этой структуре:

<порядковая переменная> - порядковая переменная значение которой про­веряется;

<значение *> - константы, с которыми сравнивается значение порядковой

переменной;

<оператор *> - операторы, из которых выполняется тот, с константой кото­рого совпадает значение порядковой переменной;

Ветвь оператора else является необязательной. Если она отсутству­ет, и значение порядковой переменной не совпадает ни с одной из пере­численных констант, весь оператор рассматривается как пустой. В отли­чии от оператора IF перед словом else точку с запятой можно ставить.

Если для нескольких констант нужно выполнять один и тот же опера­тор, их можно перечислить через запятую сопроводив их одним операто­ром. Существует возможность указать диапазон возможных значений. Нап­ример, диапазон от 1 до 100 включительно указывается так:

1 .. 100

Пример.

CASE i OF

2, 4, 6, 3: Writeln(‘Чётнаяцифра’);

3, 5, 7, 9: Writeln('Нечётная цифра'); 10 .. 100: Writeln(‘Число от 10 до 100’);

ELSE

Writeln('Отрицательное число или больше 100'); END; {CASE}

Как вы уже заметили, в операторе выбор после двоеточия мо­жет указываться только один оператор. Для того, чтобы выполнить нес­колько операторов, так же как и в условном операторе, применяют сос­тавной оператор.

CASE<порядковая переменная>OF<значение 1>: begin

<оператор 1 1>; ...

<оператор 1 n>end;

<значение 2>: begin

<оператор 2 1>; ...

<оператор 2 n>end;

. .

<значение N>: begin

<оператор N 1>; ...

ELSE

<оператор N n>end;

begin

<оператор Е 1>; ...

<операторЕn>end; END; {CASE}

Важное замечание.

Необходимо заметить, что из всех возможных ветвей операторов уп­равляющей конструкции выбор, выполняется только одна ветвь, даже если значение порядковой переменной совпадает с несколькими возможными зна­чениями, отвечающими за разные ветви операторов. Выполняется та ветвь, которая расположена раньше. Как видно из блок-схемы значение порядко­вой переменной сравнивается последовательно со всеми возможными значе­ниями, и как только найдётся значение, которому равна порядковая пере­менная, выполняется ветвь операторов, сравнения прекращаются и управ­ляющая конструкция прекращает свою работу. Поэтому при составлении программ с использованием управляющей конструкции "выбор", раньше не­обходимо располагать более "строгие" последовательности операторов.

Контрольные вопросы.

1 Для чего предназначен оператор выбора?

2 Могут ли выполниться несколько ветвей оператора "выбор" за один раз?

3 Сколько операторов можно написать после возможного значения пере­менной?

4 Может ли сразу несколько констант фигурировать в качестве возможно­го значения переменной?