Разработка приложений в Borland Delphi
Введение
Практика
- способствует укреплению знаний и получению новых навыков работы при решении
задач разного характера. Практика позволяет достигать определенной, заранее
поставленной цели
<#"784418.files/image001.gif">
Рисунок 2.1. -приложение запущенно
Листинг:Project2;
{$APPTYPE CONSOLE};,b,c:real;('kolvo sek');(a);:=a/60 ; // минуты:=a/360;
// часы('proslo' ,b:2:2, 'minut' ,c:2:2, 'chasov');;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача № 2
Если число А больше или равно 10 и меньше или равно 99 и делится на число
В то появляется текст что это правда, иначе, ложь.
Рисунок 2.2. -приложение в действие
Листинг:
programProject2;
{$APPTYPECONSOLE};,b:Integer;(a,b);(a,b);(a>= 10) and
(a<=99) and (a mod b=0)('true') else writeln ('false');;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача № 3
Вычислить
значение выражения по формуле
Рисунок
2.3 - решение задачи
Листинг:
programProject2;
{$APPTYPECONSOLE};,y,a:real;('x,y') ;(x,y);:=(x+y) /
(y+1) - (x*y-12 / 34+x);('otvet' ,' a=',a:7:2);;
{ TODO -oUser -cConsole Main : Insert code here }
end.
Задача
№ 4
Найти
произведение цифр заданного четырехзначного числа.
Рисунок
2.4. - произведение найдено
Листинг:
programProject1;
{$APPTYPECONSOLE};, Proizv: integer;:=1;('chislo:
');(Chislo);> 0 do:=Proizv*(Chislo mod 10);:=Chislo div 10;;('proizvedenie:
', Proizv);;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача № 5
Квадрат заданного трехзначного числа равен кубу суммы цифр этого числа.
Рисунок 2.5. - приложение запущено
Задача № 6
Даны действительны числа x и y не равные друг другу. Меньшее из
этих двух чисел заменить половинной их суммы, а большее их удвоенным
произведением.
Рисунок 2.6. - числа заменены
Листинг:
programProject2;
{$APPTYPECONSOLE};,y,s,p: Real;('vveditex,y');(x,y);:=(x+y)/2;:=2*x*y;x<y
then:=s;:=p;:=p;:=s;;(x:6:3,' ',y:6:3);;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача № 7
Даны три числа a,b,c.Определить, какое из них равно d. Если не одно не равно d, то найти мах (d-a) , (d-b), (b-c).
Рисунок 2.7. - приложение в действие
Листинг:
programProject1;
{$APPTYPECONSOLE};,s1,s2,a,b,c,d:
Integer;('a,b,c,d');(a,b,c,d);(a = d) then writeln ('chislo a = chislu d');;(b=d)
then writeln ('chislo b = chislu d') ;;(c=d) then writeln ('chislo c = chislu
d');:=d-a;:=d-b;:=b-c;('s ravno' ,s); Readln ;('s1 ravno', s1); ;('s2 ravno',
s2);;;(s>s1) and (s>s2) then Writeln ('s max');(s1>s) and
(s1>s2)then Writeln ('s1 max');(s2>s1) and (s2>s) then Writeln ('s2
max');;;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача № 8
Если сумма трех попарно различных действительных чисел X,Y,Z меньше единицы,
то наименьшее из этих трех чисел заменить полусуммой двух других; в противном
случае заменить меньшее из X,Y полусуммой двух оставшихся значений.
Рисунок 2.8. - решение задачи
Листинг:
programProject2;
{$APPTYPECONSOLE};,y,z,s,min: real;('vvedite X: '); readln
(x);('vvedite Y: '); readln (y);('vvedite Z: '); readln (z);:=x+y+z;s<1
then('summa menshe 1');(x<y) and (x<z) then x:=(y+z)/2if y<z then
y:=(x+z)/2z:=(x+y)/2;('summa bolshe 1');('X = ',x:3:2,' Y = ',y:3:2, ' Z =
',z:3:2);;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача № 9
Вычислить значение функции
F(x)=
Рисунок
2.9. - решение функции
Листинг:
programProject2;
{$APPTYPECONSOLE};: Real;:
Integer;('Vveditex');(x);x>1 then:=1/(x+6);('y=',y:0:3);;('0=0');;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача
№ 10
Для
каждой введенной цифры (0-9) вывести соответсвуещие ей название на английском
языке (0-zero ,1-one, 2-two…)
Рисунок
2.10. - приложение запущено
Листинг:
programProject2;
{$APPTYPECONSOLE};: integer;: string;('vveditechislo:
'); readln(n);:= 1 to length(n) don[i] of
'0': write('zero ');
'1': write('one ');
'2': write('two ');
'3': write('three ');
'4': write('four ');
'5': write('five ');
'6': write('six ');
'7': write('seven ');
'8': write('eight ');
'9': write('nine ');;;
{ TODO -oUser -cConsole Main : Insert code here }
end.
Задача
№ 11
Около
стены стоит палка длинной Xм. Один ее конец находится на расстоянии Yм.
от стены. Определить значение угла а между палкой и полом для значений x=k м и
yизменяющегося от 2 до 3 метров с шагом h м.
Рисунок
2.11. - угол определился
Листинг:
programProject2;
{$APPTYPECONSOLE};,y,c,v,b,hy:real;('X = '); (x);
('shag y = ');(hy);:=2; y<=3 do begin
:=arctan((y/sqr(1-y*y))/(x/sqr(1-x*x)));:=(pi/2)-c; ('Ygol = ',v:3:5,' pri
y=',y:3:5);:=y+hy;;;
{ TODO -oUser -cConsole Main : Insert code here }
end.
Задача
№ 12
Дано
натуральное число N, вычислить:
Рисунок
2.12. - выполненая задача
Листинг:
programProject2;
{$APPTYPECONSOLE};,i:integer;,c,s:real;:string;('BBegNte
n ');(n);:=0;i:=1 to n do :=S+cos(n)/sin(n);;('rezultat=',s:2:3);;
{ TODO -oUser -cConsole Main : Insert code here }.
Задача
№ 13
Произведение
n первых нечетных чисел равно p. Сколько сомножителей взято? Если введенное
число n не является указанным произведением, сообщить об этом.
Рисунок
2.13. - приложение в действие
Листинг:
programProject2;
{$APPTYPECONSOLE};,k:byte;,s:longint;('Vvedite
proizvedenie neskolkikh pervykh nechetnykh naturalnykh chisel
p=');(p);:=1;:=1;:=1;s<p do:=k+2;:=n+1;:=s*k;;s<>p then write('chislo
',p,' ne yavlyaetsya proizvedeniem pervykh ne chetnykh chisel')write('vziato
mnojitelei - ',n);;
{ TODO -oUser -cConsole Main : Insert code here }
end.
Задача № 14
Найти все делители натурального числа N.
Рисунок 2.14. - делители выведены
Листинг:
programProject2;
{$APPTYPECONSOLE};,n:Integer;('vvedite n');(N);j:=2 to N doN
mod j = 0 then write(j: 5);(j);
{ TODO -oUser -cConsole Main : Insert code here }
end.
Задача № 15
Перевести заданное число в 16ую систему:
Рисунок 2.15. - число переведено
Листинг:
programProject2;
{$APPTYPECONSOLE};a
: longint;DEC_HEX(x:longint):string;:array [0..15] of char =
('0','1','2','3','4','5','6','7', '8','9','A','B','C','D','E','F');:string; d:0..15;:='';(x<>0)
do:=x mod 16;:=x div 16;:=digits[d]+res;;_HEX:=res;;( a );( DEC_HEX(a) );;.
{ TODO -oUser
-cConsole Main : Insert code here }.
Задача № 16
Найти НОК трех чисел.
Рисунок 2.16. - НОК найдено
Листинг:
program Project2;
{$APPTYPE CONSOLE};NOD(a, b: Integer): Integer;(a<>0)
and (b<>0) do:=a mod b;(a<>0) then b:=b mod a;;:= a + b;;, N1, N3:
Integer;('vveditepervoechislo: ');(N1);('vveditevtoroechislo:
');(N2);('vveditetretiechislo: ');(N3);(N1*N2*N3*NOD(N1,NOD(N2,N3)) / (NOD(N1,
N2) * NOD(N1, N3) * NOD(N3, N2)):0:2);('najmi enter dliavihoda');;.
{ TODO -oUser -cConsole Main : Insert code here }
end.
Задача № 17
1. Разработать интерфейс приложения с применением компонентов: Edit, Memo, MaskEdit, BitBtn, Button, Label.
2. Разработать алгоритм решения задачи в соответствии с вариантом
задания.
. Реализовать разработанный алгоритм в рамках ранее созданного
интерфейса.
. Проверить работоспособность программы с помощью тестового набора
данных.
. Оформить отчет и сдать работу преподавателю.
Рисунок 2.17. - Запущена главная форма
Листинг:
unit Unit1;, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,, ExtCtrls, StdCtrls, Buttons, jpeg;= class(TForm): TBitBtn;:
TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;
btn7: TBitBtn;: TBitBtn;: TBitBtn;: TBitBtn;:
TImage;btn1Click(Sender: TObject);btn16Click(Sender: TObject);btn2Click(Sender:
TObject);btn3Click(Sender: TObject);btn4Click(Sender: TObject);btn5Click(Sender:
TObject);btn9Click(Sender: TObject);btn7Click(Sender:
TObject);btn8Click(Sender: TObject);btn6Click(Sender: TObject);
{ Private declarations }
{ Public declarations };: TForm1;Unit2, Unit7, Unit10,
Unit12, Unit13, Unit14, Unit3, Unit16, Unit17, Unit18, Unit19, Unit20, Unit23,
Unit22;
{$R *.dfm}TForm1.btn1Click(Sender:
TObject);.show;.Hide;;TForm1.btn16Click(Sender:
TObject);;;TForm1.btn2Click(Sender:
TObject);.show;.Hide;;TForm1.btn3Click(Sender:
TObject);.show;.Hide;;;TForm1.btn5Click(Sender:
TObject);.Hide;.show;;TForm1.btn9Click(Sender:
TObject);.show;.Hide;;TForm1.btn7Click(Sender:
TObject);.show;.Hide;;TForm1.btn8Click(Sender:
TObject);.Hide;.show;;TForm1.btn6Click(Sender: TObject);.show;.Hide;;
end.
Задача № 18
Текст задания: «Картотека фильмов». По выбранному из списка
жанру фильма на экран должен выводиться список фильмов относящихся к данному
жанру.
Рисунок 2.18. - Приложение картотека фильмов в действии
Листинг:TForm8.btn1Click(Sender:
TObject);cbb1.ItemIndex=0 then.Items.Clear;.Items.Add('21 и больше');1.Items.Add
('американский пирог');
lst1.Items.Add ('проект ИКС');
lst1.Items.Add ('одноклассники');
lst1.Items.Add ('папа досвидос');
end;cbb1.ItemIndex=1 then.Items.Clear;.Items.Add('13/13/13');1.Items.Add
('Паранормальное явление: Метка Дьявола ');
lst1.Items.Add ('Маньяк из твиттера');
lst1.Items.Add ('Заклятие');
lst1.Items.Add ('проклятие чаки');
end;cbb1.ItemIndex=2 then.Items.Clear;.Items.Add('Адреналин 1,2');.Items.Add
('Форсаж');.Items.Add ('Убитьбилла1 ,2');.Items.Add ('Вассаби');.Items.Add
('Леон ');;cbb1.ItemIndex=3 then.Items.Clear;.Items.Add('Титаник');1.Items.Add
('Побег из Шоушенка ');
lst1.Items.Add ('Зеленая миля ');
lst1.Items.Add ('Реквием по мечте');
lst1.Items.Add (' Хатико: Самый верный друг ');
end;
lst1.Items.Add (' Санта Барбара ');
lst1.Items.Add (' Не родись красивой ');
lst1.Items.Add (' Карпов');;;TForm8.btn2Click(Sender:
TObject);;;TForm8.btn3Click(Sender: TObject);.Hide;.show;;
end.
Задача № 19
Текст задания: Создать приложение Тест.
Рисунок 2.19. - Приложение тест запущено
Листинг:
procedure TForm9.btn1Click(Sender:
TObject);:=0;RG1.itemindex=-1('нечегоневыбрано')elserg1.itemindex=0x:=x+1;rg2.itemindex=-1('нечегоневыбрано')elseRG2.itemindex=2x:=x+1;rg3.itemindex=-1('нечегоневыбрано')elseRG3.itemindex=2x:=x+1;rg4.itemindex=-1('нечегоневыбрано')elseRG4.itemindex=0x:=x+1;x:=x+1;('вашрезультат' +inttostr
(x));;TForm9.btn3Click(Sender: TObject);.Close;.Close;;TForm9.btn2Click(Sender:
TObject);.hide;.show;
end;.
Задача № 20
Текст задания:
) устанавливать количество столбцов и строк квадратной таблицы StringGrid
равными числу, вводимому пользователем;
) закрашивать ячейки таблицы, расположенные на главной диагонали и ниже
цветом, выбранным пользователем.
Рисунок
2.20. - Приложение запущено
Листинг:TForm10.btn1Click(Sender:
TObject);.ColCount:=StrToInt(SpinEdit1.Text);.RowCount:=StrToInt(SpinEdit1.Text);.DefaultColWidth:=(StringGrid1.Width)div(StrToInt(SpinEdit1.Text));.DefaultRowHeight:=(stringGrid1.Height)div
(StrToInt(SpinEdit1.Text));;TForm10.Colorgrid1Change(Sender:
TObject);,j:integer;:Trect;StringGrid1
do.Canvas.Brush.Color:=Colorgrid1.ForegroundColor;i:=0 to colcount-1 doj:=0 to
colcount-1 doi>=j then:=StringGrid1.cellrect(i,j);.Canvas.FillRect(rec);;;;TForm10.btn2Click(Sender:
TObject);.Hide;.show;
end;.
Задача № 21
Текст задания: Составить таблицу 4х4, состоящую из целых чисел. Программа
должна выводить число, лежащее в ячейке с введенным с клавиатуры номером
столбца и строки.
Рисунок
2.21. - матрица
Листинг:.btn2Click(Sender:
TObject);.close;.close;;TForm11.btn1Click(Sender: TObject);,j:integer;;StrnGrd1
do:=5;:=5;:=40;i:=1 to 4 do[i,0]:=IntToStr(i);[0,i]:=IntToStr(i);;i:=1 to 4
doj:=1 to 4 do[i,j]:=IntToStr(random(999));;;TForm11.btn3Click(Sender:
TObject);,j:integer;not TryStrToInt(Edt1.Text,i) or(Edt2.Text,i) then
ShowMessage('Вы ввели не целое число');
exitnot (StrToInt(Edt1.Text) in [1..4])
or(StrToInt(Edt2.Text) in [1..4]) then
begin('Номера строки и столбца должны быть от 1 до 4');
exit;:=StrToInt(Edt1.Text);:=StrToInt(Edt2.Text);.Text:=StrnGrd1.Cells[j,i];;TForm11.BitBtn1Click(Sender:
TObject);.Show;.Hide;
end;.
Задача № 22
Текст задания: Создать приложение позволяющее просматривать картинки, при
выборе картинки должны отображаться те форматы которые выбрал пользователь.
Рисунок
2.22. - Приложениезапущено
Листинг:TForm12.Button1Click(Sender:
TObject);OpenDialog1.Execute then.picture.LoadFromFile(OpenDialog1.FileName);.Caption:=opendialog1.filename;;TForm12.RadioGroup1Click(Sender:
TObject);.itemindex=0 then OpenDialog1.filter:='format bmp|*.bmp';.itemindex=1
then OpenDialog1.filter:='format jpg|*.jpg|*.jpeg';;TForm12.Button2Click(Sender:
TObject);;;TForm12.Button3Click(Sender: TObject);.Close;.show;;
end.
Задача № 23
Текст задания: Создать приложение позволяющее просматривать анимация
беспрерывно и по кадрам.
Рисунок 2.23. - Приложение “Анимация” запущено
procedure TForm13.RadioButton2Click(Sender:
TObject);.Enabled:=True;.Enabled:=true;.Enabled:=False;;TForm13.Button1Click(Sender:
TObject);Animate1.Active =
Falsebegin.StartFrame:=1;.StopFrame:=Animate1.FrameCount;.Active:=True;.caption:='Стоп';.Enabled:=False;.Active:=False;.caption:='Пуск';.Enabled:=True;;;TForm13.Button2Click(Sender:
TObject);= Animate1.FrameCountbutton3.Enabled := True;> 1 then:=CFrame
-1;.StartFrame := CFrame;.StopFrame := CFrame;TForm13.Button3Click(Sender:
TObject);= 1 then button3.Enabled := True;< Animate1.FrameCount then:=CFrame
+ 1;.StartFrame := CFrame;.StopFrame := CFrame;.Active := True;=
Animate1.FrameCountbutton3.Enabled:=False;;;TForm13.RadioButton1Click(Sender:
TObject);.Enabled:=True;.Button3.Enabled:=False;.Button2.Enabled:=False;;TForm13.Button4Click(Sender:
TObject);.show;.close;;TForm13.Button5Click(Sender: TObject);.Close;.close;;
end.
Задача № 24
Текст задания: Составить алгоритм и написать программу для решения задачи
согласно своему варианту. По заданным координатам точки М(x,y) определить попадает или нет точка М в заштрихованную
область.
Рисунок 2.24. - Приложение запущено
Листинг:
procedureTForm21.BitBtn1Click(Sender: TObject);
begin:=StrTofloat(Edit1.Text);:=StrTofloat(Edit2.Text);(x<=1)
and (y<=1) and (x>=0) and (y>=0) then label1.caption:= ('точка M
входит в закрашеннуюобасть')1.caption:= ('точка М не входит в закрашенную
обасть');
end;TForm21.BitBtn2Click(Sender:
TObject);.Close;.close;;TForm21.BitBtn3Click(Sender: TObject);.show;.Close;;
end.
Задача № 25
Текст задания: Дана матрица 5 на 5. Выяснить, верно ли, что наибольшее из
значений элементов главной диагонали больше, чем наименьшее из значений
элементов побочной диагонали.
Рисунок 2.25. - Приложение “Матрица” запущено
Листинг:
procedure TForm16.Button1Click(Sender:
TObject);,j:integer;;StringGrid1 doi:=1 to 5
do[i,0]:=IntToStr(i);[0,i]:=IntToStr(i);;i:=1 to 5 doj:=1 to 5 do[i,j]:=IntToStr(Random
(99));;TForm16.Button2Click(Sender: TObject);:array [1..5, 1..5] of Integer;,
j:Integer;i:=1 to 6-1 do.Cells[0,i]:='i= ' + IntToStr(i);.Cells[i,0]:='j= ' +
IntToStr(i);;i:=1 to 6-1 do:=a[5,1];i:=6-1 downto 1 doj:=1 to 6-1 doa[6-j,j]<min
then min:=a[6-j,j] ;.Caption:='= '+inttostr (min);;TForm16.Button3Click(Sender:
TObject);:array [1..5, 1..5] of Integer;, j:Integer;i:=1 to 5
do.Cells[0,i]:='i= ' + IntToStr(i);.Cells[i,0]:='j= ' +
IntToStr(i);;:=StrToInt(StringGrid1.Cells[1,1]);i:=1 to 5 do.Caption:='=
'+inttostr(max);;TForm16.Button4Click(Sender: TObject);
ifmax>minthenlabel5.caption:='наибольшее из значений элементов главной диагонали
больше чем наименьшее из значений побочной диагонали'
elselabel5.caption:='утверждение не еврно';
end;
end.
Задача № 26
Текст задания:
. Разработать алгоритм решения в соответствии с заданием.
.Обработать на ЭВМ матрицу в соответствии с вариантом задания, указанного
в таблице.
. Проверить правильность выполнения с помощью тестового варианта.
Рисунок 2.26. - Приложение “Матрица” в действии
Листинг:
procedure TForm17.Button1Click(Sender:
TObject);,j:integer;;StringGrid1 doi:=1 to 5
do[i,0]:=IntToStr(i);[0,i]:=IntToStr(i);;i:=1 to 5 doj:=1 to 5 do[i,j]:=IntToStr(Random
(99)-50);;TForm17.Button2Click(Sender: TObject);i:=1 to 6-1
do.Cells[0,i]:='i='+ inttostr(i);.Cells[i,0]:='j='+ IntToStr(i);;i:=1 to 6-1
doj:=1 to 6-1 do[i,j]:= StrToInt(StringGrid1.Cells[i,j]);:=0;:=0;i:=1 to 6-1
doj:=1 to 6-1 do>j then:=sum+a[i,j];;i:=1 to 6-1 doj:=1 to 6-1 do(i>j)
and (a[i][j]>0)
then:=ch+1;;.Caption:=IntToStr(sum);.Caption:=inttostr(Ch);;TForm17.Button3Click(Sender:
TObject);.close;.close;;TForm17.Button4Click(Sender: TObject);.Show;.Hide;;
end.
Задача № 27
Текст задания: создать и вывести на форму две базы данных, два SQL запроса и отчет.
Рисунок 2.27. - приложение “База данных” запущено
Листинг:
procedureTForm14.BitBtn1Click(Sender:
TObject);.Close;.close;;TForm14.Button1Click(Sender: TObject);table1.State in
[dsInsert,dsEdit]then.post;;TForm14.Button2Click(Sender: TObject);table1.State
in [dsInsert,dsEdit]then.Cancel;;TForm14.Button3Click(Sender:
TObject);table1.State = dsBrowse then.insert;;TForm14.Button4Click(Sender:
TObject);table1.State = dsBrowse then.edit;;TForm14.Button5Click(Sender:
TObject);table1.State = dsBrowse thenMessagedlg('удалить
запись?',mtconfirmation,[mbYes,mbNo],0)=mrYes
then.delete;;TForm14.Button6Click(Sender: TObject);table2.State = dsBrowse
then.insert;;TForm14.Button7Click(Sender: TObject);table2.State in
[dsInsert,dsEdit]then.post;;TForm14.Button8Click(Sender: TObject);table2.State
= dsBrowse then.edit;;TForm14.Button9Click(Sender:
TObject);;TForm14.Button10Click(Sender: TObject);table2.State = dsBrowse thenMessagedlg('удалить
запись?',mtconfirmation,[mbYes,mbNo],0)=mrYes
then.delete;;TForm14.Button11Click(Sender:
TObject);.show;.Hide;;TForm14.N1Click(Sender:
TObject);.Close;.close;;TForm14.N2Click(Sender: TObject);.Show;.Hide;;.
Рисунок 2.28. - Приложение “Отчет” запущено
Рисунок
2.29. - предпросмотр отчета
Листинг:TForm15.Button1Click(Sender:
TObject);.Preview;;TForm15.BitBtn1Click(Sender:
TObject);.Close;.Close;;TForm15.N1Click(Sender: TObject);.Preview;;TForm15.N2Click(Sender:
TObject);.Close;.Close;
end;.
Заключение
Актуальность
<http://www.xn-----8kcodrdcygecwgg0byh.xn--p1ai/kak-napisat-diplom/aktualnost-diplomnoi-raboty>
прохождения технологической практики заключается в закреплении и получении
новых навыков по профессии программиста.
Практика началась с вводного инструктажа, изучения требований
определённого рабочего места, ознакомления с безопасностью работы.
Последующие дни практики были посвящены изучению простых программ такие
как просматривать анимацию, текстовые редактор, математические задачи,
назначения и принципы построения уникальных баз данных.
Исследовалось использование языка программирования BorlandDelphi 7.
Были получены знания о новых методах использования, создания баз данных,
запросов, списков, работа с анимацией.
Основными задачами практики являются:
1. улучшения качества профессиональной подготовки;
2. закрепление и расширение теоретических и практических знаний
и умений, приобретённых студентами в предшествующий период теоретического
обучения.
При прохождении учебной практики я творчески применял имеющиеся знания,
которые получил по основным учебным дисциплинам, по которым имеется аттестация
к окончанию 3 курса.
Широкий охват отраслей, с которыми мне пришлось сталкиваться на практике,
позволил мне лучше усвоить изученный теоретический материал, полученных на
занятиях в колледже.
Практическая деятельность мне помогла научиться самостоятельно решать
определённый круг задач, возникающих в ходе работы программиста. В частности, я
научился применять теоретические знания.
Литература
1. Шупрута В.В. "Самоучитель Delphi 2005"
2. ТейксейраС., ПавекоК. "BorlandDelphi 5. Руководство разработчика. Ч
. ТейксейраС., ПачекоК. "Borland Delphi 5. Руководство разработчика"
. Тейксейра С., Пачеко К. "BorlandDelhi 6.
Руководство разработчика"
. Тейлор Д. и др. "Delphi 3: библиотека
программиста"
. Фленов М. Е. "Библия Delphi"
. Озеров В. "Советы по Delphi."
. Зайцев О. В., Владимиров А. М. " Графика в
Delphi"
. Кандзюба С. П., Громов В. Н. "Delphi 6/7. Базы
данных и приложения. Лекции и упражнения"
. Семакин И.Г. «Основы программирования».