
- •Общая характеристика процессов сбора, хранения передачи и обработки информации Общие понятия информационного процесса
- •Измерение информации
- •Технические и программные средства реализации информационных процессов Архитектура персонального компьютера
- •Устройства ввода
- •Устройства вывода
- •Матричный принтер
- •Термические принтер
- •Струйный принтер
- •Лазерный принтер
- •Устройства хранения информации
- •Устройство обработки информации
- •Программное обеспечение компьютера
- •Основные функции ос
- •Системы программирования
- •Прикладное программное обеспечение
- •Интерфейс пользователя
- •Рабочий стол
- •Панель задач
- •Главного меню
- •Структура окна Windows
- •Работа с окнами программ
- •Реорганизация окон, переключение между окнами
- •Файловая система Windows
- •Работа с файлами и папками в Windows
- •Создание ярлыка
- •Способы записи алгоритмов
- •Базовые алгоритмические конструкции
- •Массивы
- •Технология структурного программирования
- •Нисходящая разработка алгоритма
- •Использование базовых структур
- •Приемы структурирования
- •Использование булевого признака
- •Сквозной структурный контроль
- •Тестирование и отладка программ
- •Методы тестирования
- •Функциональное тестирование
- •Классы эквивалентности как метод снижения количества тестов
- •Выбор значений для тестов
- •Формулировка условий
- •Функциональные тесты
- •Структурное тестирование
- •Язык программирования Delphi Интегрированная среда Delphi 7.0
- •Окно инспектора объектов
- •Окно формы
- •Окно редактора кода
- •Управление проектом
- •Сохранение проекта
- •Открытие существующего проекта
- •Добавление дополнительных форм к проекту
- •Создание приложений в Delphi
- •Разработка пользовательского интерфейса приложения
- •Размещение компонентов на форме
- •Установка свойств во время разработки
- •Создание процедур обработки событий
- •Удаление процедур обработки событий
- •Структура проекта Delphi
- •Модули Delphi
- •Синтаксическая структура модуля
- •Идентификаторы
- •Типы данных в Delphi
- •Структурированные типы
- •Описание типа «массив»
- •Основные операторы языка Delphi
- •Оператор присваивания
- •Составной оператор
- •Условный оператор
- •Оператор выбора
- •Операторы цикла
- •Оператор цикла с предусловием
- •Оператор цикла с постусловием
- •Оператор цикла с параметром
- •Подпрограммы в Delphi
- •Описание процедуры
- •Вызов процедуры
- •Описание функции
- •Вызов функции
- •Графика в Delphi Графические компоненты
- •Свойство объектов Canvas
- •Свойства Canvas
- •Методы Canvas
- •Объект tPaintBox
Синтаксическая структура модуля
Unit имя модуля;
Interface {интерфейсный раздел}
[ Uses список имен модулей ] {Подключение модулей}
<объявления видимых объектов>
Implementation {раздел реализации}
[
{Описание
скрытых и видимых
объектов}
[Раздел описания констант]
[Раздел описания типов]
[Раздел описания переменных
[Раздел описания процедур и функций]
[Begin
раздел инициализации объектов модуля ]
End.
Квадратные скобки означают, что заключенная в них конструкция языка может отсутствовать.
Видимыми объектами называют такие объекты, которые доступны из других программ. Невидимые (рабочие) объекты называют скрытыми.
В интерфейсной части могут быть объявлены типы, константы, переменные, процедуры и функции, которые могут использоваться в других модулях.
Объявления процедур и функций в интерфейсной части - это их заголовки. Их следует писать полностью, а описания процедур и функций помещаются в разделе реализации.
Ниже приведен листинг исходного текста главного модуля, содержащийся в файле модуля с именем Unit_Calc.pas.
Модуль содержит в разделе реализации только описания процедур обработки событий и процедур и функций пользователя.
Unit Unit_Calc;
Interface
{Присоединение модулей Delphi}
Uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls;
{Объявление видимых объектов}
Type {Объявление типов}
TForm1 = class(TForm)
LabelOp1: TLabel;
LabelOp2: TLabel;
LabelResult: TLabel;
EditOp1: TEdit;
EditOp2: TEdit;
EditResult: TEdit;
ButtonAdd: TButton;
ButtonSub: TButton;
ButtonMult: TButton;
ButtonDel: TButton;
ButtonClear: TButton;
BitBtnClose: TBitBtn;
procedure ButtonAddClick(Sender: TObject);
procedure ButtonSubClick(Sender: TObject);
procedure ButtonMultClick(Sender: TObject);
procedure ButtonDelClick(Sender: TObject);
procedure ButtonClearClick(Sender: TObject);
procedure EditOpChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var {Объявление переменных}
Form1: TForm1;
Op1,Op2: integer;
Res: real;
implementation
{$R *.DFM} {Директива компилятору}
{Описание процедур обработки события}
procedure TForm1.ButtonAddClick(Sender: TObject);
begin
Op1:=StrToInt(EditOp1.Text);
Op2:=StrToInt(EditOp2.Text);
Res:=Op1+Op2;
EditResult.Text:=FloatToStr(Res);
LabelResult.Visible:=True;
LabelResult.Caption:='Результат +';
end;
procedure TForm1.ButtonSubClick(Sender: TObject);
begin
Op1:=StrToInt(EditOp1.Text);
Op2:=StrToInt(EditOp2.Text);
Res:=Op1-Op2;
EditResult.Text:=FloatToStr(Res);
LabelResult.Visible:=True;
LabelResult.Caption:='Результат -';
end;
procedure TForm1.ButtonMultClick(Sender: TObject);
begin
Op1:=StrToInt(EditOp1.Text);
Op2:=StrToInt(EditOp2.Text);
Res:=Op1*Op2;
EditResult.Text:=FloatToStr(Res);
LabelResult.Visible:=True;
LabelResult.Caption:='Результат *';
end;
procedure TForm1.ButtonDelClick(Sender: TObject);
begin
Op1:=StrToInt(EditOp1.Text);
Op2:=StrToInt(EditOp2.Text);
Res:=Op1/Op2;
EditResult.Text:=FloatToStr(Res);
LabelResult.Visible:=True;
LabelResult.Caption:='Результат /';
end;
procedure TForm1.ButtonClearClick(Sender: TObject);
begin
EditOp1.Clear;
EditOp2.Clear;
EditResult.Clear;
LabelResult.Visible:=False;
EditOp1.SetFocus;
end;
procedure TForm1.EditOpChange(Sender: TObject);
begin
EditResult.Clear;
LabelResult.Visible:=False;
end;
end.
Чтобы воспользоваться программными ресурсами, размещенными в модуле, в другом и модуле необходимо поместить служебное слово Uses <Имя модуля> (предложение использования) сразу после заголовка служебных слов Interface или Implementation.
Раздел инициализации модуля (если он есть) будет выполняться перед началом выполнения проекта (программы), в котором используется данный модуль
Синтаксическая структура раздела описания констант имеет следующий вид:
Const < имя> =< значение>;
[ < имя> = < значение>;]
Пример: Const M=20;S=3.5;
В языке Delphi программист имеет возможность описать и далее использовать в программе свои собственные типы. Обычно это сложные (структурированные типы).
Синтаксическая структура описания типов имеет следующий вид:
Type <имя типа>= <описание типа>;
[<имя типа>= <описание типа>;]
Пример :
Type
MAS_i = ARRAY[1..20] of integer; - описание типа «одномерный
массив».
В языке Delphi каждая переменная, используемая в программе, должна быть описана в разделе описания переменных.
Этот раздел может содержаться как в интерфейсной части модуля, так и в разделе реализации.
Синтаксическая структура раздела описания переменных имеет следующий вид:
Var < имя переменной>[, <имя переменной>.. <имя переменной>] : <тип>;
< имя переменной>[,<имя переменной >... <имя переменной>:<тип>;
<тип> - это <имя типа > или <описание типа>.
<имя типа > - это имя ранее описанного или встроенного типа.
Пример :
Var XI, Х2,Y: integer;
A1: MAS_l; {используется имя ранее описанного типа}
A2:ARRAY[1.. 20] of integer; {используется описание типа}
Программа на языке Delphi может иметь комментарии - любую последовательность символов (кроме { } ), заключенную в фигурные скобки.