Полный условный оператор на паскале

Полный условный оператор на паскале

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

Чаще всего в качестве условного оператора в языках программирования используется конструкция if-else или ее сокращенный вариант if. Также существует оператор выбора case, который имеет более специфичное применение.

Оператор if-else

Когда выполнение основной ветки программы доходит до условного оператора if-else, то в зависимости от результата логического выражения в его заголовке выполняются разные блоки кода. Если логическое выражение вернуло true, то выполняется один блок (в Паскале начинается со слова then), если false – то другой (начинается со слова else). После выполнения одного из вложенных блоков кода, ход программы возвращается в основную ветку. Другой вложенный блок не выполняется.

Например, программа должна определять, ввел пользователь четное или нечетное число, и выводить на экран сообщение. Тогда программный код на языке Pascal может быть таким:

Бывают неполные формы условных операторов. В таком случае вложенный в if блок кода выполняется только в случая true логическом выражении заголовка. В случае false выполнение программы сразу передается в основной блок. Понятно, что ветка else в таком случае отсутствует.

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

Программирование. Условные операторы Pascal-Паскаль

  • Скачено бесплатно: 7632
  • Куплено: 414
  • Pascal-Паскаль->Программирование. Условные операторы Pascal-Паскаль

Условные операторы Pascal-Паскаль

Условные операторы позволяют выбирать для выполнения те или иные части программы в зависимости от некоторых условий. Если, например, в программе используются вещественные переменные x и z, и на каком-то этапе решения задачи требуется вычислить z=max(x, y), то желаемый результат получается в результате выполнения либо оператора присваивания z:=x, либо оператора присваивания z:=y. Поскольку значения переменных x и y заранее неизвестны, а определяются в процессе вычислений, то в программе необходимо предусмотреть оба эти оператора присваивания. Однако на самом деле должен выполниться один из них. Поэтому в программе должно содержаться указание о том, в каком случае надо выбирать для исполнения тот или иной оператор присваивания.

Это указание естественно сформулировать с использованием отношения x>y. Если это отношение при текущих значениях x и y справедливо (принимает значение true), то для исполнения должен выбираться оператор z:=x; в противном случае для исполнения должен выбираться оператор z:=y (при x=y безразлично, какой оператор выполнять, так что выполнение оператора z:=y в этом случае даст правильный результат).

Читайте также:  Хитман блуд мани системные требования

Для задания подобного рода разветвляющихся вычислительных процессов в языках программирования существуют условные операторы. Рассмотрим полный условный оператор Паскаля:

Здесь if (если), then (то) и else (иначе) являются служебными словами, В – логическое выражение, а S1 и S2 – операторы.

Выполнение такого условного оператора в Паскале сводится к выполнению одного из входящих в него операторов S1 или S2: если заданное в операторе условие выполняется (логическое выражение В принимает значение true), то выполняется оператор S1, в противном случае выполняется оператор S2.

Алгоритм решения упомянутой выше задачи вычисления z= max( x, y) можно задать в виде условного оператора Паскаля

При формулировании алгоритмов весьма типичной является такая ситуация, когда на определенном этапе вычислительного процесса какие-либо действия надо выполнить только при выполнении некоторого условия, а если это условие не выполняется, то на данном этапе вообще не нужно выполнять никаких действий. Простейшим примером такой ситуации является замена текущего значения переменной х на абсолютную величину этого значения: если x =0, то текущее значение х должно остаться без изменений, т.е. на данном этапе вообще не надо выполнять каких-либо действий.

В подобных ситуациях удобна сокращенная форма записи условного оператора в Паскале:

Правило выполнения сокращенного условного оператора Паскаля достаточно очевидно: если значение логического выражения В есть true, то выполняется оператор S; в противном случае никаких иных действий не производится.

В языке программирования Паскаль в условном операторе между then и else, а также после else по синтаксису может стоять только один оператор. Если же при выполнении (или невыполнении) заданного условия надо выполнить некоторую последовательность действий, то их надо объединить в единый, составной оператор, т.е. заключить эту последовательность действий в операторные скобки begin. end (это важно!). Если, например, при x of

[else ] end

