Advertisement
Guest User

Untitled

a guest
May 23rd, 2015
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.16 KB | None | 0 0
  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5. #include <conio.h>
  6. #define N 3         //eiee?anoai iiaoi?ia  -  aeoaeia ?aeo?nee
  7. #include "Unit1.h"
  8. //---------------------------------------------------------------------------
  9. #pragma package(smart_init)
  10. #pragma resource "*.dfm"
  11. TForm1 *Form1;
  12.  
  13. void risovka(int x0,int y1,int x1,int y0, int n)
  14. {
  15. int x, y, x11, x12, x21, x22, x31, x32, x41, x42,
  16.           y11, y12, y21, y22, y31, y32, y41, y42;
  17. if (n > 0)
  18.         {
  19.         //середины сторон
  20.         x = x1 / 2;
  21.         y = y1 / 2;
  22.         // для 1 квадрата
  23.         x11 = x0 + 5;   x12 = x;
  24.         y11 = y;        y12 = y0 + 5;
  25.         // для 2 квадрата
  26.         x21 = x + 10;   x22 = x1 - 5;
  27.         y21 = y;        y22 = y0 + 5;
  28.         // для 3 квадрата
  29.         x31 = x + 10;   x32 = x1 - 5;
  30.         y31 = y1 - 5;   y32 = y + 10;
  31.         // для 4 квадрата
  32.         x41 = x0 + 5;   x42 = x;
  33.         y41 = y1 - 5;   y42 = y + 10;
  34.  
  35.         // верхний левый
  36.         Form1->Image1->Canvas->MoveTo(x11, y11);
  37.         Form1->Image1->Canvas->LineTo(x11, y12);
  38.         Form1->Image1->Canvas->LineTo(x12, y12);
  39.         Form1->Image1->Canvas->LineTo(x12, y11);
  40.         Form1->Image1->Canvas->LineTo(x11, y11);
  41.         /*
  42.         // верхний правый
  43.         Form1->Image1->Canvas->MoveTo(x21, y21);
  44.         Form1->Image1->Canvas->LineTo(x21, y22);
  45.         Form1->Image1->Canvas->LineTo(x22, y22);
  46.         Form1->Image1->Canvas->LineTo(x22, y21);
  47.         Form1->Image1->Canvas->LineTo(x21, y21);
  48.         // нижний левый
  49.         Form1->Image1->Canvas->MoveTo(x31, y31);
  50.         Form1->Image1->Canvas->LineTo(x31, y32);
  51.         Form1->Image1->Canvas->LineTo(x32, y32);
  52.         Form1->Image1->Canvas->LineTo(x32, y31);
  53.         Form1->Image1->Canvas->LineTo(x31, y31);
  54.         // нижний правый
  55.         Form1->Image1->Canvas->MoveTo(x41, y41);
  56.         Form1->Image1->Canvas->LineTo(x41, y42);
  57.         Form1->Image1->Canvas->LineTo(x42, y42);
  58.         Form1->Image1->Canvas->LineTo(x42, y41);
  59.         Form1->Image1->Canvas->LineTo(x41, y41);
  60.         */
  61.         risovka(x11, y11, x12, y12, n - 1);
  62.         //risovka(x21, y21, x22, y22, n - 1);
  63.         //risovka(x3, y3, x22, y22, x33, y33, n - 1);
  64.         }
  65. getch();
  66. }
  67.  
  68.  
  69.  
  70. //---------------------------------------------------------------------------
  71. __fastcall TForm1::TForm1(TComponent* Owner)
  72.         : TForm(Owner)
  73. {
  74. }
  75. //---------------------------------------------------------------------------
  76.  
  77. void __fastcall TForm1::BitBtn1Click(TObject *Sender)
  78. {
  79.         {
  80.         int x0 = 0, y1 = 500, x1 = 500, y0 = 0;
  81.         //i?i?eniaea ia?aeuiiai o?aoaieuieea
  82.         Image1->Canvas->MoveTo(x0, y1);
  83.         Image1->Canvas->LineTo(x0, y0);
  84.         Image1->Canvas->LineTo(x1, y0);
  85.         Image1->Canvas->LineTo(x1, y1);
  86.         Image1->Canvas->LineTo(x0, y1);
  87.         //aucaaou ?aeo?neaio? ooieoe?
  88.         risovka(x0, y1, x1, y0, N);
  89.         getch();
  90.         }
  91. }
  92. //---------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement