Программирование на языке Pascal

На главную

Введение

Алгоритм

Язык Pascal

Переменные, константы, типы

Выражения языка Pascal

Условные операторы языка Pascal

Циклы языка Pascal

Массивы языка pascal

Записи в языке Pascal

Строковый тип данных в языке Pascal

Процедуры и функции для работы со строками в языке Pascal

Лабораторная работа № 1 «Алгоритмы ветвления»

Лабораторная работа № 2 «Циклические алгоритмы»

Лабораторная работа № 3 «Обработка массивов»

Лабораторная работа № 4 «Работа со строками и записями»

Список литературы


Операторы условного перехода в языке Pascal


Для реализации ветвящегося алгоритма в языке Pascal существуют операторы условного перехода, которые приводят к выполнению того или иного блока программы, в зависимости от выполнения или невыполнения некоторого условия, либо условий. Рассмотрим конструкцию IF-THEN-ELSE

Листинг 2. Применение IF-THEN-ELSE
const c = 4;
var i:integer;
begin
      writeln(‘input your last mark:’);
      readln(i);
      if (i > c) then begin
        writeln(‘very nice’);
        inc(i)
       end
       else writeln(‘you must work more’)

Если пользователь введет значение переменной больше, чем заданно константой, то на экране появится похвала, иначе, будет предложено больше работать для получения оценки выше. Обратите внимание, что перед оператором else не должно быть символа «;». Еще одна конструкция для реализации ветвящихся алгоритмов – это конструкция CASE-OF-ELSE-END. В отличие от конструкции IF-THEN-ELSE, она позволяет задавать несколько условий. В языке программирования Pascal результат выражения, используемый для выбора варианта дальнейшего выполнения программы, должен относиться к порядковым (ordinal) типам данных.

Листинг 3. Применение CASE-OF-ELSE-END
const y = 1; b = 4;
var x: integer;
begin
      readln(x);
      case x of
        y: writeln('y'); (* если x = y *)
        b: writeln('b'); (* если x = b *)
        4,5,6,7: writeln('[4,7]') (* если x от 4 до 7 *)
        else
         writeln('not match');
      end
end.


Обратите внимание на то, что третий из блоков case содержит дублирование условия: если пользователь введет с клавиатуры 4, то выполнится только второе по порядку условие (3-е игнорируется, так как выполнилось условие выше).