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

Алгоритмическая структура ветвления программируется в языке Pascal с помощью условного оператора.

Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие.

Таким образом, условный оператор – это средство ветвления вычислительного процесса.

Условный оператор позволяет выбрать одно из двух действий. Существует 2 вида условного оператора:

1) if <условие> then <оператор 1> - неполная форма;

2) if <условие> then < оператор 1> else < оператор 2> - полная форма;

где if, then, else – зарезервированные слова («если», «то», «иначе»); оператор 1,оператор 2 – любые операторы языка Pascal.

Операторы бывают простые и составные.

Простой оператор состоит из одного оператора.

Если при некотором условии надо выполнить определенную последовательность операторов, то их объединяют в один составной оператор. Составные операторы заключаются в операторные скобки begin и end.

Условный оператор будет иметь вид:

if условие then begin …… end else begin …… end.

Пример. Составить программу, определяющую наименьшее значение из двух чисел.

Program Minimum; Var a, b, min : real; begin writeln('Введите два числа'); write('a='); readln(a); write('b='); readln(b); if a< b then min:=a ELSE min:=b; writeln ('Минимальное из двух чисел ',min); end.

Вложенные операторы ветвления

Когда после ключевых слов then или else вновь используются условные операторы, они называются вложенными. Число вложений может быть произвольно, при этом действует правило:else всегда относится к ближайшему оператору if, для которого ветка else еще не указана, однако это можно изменить с помощью операторных скобок.

Оператор множественного ветвления (оператор выбора)

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

Оператор выбора является обобщением условного оператора: он дает возможность выполнить один из нескольких операторов в зависимости от значения некоторого выражения, называемого селектором.

В общем случае оператор имеет вид:

case <селектор> of <метка 1>:<оператор 1>; <метка 2>:; ............................ <метка N>:<оператор N> else <оператор (n+1)>; end;

где case (выбор), of (из ), end (конец) – зарезервированные слова;

СЕЛЕКТОР – переменная или выражение порядкового типа;

ОПЕРАТОР – любой оператор языка, в том числе и составной;

МЕТКА – список значений выражения СЕЛЕКТОР или одно его значение.

Тип МЕТКИ совпадает с типом СЕЛЕКТОРА и состоит из любого числа отделенных друг от друга запятыми констант или диапазонов, за которыми следует двоеточие, например:

case berdsight of 'C','c': curlews := curlews+1; 'H','h': herons := herons+1; 'E','e': egrets := egrets+1; 'T','t': terns := terns+1; end;

Диапазоны записываются как две константы, отделенные друг от друга разделителем диапазона '..'. MЕТКА ВАРИАНТА – необычная метка: это не обязательно целое число, она не описывается в разделе label, на нее нельзя ссылаться в операторе goto.

ОПЕРАТОР, который следует за МЕТКОЙ, выполняется, если значение СЕЛЕКТОРА равно одной из констант или если он лежит внутри одного из диапазонов. В противном случае будет выполняться оператор, следующий за case.

Селектор иногда называют ключом выбора.

Пример. Определить день недели по его номеру.

program day; var n: integer; Begin write('введите число 1–7 n= '); readln(n); case n of 1: writeln('понедельник '); 2: writeln('вторник '); 3: writeln('среда '); 4: writeln('четверг '); 5: writeln('пятница '); 6: writeln('суббота '); 7: writeln('воскресенье'); else writeln('дня недели с номером ', n,' нет'); end; end

Следует помнить, что все константы из списка выбора должны быть различны.

Любому из операторов списка выбора может предшествовать не одна, а несколько констант выбора, разделенных запятыми. Например, следующая программа при вводе одного из символов ‘y’ или ‘Y’ выведет на экран «Да», а при вводе ‘n’ или ‘N’ – слово «Нет».

Пример программы с использованием Case of с несколькими переменными.

Program P1; Var ch: char; Begin Write('Введите значение переменной: '); Readln(ch); Case ch of 'N', 'n': writeln('Да '); 'Y', 'y': writeln('Нет '); End; End.

Пример программы, которая по заданному символу определяет, к какой группе он относится.

Program P2; Var c: char; Begin Write('Введите символ: '); Readln(c); case c of 'A'..'Z','a'..'z': writeln ('Латинская буква'); 'А'..'Я','а'..'п','р'..'я': writeln ('Русская буква'); '0'..'9': writeln ('Цифра'); else writeln ('Другой символ'); end; end

Тест.Блок-схема


    Инструкция
  1. Что такое Блок-схема
    Это определенный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий.
    Формула
    Это определенным образом организованная последовательность действий, за конечное число шагов приводящая к решению задачи.
    Графический способ представления алгоритма, каждое действие при этом осуществляется рисованием последовательности геометрических фигур, каждая из которых подразумевает выполнение определенного действия алгоритма. Порядок выполнения действий указывается стрелками.

  2. Что НЕ является основным элементом блок-схемы
    Блок вычислений
    Логический блок
    Разделитель
    Соединитель

  3. Базовые структуры алгоритмов - ...
    Это определенный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий
    Выборка определенных действий
    Алгоритм предназначенный для записи других алгоритмов
    Сложный код

  4. Как называется цикл с предусловием
    Цикл «Пока»
    Цикл «До»
    Цикл «После»
    Цикл «От»

  5. Какое правила НЕ нужно использовать для создания циклов с параметром
    Параметр цикла, его начальное и конечное значения и шаг должны быть одного типа
    Запрещено изменять в теле цикла значения начальное, текущее и конечное для параметра
    Запрещено входить в цикл, минуя блок модификации
    Запрещено выходить из цикла

    

Назад Далее
Наверх