Здесь case, of, else, end – зарезервированные слова (случай, из, иначе, конец);

  • — выражение порядкового типа;
  • — одна или более конструкций вида:
  • : ;
  • — константа того же типа, что и выражение
    • ;
    • — произвольные операторы Паскаля.

      Оператор выбора Паскаля работает следующим образом. Вначале вычисляется значение выражения , а затем в последовательности отыскивается константа, равная вычисленному значению. Выполняется оператор, который следует за найденной константой, после чего оператор выбора завершает работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора, управление передается операторам, стоящим за словом else. Часть else можно опустить, тогда при отсутствии в списке выбора нужной константы не будет выполнено никаких действий, и оператор выбора просто завершит свою работу.

      Читайте также:  Билайн детализация интернет трафика

      Например, составим программу, которая по номеру дня недели выводит на экран его название:

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

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

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

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

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

      Программирование

      Исходники Pascal (127)

      Справочник

      Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту

      Урок из серии: «Язык программирования Паскаль»

      Один из важнейших операторов Паскаля – условный оператор. Он позволяет изменять порядок выполнения операторов в зависимости от некоторого условия, представляющего собой логическое выражение типа Boolean. Если значение равно True, то выполняется одна группа операторов, если False, то другая группа операторов или не выполняется ничего.

      В языке Паскаль имеются два условных оператора: if (оператор ветвления) и case (оператор выбора). Оператор if обеспечивает выбор из двух альтернатив, оператор выбора case позволяет сделать выбор из произвольного числа имеющихся вариантов.

      На этом уроке рассмотрим оператор If.

      Условный оператор If (оператор ветвления)

      Полная формы условного оператора называется If-then-else, имеет вид:

      Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

      Слова if (если) и Then (то) – зарезервированные.

      Замечание. Перед ключевым словом else (иначе) точка с запятой не ставится, она ставиться после всего оператора If.

      Условие представляют собой логические выражение. Простые условия записываются в виде равенств или неравенств. В сложных условиях несколько простых условий объединяются с помощью логических операций or, and. В этом случае простые условия заключаются в круглые скобки.

      На рисунке показана блок-схема полной формы оператора.

      Алгоритм выполнения полного условного оператора:

      1. Проверяется значение логического выражения, записанного в условии после слова If
      2. Если условие истинно (значение выражения условие равно True), то выполняется оператор 1, указанный после слова Then
      3. Если условие ложно, то выполняется оператор 2, записанный после слова Else.

      Неполная форма условного оператора называется if-then, имеет вид:

      Читайте также:  Ячейки для яиц в холодильник

      Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

      В неполном ветвлении ветвь Else отсутствует.
      На рисунке показана блок схема оператора if-then.

      Алгоритм выполнения неполного условного оператора

      1. Проверяется значение логического выражения, записанного в условии после слова If
      2. Если условие истинно (значение выражения условие равно True), то выполняется операторы, указанный после слова Then
      3. Если условие ложно, то ничего делать не надо. Происходит переход к следующему оператору.

      Операторы ветвления могут быть вложенными, т.е. один оператор if можно расположить внутри другого. В этом случае он позволяет производить выбор более чем из двух вариантов. При написании исходного кода с вложенными операторами для удобочитаемости кода вложенные операторы выделяются отступами.

      Применение условного оператора if рассмотрим на примерах.

      Пример 1. С клавиатуры ввести два различных числа. Найти большее из них и вывести его на экран.

      В этом примере нужно произвести выбор одного из двух вариантов, для этого используется оператор ifthenelse.

      Пример 2. Даны три отрезка. Можно ли из них построить треугольник?

      Решение. Для любого треугольника сумма его двух сторон должна быть больше третьей стороны (неравенство треугольника). Если a, b, c – стороны предполагаемого треугольника, то нужно сравнить длину каждого отрезка с суммой двух других. Если хотя бы в одном случае отрезок окажется больше суммы двух других, то треугольник из таких отрезков не построить.

      Для решения этой задачи используется оператор ifthenelse со сложным условием.

      Задачи для самостоятельного выполнения

      1. Найти наибольшее из трех данных чисел.
      2. Запишите условный оператор, в котором значение переменной вычисляется по формуле: a + b, если a — нечетное и a*b, если a — четное.
      3. Вывести на экран номер четверти, которой принадлежит точка с координатами (x, y), при условии, что x и y отличны от 0.
      4. После выполнения операторов
        a := 0;
        If a<>0 Then; a := 2
        значение переменной равно двум. Объясните почему.
      5. Если целое число M делится нацело на целое число N, то вывести на экран частное от деления, в противном случае — сообщение »M на N нацело не делится».

      На этом уроке рассказывалось об условном операторе if и его применении при решении задач. Простой оператор ветвления используется для для выбора одного из двух возможных продолжений алгоритма, для выбора более чем из двух продолжений можно использовать вложенный оператор ветвления.

      Проверь себя!

      Видеоурок на тему «Условный оператор» от проекта INFOUROK.RU (Игорь Жаборовский).

      Понравился видеоурок? Еще 25 видеоуроков Игоря Жаборовского вас ждут здесь!

      Ссылка на основную публикацию
      Adblock detector