2. Освоить этапы разработки приложения на Delphi
Сформировать навыки работы в системе Delphi на
примере программирования линейных алгоритмов.
Краткие сведения из теории
Система программирования Delphi предоставляет пользователю удобный графический интерфейс в процессе разработки приложения. После запуска Delphi появится окно системы программирования Delphi.
Рис.2. Окно системы программирования Delphi
В главном окне находится меню команд, панели инструментов и палитра компонентов. Окно стартовой формы (Forml) представляет собой заготовку главного окна разрабатываемого приложения.
Рис.3. Окно Конструктор форм
В окне редактора кода, которое можно увидеть, отодвинув в сторону окно формы, следует набирать текст программы. В начале работы над новым проектом это окно редактора кода содержит сформированный Delphi шаблон программы.
Рис. 4. Окно «Программный код»Под строкой Главного меню справа располагается Панель инструментов, содержащая пиктограммы управляющих элементов.
Окно Object Inspector — окно редактора свойств объектов предназначено для редактирования значений свойств объектов. В терминологии визуального проектирования объекты — это диалоговые окна и элементы управления (поля ввода и вывода, командные кнопки, переключатели и др.). Свойства объекта — это характеристики, определяющие вид, положение и поведение объекта. Например, свойства Width и Height задают размер (ширину и высоту) формы, свойства Tор и Left — положение формы на экране, свойство Caption — текст заголовка.
Рис. 6. Окно «Свойства объекта»
В «Проводнике проекта» (Project Manager) отображаются в виде иерархического каталога все составные части текущего проекта.
Рис. 7. Окно «Проводник проекта»
Окно «Дерево объектов» (Object TreeView) отображает перечень объектов, размещенных на форме. Окно Дерево объектов вызывается командой [View-Object TreeView].
Рис. 8. Окно «Дерево объектов»
Этапы разработки приложения на языке Delphi
Создание приложения в среде Delphi можно условно разделить на несколько этапов:
1. Создание графического интерфейса будущего приложения
С помощью Панели инструментов на форму помещаются управляющие элементы, которые должны обеспечить взаимодействие приложения с пользователем.
2. Задание значений свойств объектов графического интерфейса
С помощью окна «Свойства объекта» задаются значения свойств управляющих элементов, помещенных ранее на форму.
3. Создание и редактирование программного кода
Для создания заготовки событийной процедуры необходимо осуществить двойной щелчок мышью по управляющему элементу. В окне «Редактор кода» появится заготовка событийной процедуры, имя которой состоит из двух частей: имени формы, содержащий управляющий элемент, и имени объекта и имени события (например,TForm1.Button1Click). Затем в окне «Редактор кода» производится ввод и редактирование программного кода процедуры.
4. Сохранение проекта
Т.к. проект включает в себя несколько файлов, рекомендуется для каждого проекта создать отдельную папку на диске. Сохранение проекта производится с помощью меню File:
– Сначала необходимо сохранить форму и связанный с ней программный модуль (файл с расширением pas) с помощью команды Save As.… По умолчанию для файла формы предлагается имя Unit1.pas.
– Далее необходимо сохранить файл главного модуля, который содержит описание проекта (файл с расширением dpr) с помощью команды Save Project As…
– В процессе сохранения в папку проекта записываются вспомогательные файлы: файл с расширением res, описывающий ресурсы; файл с расширением dfm, описывающий форму, и некоторые другие файлы.
5. Компиляция проекта в приложение
Сохраненный проект может выполняться только в самой системе программирования Delphi. Для того чтобы преобразовать проект в приложение, которое может выполняться непосредственно в среде операционной системы, необходимо сохранить проект в исполнимом файле (типа exe). Для компиляции проекта в исполнимый файл используется команда [Project-Compile].
Пример 1. Найти сопротивление цепи из двух последовательно соединенных проводников.
Использованные компоненты:
Edit1 – ввод сопротивления R1;
Edit1 – ввод сопротивления R2;
Label1 – вывод результирующего сопротивления;
BitBtn1 – запуск программы;
BitBtn2 – выход из программы.
Рис. 9. Форма примера 1
Программный код
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
var r1,r2,r:integer;
implementation
{$R *.dfm}
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
r1:=strtoint(edit1.Text);
r2:=strtoint(edit2.Text);
r:=r1+r2;
label3.Caption:='Сопротивление 1-го проводника= '+inttostr(r1)+
#13+'Сопротивление 2-го проводника= '+inttostr(r2)+#13+'Сопротивление цепи= '+inttostr(r)
end;
end.
Порядок работы
Выполнить программу примера 1. Подготовить тесты для проверки правильности работы программы, провести отладку, проанализировать результаты. Сохранить программу на диске.
Составить и выполнить две программы (табл.1 и 2). Подготовить тесты для проверки правильности работы программ, провести отладку, проанализировать результаты. Сохранить программы на диске.
Таблица 1
Номер варианта
|
Условие
|
Исходные данные
|
1
|
Определить расстояние d между двумя точками на плоскости.
|
х1, у1, x2, y2
|
2
|
Заданы 4 числа. Вычислить среднее арифметическое и среднее геометрическое их модулей.
|
a, в, c, d
|
3
|
Найти радиус окружности, описанной вокруг треугольника по формуле:
,
где р - полупериметр
|
а, в, с
|
4
|
Найти радиус круга, вписанного в треугольник со сторонами а, в, с по формуле:
,
где р - полупериметр
|
а, в, с
|
5
|
Определить площадь треугольника по трем углам и высоте:
|
A, B, C, h
|
6
|
Определить площадь треугольника по заданной стороне и углам:
|
A, B, C, a
|
7
|
Вычислить сопротивление цепи:
|
R1, R2, R3
|
8
|
Вычислить сопротивление цепи:
|
R1, R2, R3
|
9
|
По двум сторонам и углу между ними в треугольнике АВС найти два остальных угла и третью сторону.
|
A, B, a
|
10
|
В магазине продается костюмная ткань. Ее цена b руб. за кв. метр. Подсчитать стоимость куска этой ткани длиной x м и шириной y м.
|
x, y, b
|
11
|
Найти площадь ромба по стороне и острому углу:
, где а - сторона , a-угол
|
а, a
|
12
|
В арифметической прогрессии известны 1-й член и разность. Найти 30-й член этой прогрессии и сумму первых 40 членов.
|
а1, d
|
13
|
Найти координаты центра отрезка, заданного координатами его концов.
|
x1, y1, x2, y2
|
14
|
Найти сумму всех натуральных чисел от 1 до m, используя формулу суммы членов арифметической прогрессии.
|
m
|
Таблица 2
Номер варианта
|
Условие
|
Исходные данные
|
1
|
Найти произведение цифр заданного четырехзначного числа.
|
n
|
2
|
Найти площадь кольца с внутренним радиусом r и внешним радиусом R (r< R).
|
r, R
|
3
|
Не кроме умножения, получить a8 за три операции.
|
a
|
4
|
Не используя никаких функций и никаких операций, кроме умножения, получить a10 за четыре операции.
|
a
|
5
|
Не используя никаких функций и никаких операций, кроме умножения, получить a16 за четыре операции.
|
a
|
6
|
Найти сумму цифр заданного пятизначного числа.
|
m
|
7
|
Вычислить объем цилиндра и конуса, которые имеют одинаковую высоту H и одинаковый радиус основания R.
|
H, R
|
8
|
Найти сумму всех четных чисел от n до m, используя формулу суммы членов арифметической прогрессии.
|
n, m
|
9
|
Поменять местами значения целых переменных x и y
a) c использованием дополнительной переменной
б) не используя дополнительные переменные
|
x, y
|
10
|
Найти сумму и произведение цифр заданного трехзначного числа.
|
n
|
11
|
Вычислить сумму трех младших цифр целого числа.
|
m
|
12
|
Ввести любой символ и определить его порядковый номер, предыдущий и последующий символы.
|
s
|
13
|
Не пользуюсь никакими арифметическими операциями, кроме умножения и сложения, вычислить за минимальное число операций
Y = x5 + 2x4 + 3x3 + 4x2 +5x + 6
|
x
|
14
|
Не пользуюсь никакими арифметическими операциями, кроме умножения, вычитания и сложения, вычислить за минимальное число операций
Y = 2x4 - 3x3 + 4x2 - 5x + 6
|
x
|
Лабораторная работа «Использование различных функций Delphi»
Цель работы:
Усвоить правила записи математических и логических выражений, работу оператора присваивания.
Научиться составлять программы с линейными алгоритмами на Delphi, используя различные функции.
Краткие сведения из теории
|