Автор: Пользователь скрыл имя, 24 Декабря 2010 в 18:40, курсовая работа
Данная курсовая работа представляет собой описание и процесс реализации программного продукта для конечного пользователя. Программа представляет собой реализацию алгоритма по определению Эйлеровых и Гамильтоновых цепей и циклов, относящаяся к разряду полезных учебных программ. Курсовая работа содержит подробное описание программы, ее предназначение, функциональные блоки, общее и подробное описание структуры и прочее.
Введение……………………………………………………………………………5
1. Инструкция для пользователя………………………………………………....6
1. Описание программы и теоритические сведения……...………………..6
2. Управление………………………………………………………………....6
3. Комплектация……………………………………………………………....7
4. Эксплуатация…………………………………………………………….....7
2. Инструкция для программиста…………………………………………….......8
2.1 Руководство системному программисту…………………………….........8
2.2 Стандартные процедуры и функции………………………………….........8
2.3 Функциональная схема………………………………………………….......9
Заключение………………………………………………………………………....10
Список литературы………………………………………………………………...11
Приложения………………………………………………………………………...12
1. Текст программы…………………………………………………………....12
2. Результат работы программы………………………………………….......16
Timer3
- процедура, отвечающая за
Входные данные: нет Выходные данные: нет
FormCreate - процедура, отвечающая за задание первоначальных значение переменным.
Входные
данные: нет Выходные
данные: нет
Функциональная
схема программы:
При создании программы я
Список литературы
1. Фаронов В.В. Turbo Pascal 7.0. “Начальный курс”. Учебное пособие. - М.: “Нолидж”, 1997. - 667с.
2. Немнюгин С.А. “Turbo Pascal. Практикум”. - СПб, 2001. - 456с.
3. Марченко А.И., Марченко Л.А. “Программирование в среде Turbo Pascal 7.0” / Под ред. Тарасенко В.П. - изд. 6-е. - К.: ВЕК+, 2000. - 464с.
4. Андреенко П.К. “Книга халявных программ для случая, если вам нужно написать курсовую”.
5. Рукосуев П.К. Программирование в среде Turbo Pascal 9.11
6. Флигинских А.В. “Delphi или курсовая нахаляву”
7. Скакуновчиков Ц.Ч. “Паскаль и Дельфи от нечего делать”
8. Проволкин Ж.О. “Delphi для профов”
9. Припадковкин Я.Щ. “Программирование в среде Turbo Pascal 7.0 для детей дошкольного возраста”.
10. Кармагедонов А.Б. “Дельфи для чайников”
11. Ореховосоев В.Г. “Бейсик для специалистов”
12. Компов
М.Б. “Негативное воздействие компьютера
на организм человека”
Internet:
www.Halyvnieprogi.com
www.kursovieZadarom.com
www.ViktorPelevin.com
www.SdayKursachNa5.com
Замечание:
Так как текст программы занимает в объеме
печатного текста более 60 листов, здесь
будут приведены блоки, включающие только
основные процедуры программы.
Текст
программы:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls,
Buttons;
type
TForm1 = class(TForm)
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
RadioButton5: TRadioButton;
BitBtn1: TBitBtn;
RadioButton6: TRadioButton;
RadioButton7: TRadioButton;
RadioButton8: TRadioButton;
RadioButton9: TRadioButton;
RadioButton10: TRadioButton;
RadioButton11: TRadioButton;
RadioButton12: TRadioButton;
RadioButton13: TRadioButton;
RadioButton14: TRadioButton;
RadioButton15: TRadioButton;
RadioButton16: TRadioButton;
Bevel1: TBevel;
Bevel2: TBevel;
Bevel3: TBevel;
Bevel4: TBevel;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn2: TBitBtn;
Memo1: TMemo;
Memo2: TMemo;
Shape1: TShape;
BitBtn5: TBitBtn;
Memo3: TMemo;
Memo4: TMemo;
Edit1: TEdit;
BitBtn6: TBitBtn;
Label3: TLabel;
Bevel7: TBevel;
Label4: TLabel;
Panel1: TPanel;
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
procedure RadioButton3Click(Sender: TObject);
procedure RadioButton4Click(Sender: TObject);
procedure RadioButton5Click(Sender: TObject);
procedure RadioButton6Click(Sender: TObject);
procedure RadioButton7Click(Sender: TObject);
procedure RadioButton8Click(Sender: TObject);
procedure RadioButton9Click(Sender: TObject);
procedure RadioButton10Click(Sender: TObject);
procedure RadioButton11Click(Sender: TObject);
procedure RadioButton12Click(Sender: TObject);
procedure RadioButton13Click(Sender: TObject);
procedure RadioButton14Click(Sender: TObject);
procedure RadioButton15Click(Sender: TObject);
procedure RadioButton16Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure Panel1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
chet,i,j,koff,prov1,prov2,
s:string;
xy:array[1..16,1..2]of integer;
c:array[1..16,1..16]of integer;
cc:array[1..256,1..256]of integer;
mas:array[1..16]of integer;
re:array[1..256,1..2]of
integer;
implementation
{$R *.dfm}
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y:
Integer);
begin
memo2.text:='';
if button=mbRight then BitBtn1Click(Sender)else begin
if (x>22)and(x<480)and(y>22)and(
inc(chet);
if chet=1 then begin radiobutton1.Left:=x-7;
if chet=2 then begin radiobutton2.Left:=x-7;
if chet=3 then begin radiobutton3.Left:=x-7;
if chet=4 then begin radiobutton4.Left:=x-7;
if chet=5 then begin radiobutton5.Left:=x-7;
if chet=6 then begin radiobutton6.Left:=x-7;
if chet=7 then begin radiobutton7.Left:=x-7;
if chet=8 then begin radiobutton8.Left:=x-7;
if chet=9 then begin radiobutton9.Left:=x-7;
if chet=10 then begin radiobutton10.Left:=x-7;
if chet=11 then begin radiobutton11.Left:=x-7;
if chet=12 then begin radiobutton12.Left:=x-7;
if chet=13 then begin radiobutton13.Left:=x-7;
if chet=14 then begin radiobutton14.Left:=x-7;
if chet=15 then begin radiobutton15.Left:=x-7;
if chet=16 then begin radiobutton16.Left:=x-7;
if chet=17 then memo2.text:='Демо-версия программы работает только не более чем с 16 вершинами. Купить полную версию: fligy@rambler.ru';
memo1.Text:='';
if chet=17 then chet:=16;
BitBtn2Click(Sender);
end;
end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
panel1.Visible:=true;
panel1.Visible:=false;
form1.Canvas.Pen.Color:=clred;
bitbtn1.Font.Color:=clnavy;
memo2.Text:='';
memo3.Text:='';
memo4.Text:='';
memo1.Text:='';
chet:=0;
prov1:=0;
o:=1;
for i:=1 to 16 do for j:=1 to 2 do xy[i,j]:=-1;
for i:=1 to 16 do for j:=1 to 16 do c[i,j]:=0;
for i:=1 to 256 do for j:=1 to 2 do re[i,j]:=0;
for i:=1 to 256 do for j:=1 to
256 do cc[i,j]:=0;
radiobutton1.Left:=840;
radiobutton2.Left:=840;
radiobutton3.Left:=840;
radiobutton4.Left:=840;
radiobutton5.Left:=840;
radiobutton6.Left:=840;
radiobutton7.Left:=840;
radiobutton8.Left:=840;
radiobutton9.Left:=840;
radiobutton10.Left:=840;
radiobutton11.Left:=840;
radiobutton12.Left:=840;
radiobutton13.Left:=840;
radiobutton14.Left:=840;
radiobutton15.Left:=840;
radiobutton16.Left:=840;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
form1.Canvas.Font.Color:=
form1.Canvas.Brush.Color:=
form1.Canvas.Pen.Color:=clred;
bitbtn1.Font.Color:=clnavy;
o:=1;
chet:=0;
prov1:=0;
prov2:=0;
for i:=1 to 16 do for j:=1 to 2 do xy[i,j]:=-1;
for i:=1 to 16 do for j:=1 to 16 do c[i,j]:=0;
for i:=1 to 256 do for j:=1 to 2 do re[i,j]:=0;
for i:=1 to 256 do for j:=1 to 256 do cc[i,j]:=0;
memo2.Text:='';
memo3.Text:='';
memo4.Text:='';
memo1.Text:='';
end;
procedure TForm1.RadioButton1Click(
begin
memo2.Text:='';
if prov1=1 then begin
str(o,s);
form1.Canvas.TextOut(koor1+
form1.Canvas.MoveTo(koor1,
form1.Canvas.LineTo(xy[1,1],
prov1:=0; c[1,ver]:=1;
c[ver,1]:=1;
radiobutton1.Checked:=false;
re[o,1]:=1;
re[o,2]:=qwe;inc(o);
end else begin qwe:=1;
koor1:=xy[1,1];
koor2:=xy[1,2];
ver:=1;prov1:=1; end;
end;
procedure TForm1.RadioButton2Click(
begin memo2.Text:='';
if prov1=1 then begin
str(o,s);
form1.Canvas.TextOut(koor1+
form1.Canvas.MoveTo(koor1,