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

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

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

CASE <порядковая переменная> OF

<значение 1>: <оператор 1>;

<значение 2>: <оператор 2>;

. . .

<значение N>: <оператор N>;

[ELSE <оператор N+1>];

END; {CASE}

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

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

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

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

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

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

Пример.

CASE i OF

0, 2, 4, 6, 8: Writeln('Чётная цифра');

1, 3, 5, 7, 9: Writeln('Нечётная цифра');

10 .. 100: Writeln('Число от 10 до 100');

ELSE

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

END; {CASE}

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

Варианты заданий

  1. Определить и вывести на печать номер квадранта, в котором расположена точка M(x,y).

  2. Даны 2 действительных числа Х и У. Меньшее заменить полусуммой, а большее – удвоенным произведением. Вывести результат на экран.

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

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

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

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

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

  8. Ввести номер дня недели и вывести соответствующее название дня недели на русском и английском языках.

  9. Вводится номер месяца, вывести на экран соответствующее ему время года.

  10. Вводится время (только часы). Вывести соответствующее приветствие: Добрый день, Доброе утро, Добрый вечер, Спокойной ночи.

Варианты заданий

  1. Дано натуральное число N. Вычислить сумму цифр этого числа.

  2. Вычислить сумму ряда для n элементов

, (для k от 1 до n).

  1. В ЭВМ по очереди поступают результаты соревнований по плаванию на дистанцию 200 м, в которых участвуют N спортсменов. После ввода всех данных вывести лучший результат.

  2. Вычислить значение факториала числа, введенного пользователем с клавиатуры.

  3. Вычислить и вывести на экран значения функции y=x^3-x^2+16x-43 для х, изменяющегося от -4 до 4 включительно с шагом 0.5.

  4. Напишите программу, вычисляющую значения функции

для х, изменяющегося от -5 до 3 с шагом 0.25.

  1. Вычислите сумму ряда S=sin(1)+sin(2)+…+sin(n) для n введенного с клавиатуры.

  2. Определить количество натуральных чисел, рассматривая их в порядке возрастания, сумма кубов которых не более 50 000.

  3. Вычислить A(A+1)(A+2)…(A+N) для A и N, введенных с клавиатуры.

  4. Вычислить сумму первых n слагаемых ряда

для n введенного с клавиатуры.