Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi.Начало.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.56 Mб
Скачать

Разветвляющийся алгоритм

Разветвляющийся алгоритм позволяет организовать ветвления в программе. Блок-схема разветвляющего алгоритма выглядит следующим образом:

Проверяется условие, в случае, если оно равно истине выполняется Ветка 1(набор операторов), иначе выполняется Ветка 2(другой набор операторов).

Для реализации такой схемы действий в языке Pascal имеется оператор if.

Оператор if

Синтаксис:

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

Где

If, then, else - зарезервированные слова; (if – если, then – тогда, else – иначе ). Если перевести на русский, звучит примерно так:

Если условие=истина тогда оператор 1 иначе оператор 2;

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

<оператор1> - операторы языка Pascal, реализующие ветвь1.

<оператор2> - операторы языка Pascal, реализующие ветвь2.

В квадратных скобках – часть оператора, которая может отсутствовать, необязательная часть.

Если оператор1 или оператор2 – это несколько операторов, тогда их нужно заключать в операторные скобки begin..end. Например,

Begin

Оператор 1;

Оператор 2;

end

Пример 1. Контроль ввода трехзначного числа

Разработаем форму, подобную той, что изображена на рисунке.

На кнопку «Ввод» пишем обработчик:

procedure TForm1.Button1Click(Sender: TObject);

var x:integer;

begin

x:=StrToInt(Edit1.Text);

if (x<100) or (x>999) then

begin

ShowMessage(' это не 3-х значное число');

exit;

end

else

ShowMessage(' это 3-х значное число');

end;

Пример 2. Введите три числа. Выведите минимальное

Разработаем форму, подобную той, что изображена на рисунке:

На кнопку «Найти минимальное» напишем обработчик:

procedure TForm1.Button1Click(Sender: TObject);

var a,b,c,min:real;

begin

a:=StrToFloat(Edit1.text);

b:=StrToFloat(Edit2.text);

c:=StrToFloat(Edit3.text);

min:=a;

if min>b then min:=b;

if min>c then min:=c;

ShowMessage('минимальное ='+FloatToStr(min));

end;

Оператор выбора case

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

CASE <выражение> OF

<значение1>: <оператор1>;

<значение2>: <оператор2>;

<значение3>: <оператор3>;

...

[ ELSE <оператор> ] END;

Оператор выполняется следующим образом: вычисляется выражение. Если выражение равно значению1, тогда выполняется оператор1, если выражение равно значению2, тогда выполняется оператор2, если выражение не равно ни одному из значений, тогда выполняется оператор ELSE(иначе).

Значение выражения в операторе CASE не может быть вещественного или строкового типа.

Пример 1. Введите порядковый номер времени года, выведите название времени года

Разработаем форму, подобную той, что изображена на рисунке.

На кнопку «Определить время года» напишем обработчик:

procedure TForm1.Button1Click(Sender: TObject);

var n:integer;

begin

n:=StrToInt(Edit1.Text);

case n of

1: ShowMessage('Это зима');

2: ShowMessage('Это весна');

3: ShowMessage('Это лето');

4: ShowMessage('Это осень');

else ShowMessage('Вы ошиблись')

end;

end;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]