На первом этапе создания программы программист должен определить последовательность действий, которые необходимо выполнить, чтобы решить поставленную задачу, т. е. разработать алгоритм. Алгоритм — это точное предписание, определяющее процесс перехода от исходных данных к результату.
Алгоритм решения задачи может быть представлен в виде словесного описания или графически — в виде блок-схемы. При изображении алгоритма в виде блок-схемы используются специальные символы (рис. 1.1).

Рис. 1.1. Основные символы, используемые для представления алгоритма в виде блок-схемы
Представление алгоритма в виде блок-схемы позволяет программисту уяснить последовательность действий, которые должны быть выполнены для решения задачи, убедиться в правильности понимания поставленной задачи.
При программировании в Delphi алгоритм решения задачи представляет собой совокупность алгоритмов процедур обработки событий.
В качестве примера на рис. 1.2 приведена совокупность алгоритмов программы Стоимость покупки, а на рис. 1.3 — ее диалоговое окно. После разработки диалогового окна и алгоритмов обработки событий можно приступить к написанию программы. Ее текст приведен в листинге 1.1.
Листинг 1.1. Программа Стоимость покупки
unit pokupka_1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForra) Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; Button1: TButton; Label3: TLabel; procedure ButtonlClick(Sender: TObject); procedure Edit2KeyPress(Sender: TObject; var Key: Char); procedure EditlKeyPress(Sender: TObject; var Key: Char); private { Private declarations } public { Public declarations } end; var Forml: TForm1; implementation {$R *.dfm} // подпрограмма procedure Summa; var cena: real; // цена kol: integer; // количество s: real; // сумма mes: string[255]; // сообщение begin cena := StrToFloat(Form1.Edit1.Text); kol := StrToInt(Forml.Edit2.Text); s := cena * kol; if s > 500 then begin s := s * 0.9; mes := 'Предоставляется скидка 10%' + #13; end; mes := mes+ 'Стоимость покупки: ' + FloatToStrF(s,ffFixed,4,2) +' руб.'; Forml.Label3.Caption := mes; end; // щелчок на кнопке Стоимость procedure TForml.ButtonlClick(Sender: TObject); begin Summa; // вычислить сумму покупки end; // нажатие клавиши в поле Количество procedure TForml.Edit2KeyPress(Sender: TObject; var Key: Char); begin case Key of '0' .. '9',#8: ; // цифры и клавиша <Backspace> #13: Summa; // вычислить стоимость покупки else Key := Chr(O); // символ не отображать end; end; // нажатие клавиши в поле Цена procedure TForm1.EditlKeyPress(Sender: TObject; var Key: Char); begin case Key of '0' .. '9', #8 : ; // цифры и клавиша <Backspace> #13: Form1.Edit2.SetFocus; // клавиша <Enter> '.' ,'.' : begin if Key = '.' then Key:=', if Pos(',',Edit1.Text) <> 0 then Key:= Chr(0); end; else // все остальные символы запрещены Key := Chr(0); end; end; end.

Рис. 1.2. Алгоритм программы вычисления стоимости покупки — совокупность алгоритмов обработки событий на компонентах формы

Рис. 1.3. Окно (форма) программы Стоимость покупки
Последние комментарии
5 дней 8 часов назад
1 неделя 1 день назад
2 недели 3 дня назад
4 недели 1 день назад
5 недель 3 дня назад
7 недель 4 дня назад
10 недель 2 дня назад
10 недель 6 дней назад
11 недель 2 дня назад
12 недель 23 минуты назад