- •Билет № 1
- •Хранение информации.
- •Передача информации.
- •Обработка информации.
- •Билет № 2
- •Билет № 3
- •Билет № 4
- •Билет № 5
- •Билет № 6
- •Билет № 7
- •Билет № 8
- •Билет № 9
- •Билет № 10
- •Билет № 11
- •Билет № 12
- •С помощью генератора случайных чисел:
- •По формуле:
- •3) С клавиатуры:
- •Билет № 13
- •Билет № 14
- •Билет № 15
- •Билет № 16.
- •Билет №17.
- •Билет № 18.
- •Билет № 19
- •Билет № 20
- •Билет № 21
- •Билет № 22
- •Билет № 23
- •Билет № 24
- •Билет № 25
Билет № 10
Алгоритмическая структура «ветвление». Команда ветвления в языке программирования Pascal – полная и сокращенная форма. Примеры.
В отличие от линейных алгоритмов, в которых команды выполняются последовательно одна за другой, в разветвляющиеся алгоритмы входит условие, в зависимости от выполнения или невыполнения которого выполняется та или иная последовательность команд (серий).
Ветвление – это такая алгоритмическая структура, в которой в зависимости от условия выполняется либо одна, либо другая последовательность действий.
Условие – это высказывание, которое может быть истинным или ложным. В условии два числа, две строки, две переменных или строковых выражения сравниваются между собой с использованием операций сравнения (>, <, =, >=, <=).
Ветвление может использоваться в полной и неполной форме:
Неполная форма ветвления
|
Полная форма ветвления
|
Для организации ветвления в языке Турбо Паскаль существуют условный оператор, который может выглядеть следующим образом:
if … then … (неполная форма ветвления)
if … then … else … (полная форма ветвления)
Конструкция if … then…(неполная форма ветвления)
В общем случае структура оператора If … then выглядит следующим образом:
If Условие then
Begin
Оператор_1;
Оператор_2; Список операторов
….
End;
Здесь Условие — выражение логического типа. Для его составления используют знаки отношения (>, <, >=, <=, =, < >), а также логические операции (not, and, or). Операторы, указанные в списке операторов будут выполнены лишь в том случае, когда Условие будет истинно.
Например:
1) if a<0 then writeln ('число а отрицательное');
2) if (a=5) and (b=-7) then с:=a/b;
3) if ((a+b)>0) then a:=-b;
Операторные скобки Begin—End необходимо ставить в том случае, когда в списке операторов указано более одного оператора.
Конструкция If … then … else… (полная форма ветвления)
В общем случае структура оператора If … then…else выглядит следующим образом:
If Условие then
Begin
Оператор_1_1;
Оператор_1_2; Список операторов_1
….
End
Else Begin
Оператор_2_1;
Оператор_2_2; Список операторов_2
….
End;
При такой конструкции всегда один из списков операторов будет выполнен (или первый, или второй). В этом случае при значении Условие = True будет выполнен Список операторов_1, а при Условие = False будет выполнен Список операторов_2.
Перед служебным словом Else точку с запятой ставить нельзя (правила языка).
Пример. Определите номер квадранта нахождения точки на плоскости по заданным координатам X и Y.
program uslovie;
var n:integer;
x,y:real;
begin
writeln ('введите координаты точки');
write ('x='); readln(x);
write ('y='); readln(y);
n:=1;
if (x>=0) and (y<0) then n:=4;
if (x<0) and (y<0) then n:=3;
if (x<0) and (y>=0) then n:=2;
writeln ('точка находится в ',n,'-квадранте');
end.