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

Практическая работа №40

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

 

Цель работы: Освоить работу пользователя с командой условного перехода при работе в среде программирования Турбо Паскаль.

 

Обеспечивающие средства: Сборник описаний практических работ по программированию в среде Pascal; персональный компьютер.

 

Задание: Составить программы, используя условный оператор.

 

Требования к отчету:  Итоги практической работы представить в виде блок-схемы алгоритма и текста программы, привести значения исходных данных и значения полученных результатов, ответить на контрольные вопросы.

 

Технология работы:

 

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

Структура условного оператора имеет следующий вид:

 

IF <условие> THEN <оператор1> ELSE<оператор2>

 

где IF, THEN, ELSE – зарезервированные слова (если, то, иначе);

<условие> - произвольное выражение логического типа;

<оператор1>, <оператор2> - любые операторы языка Турбо Паскаль.

    Условный оператор работает по следующему алгоритму. Вначале вычисляется условное выражение <условие>. Если результат есть TRUE (истина), то выполняется <оператор1>, а <оператор2> пропускается; если результат есть FALSE (ложь), наоборот, <оператор1> пропускается, а выполняется <оператор2>.

      Пример:

                        Var

                                  X, Y, max: Integer;

                        Begin

                                  ……….

                                  If  X > max  then

                                      Y := max

                                  Else

                                      Y := X;

      При выполнении этого фрагмента переменная Y получит значение переменной X, если только это значение не превышает MAX, в противном случае Y станет равно MAX.

      Часть ELSE<оператор2> условного оператора может быть пропущена. Тогда при значении TRUE условного выражения выполняется <оператор1>, в противном случае этот оператор пропускается.

      Пример:

                        Var

                                  X, Y, max: Integer;

                        Begin

                                  ……….

                                  If  X > max  then

                                      max := X;

                                  Y := Х;

      В этом примере переменная Y всегда будет иметь значение переменной Х, а в МАХ запоминается максимальное значение Х.

 

Выполните следующие упражнения:

Упражнение 1.  Составление программы с использованием ранее изученного оператора.

  • Наберите текст программы:


    

Program Vetka;                                                {Программа вводит целое число, сравнивает его с имеющимся и выводит отчет о работе условного оператора}

      var

      n1      : Integer;                                           {n1 – вводимое целое}

   BEGIN

      Write (‘Введите n1 = ‘);                             {Сообщаем о вводе n1}

      ReadLn (n1);                                                       {Вводим n1}

      If  n1 = 1 then                                                     {Сравниваем n1 c условием}

               BEGIN

      Writeln (‘Работает ветвь 1, Да ‘);                {Сообщаем о работе 1 ветви}

                                  Write (‘n1’, n1);                      {Выводим n1}

                        END

      Else

               BEGIN

                        Writeln (‘Работает ветвь 2, Нет ‘);    {Сообщаем о работе 2 ветви}

                                  Write (‘n1’, n1);                      {Выводим n1}

                        END

                                     END.

  • Запустите программу на выполнение и проверьте её работу:


Ctrl-F9

Для просмотра результатов выполненной программы необходимо нажать:


Alt-F5

  • Сохраните программу на своем диске:


File  Save as…                     A:\TP3PR1

 

Упражнение 2.  Составление программы с использованием ранее изученного оператора.

 Наберите текст программы:


     Program Vetka_2;                                       {Программа вводит целые числа, вычисляет значения переменных, сравнивает их и выводит отчет о работе условного оператора}

      var

      a, b, c : Integer;                                 {a, b, c – вводимые целые числа}

      x, y    : Real;                                               {x, y, – результаты вычислений}

   BEGIN

      Write (‘Введите a = ‘);                               {Сообщаем о вводе a}

      ReadLn (a);                                       {Вводим a}

      Write (‘Введите b = ‘);                               {Сообщаем о вводе b}

      ReadLn (b);                                       {Вводим b}

      Write (‘Введите c = ‘);                               {Сообщаем о вводе c}

      ReadLn (c);                                       {Вводим c}

      X := a*b-sqr(c);     Y := sqr(b+c)-sqr(a);

      If  x>y  then                                               {Сравниваем x и y}

      BEGIN

  WriteLn (‘X = ‘, x);                              {Выводим значение Х}

                 WriteLn (‘Y = ‘, y);                                  {Выводим значение У}

      END 

Else

        Write (‘Условие не выполнено ‘)             {Сообщаем о работе 2 ветви}

      END.


  • Запустите программу на выполнение и проверьте её работу: Ctrl-F9


  • Для просмотра результатов выполненной программы необходимо нажать: Alt-F5


  • Сохраните программу на своем диске:


File  Save as…                     A:\TP3PR2

 

Создайте и выполните следующие программы самостоятельно:

Составить программу для условия: если A < B, вычислить А + В, в противном случае вычислить А – В. Сохранить программу на своей дискете под именем TP3PR3;

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

 

Окончание работы:


  1. Сохраните созданные программы.
  2. Покажите работу преподавателю.
  3. Завершите работу Turbo-Pascal.


 

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


  1. Что обозначают служебные слова IF, THEN, ELSE?
  2. Какой оператор предназначен для создания ветвления в программе?
  3. Как записывается программа разветвляющейся структуры?
  4. Какая часть условного оператора может быть пропущена?