Рисунок 4.2 Программа «Паутина» при вводе центральной координаты
Рисунок 4.3 Программа «Паутина» при вводе боковой координаты
Таким образом, для всех вариантов тестирования программа показывает
верный результат.
ЗАКЛЮЧЕНИЕ
программирование графический паутина алгоритм
Итогом курсовой работы стала разработка программы в среде C++Builder. Программа предоставляет собой рисования паутины из любой заданной точки. Приведён подробный алгоритм в виде блок-схемы и его описание, код программы.
Для выполнения курсовой работы использовались следующие системы
автоматизированного проектирования: С++Builder6, MSOffice 2013,MSPaint.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Герберт Шилдт, Полный справочник по С++, 4-е издание. М.: Издательский дом «Вильямс», 2004. - 800с.
. Архангельский А.Я. Программирование в C++ Builder. 2010 - 1230c.
. Липпман Дж. Основы программирования на С++. М.: СПБ, 2002
. Романов Е.Л., Практикум по программированию на С++.
СПБ, 2004 - 432с.
ПРИЛОЖЕНИЕ А
ИНТЕРФЕЙС ПРОГРАММЫ
ПРИЛОЖЕНИЕ Б
БЛОК-СХЕМА ПРОГРАММЫ
ПРИЛОЖЕНИЕ В
ТЕКС ПРОГРАММЫ
#include<vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include "Unit3.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;,y,i;
int x0,x1,x2,x3,x4,x5,x6,x7,y0,y1,y2,y3,y4,y5,y6,y7;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
__fastcall TForm1::Button4Click(TObject *Sender)
{->Close();
}
//---------------------------------------------------------------------------__fastcall TForm1::Button2Click(TObject *Sender)
{->Show();
}
//---------------------------------------------------------------------------__fastcall TForm1::Button1Click(TObject *Sender)
{
{=StrToInt(Edit1->Text);=StrToInt(Edit2->Text);
}(EConvertError&e)
{("Вы ввели не верно! Попробуйте ещё раз.");;
}(i=900;i>0;i=i-20) // рисуем многоугольники
{
=x;=y-40-i;=x+18+i;=y-18-i;=x+40+i;
y2=y;=x+18+i;=y+18+i;=x;
y4=y+40+i;=x-18-i;=y+18+i;=x-40-i;
y6=y;=x-18-i;=y-18-i;
[8];[0] = Point(x0,y0);[1] = Point(x1,y1);[2] = Point(x2,y2);[3] = Point(x3,y3);[4] = Point(x4,y4);[5] = Point(x5,y5);[6] = Point(x6,y6);[7] = Point(x7,y7);->Canvas->Polygon (points,7);
}=900;=x;=y-40-i;=x+18+i;=y-18-i;=x+40+i;=y;
x3=x+18+i;=y+18+i;=x;=y+40+i;=x-18-i;
y5=y+18+i;=x-40-i;=y;=x-18-i;=y-18-i;
->Canvas->MoveTo(x,y); // рисуемпрямуюлиниювправо->Canvas->LineTo(x2,y2);
->Canvas->MoveTo(x,y); // рисуемпрямуюлиниювниз->Canvas->LineTo(x4,y4);
->Canvas->MoveTo(x,y); // рисуемпрямуюлиниювлево->Canvas->LineTo(x6,y6);
->Canvas->MoveTo(x,y); // рисуемпрямуюлиниювверх->Canvas->LineTo(x0,y0);
Image1->Canvas->MoveTo(x,y); // рисуем прямую линию вправо и вверх
Image1->Canvas->LineTo(x1,y1);
Image1->Canvas->MoveTo(x,y); // рисуем прямую линию вправо и вниз
Image1->Canvas->LineTo(x3,y3);
Image1->Canvas->MoveTo(x,y); // рисуем прямую линию влево и вниз
Image1->Canvas->LineTo(x5,y5);
Image1->Canvas->MoveTo(x,y); // рисуем прямую линию влево и вверх
Image1->Canvas->LineTo(x7,y7);
}
//---------------------------------------------------------------------------__fastcall TForm1::Button5Click(TObject *Sender)
{->Canvas->FillRect(Rect(0,0,Image1->Width,Image1->Height));
// очищает форму
}}