end else begin

Задание

1. Изучить условный и составной операторы и особенности их использования;

2. Составить, отладить и выполнить программу по одному из вариантов задаваемых преподавателем из таблицы 2 (см. ниже). Распечатать текст программы.

3. Оформить отчет о лабораторной работе.

Указания по выполнению работы

  1. Условный оператор в общем случае имеет вид: IF A THEN В ELSE С,

где А - выражение логического типа, В - оператор или группа операторов, которые выполняются, если выражение А принимает значение "истина" (TRUE), С -оператор или группа операторов, которые выполняются, если выражение А принимает значение "ложь" (FALSE). Т. е. условный оператор работает следующим образом: "если А истинно, то выполнять В, иначе выполнять С, что соответствует "ветвлению". Часть "иначе" (ELSE) может отсутствовать и тогда реализуется "обход".

В приведенной ниже программе реализуется расчет значения функции

Program Primer;

Var

х,у : real;

Begin

Write('Введите х');

Read(x); Writeln;

if x < 1 then у • ABS(x-l)

else у := 5*Ln(x) ;

Write('у = ',у);

End.

В данной программе обе ветви условного оператора имеют по одному оператору (у = ABS(x-l) и у = 5LN(x)). Если разветвления должны состоять из нескольких операторов, используется составной оператор, который объединяет несколько операторов в единое целое с помощью ключевых слов "begin" и "end":

begin оператор; оператор;.....; end;

Если за составным оператором в разделе "THEN" условного оператора следует раздел "ELSE", то после "end" точка с запятой не ставится.

Например, для предыдущей задачи требуется дополнительно выводить сообщения "х < 1" или "х > 1":

program primer;

var х,у : real;

Begin

write('Введите х ');

read(x); writeln;

if x < 1 then begin

write(' x < 1 '); y= abs(x-l);

end else begin

write(' x > 1 ');

у =5* (x) ;

end;

write(‘y=’,y);

End.

  1. Для одного из вариантов задания разработать программу, в которой предусмотреть элементы диалога при вводе и выводе данных и результатов.
  2. отчет о работе должен содержать распечатку текста и блок-схему программы.

Таблица 2.1. - Варианты заданий

Номер варианта Ввести значения Действия, которые необходимо выполнить
х и у Напечатать большее из значений х и у
x Напечатать значение х, если оно отрицательно; в противном случае вывести сообщение "Значение х положительно"
x Если значение х - четное, вывести сообщение "х - четное число", иначе - сообщение "х - нечетное число'
х и у Напечатать сначала меньшее, а затем большее из значений х,у
х и у Напечатать сумму х+у, если х >= у, разность х-у, если х < у
x Если значение х - целое, вывести сообщение "х - целое число", иначе - вывести дробную часть
х и у Если оба значения (х и у) положительны, напечатать их сумму, в противном случае - модуль разности
  x Если х кратно 5, вывести значение х
x,y,z Напечатать значение суммы x+y+z, если она больше трех, в противном случае рассчитать и напечатать разность x-y-z
х и у Напечатать значение квадратного корня из суммы х+у, есл* она положительна, в противном случае вывести сообщение "подкоренное выражение отрицательно"
x Если значение х положительное напечатать результат округления х до ближайшего целого
x,y,z Напечатать введенные значения в порядке возрастания

В вариантах 3,6,8,11 можно использовать функцию Trunc(X) или Round(X) (целая часть от х). Например, чтобы определить является ли число х кратным достаточно проверить условие равенства х/5 и целой части от х/5.

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

1. Пояснить составленную программу

2. Как работает условный оператор?

3. Назначение составного оператора?