Выполнение оператора IF. THEN. ELSE

1. Проверяется: выполняется или нет условие, стоящее после слова IF.

2. Если условие выполняется, т.е. значение его «истина», то выполняется оператор, стоящий после слова THEN, а затем управление передается оператору программы, записанному после оператора IF...THEN...ELSE.

Блок-схема полного условного оператора Да Нет условие действие1 действие2

3. Если условие оператора IF не выполняется (т.е. оно имеет значение “ложь”), то выполняется оператор, стоящий после слова ELSE, а затем начинает выполняться следующий после IF...THEN...ELSE оператор.

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

PROGRAM prim1;

USES Crt;

var x,y: real;

begin

ClrScr; (* очищение экрана *)

Writeln(‘Введите два числа’);

Readln(x,y);

IF x>y THEN Writeln(x)

ELSE Writeln(y);

end.

Неполная форма условного оператора:

if <условие> then <оператор>

Действие этого оператора отличается от предыдущего том, что в случае невыполнения условия начинает выполняться следующий после IF...THEN...оператор программы.

Блок-схема неполного условного оператора нет

Задача 2: Написать программу поиска наибольшего из двух чисел. Найденное число должно быть помещено в переменную МАХ.

PROGRAM prim2;

USES Crt;

var x,y,max: real;

begin

ClrScr; (* очищение экрана *)

Writeln(‘Введите два числа’);

Readln(x,y);

max:=x;

IF y>max THEN max:=y;

Writeln(max);

end.

Решая всевозможные задачи часто необходимо выполнять группу операторов либо за словом THEN, либо за словом ELSE. Для того чтобы записать группу действий необходимо использовать составной оператор BEGIN END.

1. If <условие> then

begin

оператор1;

оператор2;

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

оператор n;

end

else оператор;

2. If <условие> then оператор

else begin

оператор1;

оператор2;

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

оператор n;

end;

3. If <условие> then

begin

оператор1;

оператор2;

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

оператор n;

end

else

begin

оператор1;

оператор2;

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

оператор n;

end

Задача 3. Решить квадратное уравнение вида

ax2 + bx +c = 0

План решения задачи:

1. задать коэффициенты a,b,c.

2. вычислить значение дискриминанта.

3. Проверить значения дискриминанта и, в зависимости от полученного ответа, выполнить то или иное действие.

program kvyr;

var a,b,c: integer;

x1,x2,d: real

begin

writeln(‘введите коэф-ты квадратного уравнения’);

read(a,b,c);

d:=b*b-4*a*c;

if d>=0 then begin

x1:=(-b+sqrt(d))/(2*a);

x2:=(-b-sqrt(d))/(2*a);

writeln(‘корни x1=,x1,’ x2’,x2)

end

else if d=0 then writeln(‘x1=x2=’,-b/(2*a))

else writeln(‘решений нет’);

Начало a, b, c d=b2 – 4ac да нет d>0 x1= (-b+Öd)/(2*a) да нет d=0 x2= (-b-Öd)/(2*a) x1=x2=-b/2a решений нет x1, x2 x конец
end.

Задача 4. Составьте программу для вычисления выражения

а) max(x+y+z, xyz) + 3

б) min(x2+y2, y2+z2) - 4

program kvyr;

var a,b,c: integer;

x1,x2,d: real

begin

writeln(‘введите коэф-ты квадратного уравнения’);

read(a,b,c);

d:=b*b-4*a*c;

if d>=0 then begin

x1:=(-b+sqrt(d))/(2*a);

x2:=(-b-sqrt(d))/(2*a);

writeln(‘корни x1=,x1,’ x2’,x2)

end

else if d=0 then writeln(‘x1=x2=’,-b/(2*a))

else writeln(‘решений нет’);

end.

Задача 4. Составьте программу для вычисления выражения

а) max(x+y+z, xyz) + 3 б) min(x2+y2, y2+z2) - 4


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: