Методические указания и пояснения практической работы 12
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

В этой практической у нас стоит задача разобраться с оператором ветвления в Pascal, и сгенерировать простейший програмный продукт на его основе – т.е. реализованный код. Для этого нам пожадобиться понимание средств программы, а также умения компилировать и запускать созданный код.

Условный оператор (выбор одного из двух направлений)

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

if <условие> then <оператор 1> [ else <оператор 2> ];

                          если              тогда                            иначе

Условие – логическое выражение, которое может быть истинным или ложным.

Оператор 1, оператор 2 – какой либо оператор, в том числе и составной оператор, т.е. несколько операторов, объединенных операторными скобками begin end.

Часть конструкции, заключенная в квадратные скобки может отсутствовать.

Принцип работы оператора:

¨ проверяется условие

¨ если условие истинно (верно), то выполняется оператор 1

¨ если условие ложно (неверно), то выполняется оператор 2

¨ если  else <оператор 2> отсутствует, то, при ложности условия, выполняется следующий за if оператор.

 

Например, из двух чисел a и b вывести на экран значение большего числа. if a > b then writeln (‘большее число a - ’, a) else writeln (‘большее число b - ’, b);

Внимание! Перед словом else нельзя ставить точку с запятой. Обратите внимание на запись служебных слов и операторов. Каждое слово else под своим, словом if. Для большей наглядности и «читаемости» текста программы операторы, следующие за словами then и else можно писать на следующей строке.

Возможная форма оператора:        if <условие> then

<оператор 1>;

Пример использования оператора: Вычислите значение функции f(x) в зависимости от значения аргумента x. if x<0 then y=x; if x=0 then y=0; if x<0 then y=sqr(x);

 

Вложенные операторы if

Возможно использовать в качестве оператор1 или оператор2 других условных операторов:

if <условие1> then if <условие2> then <оператор1> else <оператор2>;

Вложенность операторов if неограниченна.

2. Ветвление на несколько направлений (оператор – переключатель, или оператор выбора или оператор варианта):

Позволяет выбрать из любого числа возможностей.

case <переменная или выражение> of

                  <список значений выбора1>:<оператор1>;

                  <список значений выбора2>:<оператор2>;

                                     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               

                    <список значений выбора N>:<оператор N>;

                            [else <оператор>]

        end;

Переменная может быть любого порядкового типа, кроме longint ( word , boolean , integer , char … или перечисляемый тип ). (см.приложение 1, СТРУКТУРА ТИПОВ ДАННЫХ)

Список значений выбора - это значения, которые могут принимать переменная или выражение, перечисленные через запятую или, если значения принадлежат какому-либо интервалу, с использованием лексемы " . . " (1..7 или 'а' ..'м')

Оператор - любой оператор, в том числе составной.

Принцип работы оператора:

¨ Значение переменной или выражения сравнивается с предложенными списками значений

¨ Если найдено нужное значение, выполняется соответствующий оператор

¨ Если нужное значение не найдено в перечисленных списках, выполняется оператор после  else

¨ Если else отсутствует, то, когда нужное значение не найдено, выполняется следующий за case оператор.

 

Ветви здесь представлены элементами выбора, разграниченными точкой с запятой, а слово else с последующим оператором могут отсутствовать. Элемент выбора – это оператор, например составной, снабжённый одной или несколькими константами выбора:

Пример использования оператора: Написать программу, которая за­пра­шивает номер месяца и вы­во­дит название времени года   uses crt; var month : integer; begin writeln (‘введите номер месяца от 1 – 12’); readln (month); case month of 1,2,12 : writeln(‘зима’); 3,4,5 : writeln(‘весна’); 6,7,8 : writeln(‘лето’); 9,10,11 : writeln(‘осень’); else writeln (‘ошибка ввода!’); end; repeat until keypressed; end.

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

Дата: 2019-03-05, просмотров: 225.