|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.06.2014, 19:03 | #1 |
Пользователь
Регистрация: 04.12.2012
Сообщений: 23
|
Составить блок схему программы написанной на С++ builder 6
Ребят не представляете как нужна блок схема или хотя бы граф схема данной программы (в блок схеме или граф схеме нельзя использовать программный код. Можно описывать действия только словесно).
Код программы представляю ниже. //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include "Unit2.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; Graphics::TBitmap *buffer1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- int up[15], down[15], rows[8], x[8]; void queens(int c) { char symb = 'A'; for (int r = 0; r < 8; r++) if (rows[r] && up[r-c+7] && down[r+c]) { rows[r] = up[r-c+7] = down[r+c] = 0; x[c] = r; if (c == 7) { // Формируем строку индексов AnsiString s=""; for (int k = 0; k < 8; k++) s=s + (symb++) + IntToStr(x[k]+1) + " "; // Добавляем в список Form1->ListBox1->Items->Add(s); } else queens(c + 1); rows[r] = up[r-c+7] = down[r+c] = 1; } } void __fastcall TForm1::Button1Click(TObject *Sender) { Button2->Enabled=true; Button1->Enabled=false; for (int i = 0; i < 15; i++) up[i] = down[i] = 1; for (int i = 0; i < 8; i++) rows[i] = 1; queens(0); Button2->Click(); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { // Создать битмап изображение buffer1 = new Graphics::TBitmap; // Задаем параметры изображения buffer1->Height = PaintBox1->Height; buffer1->Width = PaintBox1->Width; //-------------------Заставка------------------------------- Form2= new TForm2(this); Form2->ShowModal(); Form2->Free(); } //--------------------------------------------------------------------------- bool Ches(int i, int j) { if (j%2==0) if (i%2==1) return true; else return false; else if (i%2==0) return true; else return false; } //------------------------------------------------------------------------- void ChesScreen(void) { // Задаем цвет кисти buffer1->Canvas->Brush->Color = clWhite; // Рисуем закрашенный прямоугольник размером с поле buffer1->Canvas->FillRect (TRect (0,0,buffer1->Width,buffer1->Height)); // Рисуем сетку шахматной доски for (int q=0;q<=8;q++) { buffer1->Canvas->MoveTo(q*37,0); buffer1->Canvas->LineTo(q*37,37*8); buffer1->Canvas->MoveTo(0,q*37); buffer1->Canvas->LineTo(37*8,q*37); } int polY,polX; for (int i=0;i<=8;i++) for (int j=0;j<=8;j++) if (Ches(i,j)) { polX=i; polY=j; TRect MyRect, MyOther; MyRect = Rect(polX*37+1,polY*37+1,polX*37+37 ,polY*37+37); MyOther = Rect(0,0,35,35); buffer1->Canvas->CopyRect(MyRect,Form1->Image3->Canvas, MyOther); } // Получаем строку индексов AnsiString s=Form1->ListBox1->Items->Strings[Form1->ListBox1->ItemIndex]; AnsiString query = ""; // Выбираем из строки только цифры for(int i = 2; i < s.Length(); i += 3) query = query + s[i]; // Расставляем фигуры for (int i=0;i<=7;i++) { int j=StrToInt(query[i+1]); polX=i; polY=j-1; TRect MyRect, MyOther; MyRect = Rect(polX*37+1,polY*37+1,polX*37+37 ,polY*37+37); MyOther = Rect(0,0,35,35); if (Ches(i,j)) buffer1->Canvas->CopyRect(MyRect, Form1->Image1->Canvas, MyOther); else buffer1->Canvas->CopyRect(MyRect, Form1->Image2->Canvas, MyOther); } // Прикрепляем изображение к канве pictureBox Form1->PaintBox1->Canvas->Draw (0, 0, buffer1); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { ListBox1->ItemIndex=ListBox1->ItemIndex+1; ChesScreen(); } //--------------------------------------------------------------------------- void __fastcall TForm1::ListBox1Click(TObject *Sender) { ChesScreen(); } //--------------------------------------------------------------------------- |
12.06.2014, 09:45 | #2 |
Пользователь
Регистрация: 12.05.2010
Сообщений: 61
|
А программа то, где? (Я имею в виду полный листинг)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите составить блок схему для готовой программы PascalABC.NET | Sysypo4ka | Помощь студентам | 2 | 19.05.2014 07:18 |
Составить блок-схему программы | meatq | Помощь студентам | 4 | 30.04.2013 07:04 |
есть код программы (на дельфи), нужно составить по нему блок схему | as_sati | Помощь студентам | 10 | 19.04.2013 02:51 |
составить блок-схему по тексту программы | Маюха Чайковская | Помощь студентам | 0 | 16.06.2011 00:37 |
Составить блок-схему программы на "C++ Builder 5" | Kreadlling | Общие вопросы C/C++ | 0 | 30.09.2009 11:49 |