- •Введение
- •1 Проектирование программного модуля
- •1.1 Постановка задачи
- •1.2 Математическое (логическое) описание задачи
- •1.3 Описание входной и выходной информации
- •2 Разработка программного модуля
- •2.1 Структура программного модуля
- •4 Руководство пользователя
- •2.2 Описание разработанной программы
- •3 Тестирование программного модуля
- •Заключение
- •Список использованных источников
- •Приложение а Руководство программиста
- •Приложение б Код программы
2 Разработка программного модуля
2.1 Структура программного модуля
Структура формы «Калькулятор простых дробей» представлена в соответствие с рисунком 1.
Unit1
procedure FormCreate(Sender:
TObject);
procedure
Button1Click(Sender:
TObject);
procedure
Button2Click(Sender:
TObject);
procedure
Button3Click(Sender:
TObject);
procedure
Button4Click(Sender:
TObject);
procedure
EditKeyPress(Sender: TObject; var Key: Char);
procedure
N2Click (Sender: TObject; var Key: Char);
procedure
N5Click
(Sender: TObject);
procedure
Image1Click(Sender: TObject);
procedure Edit1Click(Sender:
TObject);
procedure
Button5Click
(Sender: TObject);
procedure N6Click(Sender:
TObject);
Рисунок 1 – Структурная схема формы «Калькулятор простых дробей»
Procedure FormCreate (Sender: TObject) – выполняется при загрузки приложения, представлена в соответствии с рисунком 2.
ComboBox1.Items.Add('+');
ComboBox1.Items.Add('-');
ComboBox1.Items.Add('*');
ComboBox1.Items.Add('/');
Edit1.MaxLength:=5; ;
Edit2.MaxLength:=5;
Edit3.MaxLength:=5;
Edit4.MaxLength:=5;
Enable1. Visible= false.
Рисунок 2 – Блок-схема процедуры FormCreate
P
rocedure
EditKeyPress(Sender:
TObject;
var
Key:
Char)
– ограничение на ввод символов,
представлена в соответствии с рисунком
3.
Да
Нет
Key := #0;
Рисунок 3 – Блок-схема процедуры EditKeyPress
Procedure Button4Click (Sender: TObject) – преобразует результат в неправильную дробь, представлена в соответствии с рисунком 4.
Нет
Да
s:= StrToInt(Label2.Caption); noz:=
StrToInt(Label3.Caption); r:=
StrToInt(Label1.Caption); s:=s+(r*noz); Label1.Caption:=''; Label2.Caption:=inttostr(s); Label3.Caption:=inttostr(noz); Label8.Caption:='';
Рисунок 4 – Блок-схема процедуры Button4Click
Procedure N2Click (Sender: TObject) – закрытие Form1, представлена в соответствии с рисунком 5.
Form1.Close;
Рисунок 5 – Блок-схема процедуры N2Click
Procedure Button2Click (Sender: TObject) – выделяет целую часть из результата, представлена в соответствии с рисунком 6.
Да
Нет
s:= StrToInt(Label2.Caption); noz:=
StrToInt(Label3.Caption); r:=0;
Да
r:=s
div noz; s:=s-(r*noz);
Нет
Label1.Caption:=inttostr(r); Label8.Caption:='Целая
часть=
'+inttostr(r); Label2.Caption:=inttostr(s);
Рисунок 6 – Блок-схема процедуры Button2Click
Procedure EditClick (Sender: TObject) – определение выбранного Edit, представлена в соответствии с рисунком 7.
v:=
номеру выбранного Edit;
Рисунок 7 – Блок-схема процедуры EditClick
Procedure Button3Click (Sender: TObject) – сокращает полученную дробь, представлена в соответствии с рисунком 8.
Да
Нет
Нет
WinExec('hh.exe
help.chm',SW_SHOW);
Procedure
Image4Click
(Sender: TObject) – запускает файл справки,
представлена в соответствии с рисунком
9.
Рисунок
8 – Блок-схема процедуры Button3Click
Рисунок
9 – Блок-схема процедуры Image4Click
Procedure N5Click (Sender: TObject) – показывает информацию о авторе, представлена в соответствии с рисунком 10.
ComboBox1.Visible:=False;
Button1.Visible:=False;
Label1.Visible:=False; Label2.Visible:=False;
Label3.Visible:=False; Label4.Visible:=False; Label5.Visible:=False; Label6.Visible:=False; Label7.Visible:=False; Label8.Visible:=False; Label9.Visible:=False;
Button2.Visible:=False; Button3.Visible:=False; Button4.Visible:=False; Button5.Visible:=False; Button6.Visible:=False; Button7.Visible:=False; Button8.Visible:=False; Button9.Visible:=False; Button10.Visible:=False; Button11.Visible:=False; Button12.Visible:=False; Button13.Visible:=False; Button14.Visible:=False; Button15.Visible:=False; Button16.Visible:=False; Button17.Visible:=False;
Edit1.Visible:=False; Edit2.Visible:=False; Edit3.Visible:=False; Edit4.Visible:=False;
Image1.Visible:=true;
Рисунок
10 – Блок-схема процедуры N5Click
Procedure
Image1Click (Sender: TObject) – делает
невидимой
информацию
о
Button2.Visible:=True;
Button3.Visible:=True;
Button4.Visible:=True;
Button5.Visible:=true;
Button6.Visible:=true;
Button7.Visible:=true;
Button8.Visible:=true;
Button9.Visible:=true;
Button10.Visible:=true;
Button11.Visible:=true;
Button12.Visible:=true;
Button13.Visible:=true;
Button14.Visible:=true;
Button15.Visible:=true;
Button16.Visible:=true;
Button17.Visible:=true;
Label1.Visible:=True;
Label2.Visible:=True;
Label3.Visible:=True;
Label4.Visible:=True;
Label5.Visible:=True;
Label6.Visible:=True;
Label7.Visible:=True;
Label8.Visible:=True;
Label9.Visible:=True;
ComboBox1.Visible:=True;
Button1.Visible:=True
Edit1.Visible:=True;
Edit2.Visible:=True;
Edit3.Visible:=True;
Edit4.Visible:=True;
Image1.Visible:=False;
Рисунок
11 – Блок-схема процедуры Image1Click
Procedure Button5 (Sender: TObject) – записывает в поле Edit требуемое значение, представлена в соответствии с рисунком 12.
Да
edit1.Text:=Edit1.Text
+ требуемое значение;
Нет
Да
Нет
Да
Нет
Да
Нет
Edit2.Text:=Edit2.Text
+ требуемое значение;
Edit3.Text:=Edit3.Text
+ требуемое значение;
Edit4.Text:=Edit4.Text
+ требуемое значение;
Рисунок
12 – Блок-схема процедуры Image1Click
