fork download
  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5.  
  6. #include "Unit1.h"
  7. //---------------------------------------------------------------------------
  8. #pragma package(smart_init)
  9. #pragma resource "*.dfm"
  10.  
  11. #include <iostream>
  12. #include <time.h>
  13. #include <cstdlib>
  14. #include <stdio.h>
  15. #include <windows.h>
  16. #include <conio.h>
  17. #include <stdlib.h>
  18. #include <string>
  19.  
  20. using namespace std;
  21. TForm1 *Form1;
  22.  
  23. //globalne zmienne
  24. string win="true"; //zwyciestwo (true/false)
  25. int sudoku[9][9]= { //pusta plansza (do generowania)
  26. {0,0,0,0,0,0,0,0,0},
  27. {0,0,0,0,0,0,0,0,0},
  28. {0,0,0,0,0,0,0,0,0},
  29. {0,0,0,0,0,0,0,0,0},
  30. {0,0,0,0,0,0,0,0,0},
  31. {0,0,0,0,0,0,0,0,0},
  32. {0,0,0,0,0,0,0,0,0},
  33. {0,0,0,0,0,0,0,0,0},
  34. {0,0,0,0,0,0,0,0,0}
  35. };
  36.  
  37.  
  38. //klasy
  39.  
  40. class Array
  41. {
  42. private:
  43. int value; //atrybut wartosci
  44.  
  45. public:
  46. //metoda dodania wartosci
  47. void add(int v)
  48. {
  49. value=v;
  50. }
  51. //metoda pobrania wartosci
  52. int get_value()
  53. {
  54. return value;
  55. }
  56. };
  57. Array a[9][9]; //utworzenie macierzy obiektow klasy Array
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65. class Cell
  66. {
  67. private:
  68. //atrybut wartosci wpisywanej do komorki
  69. int value;
  70. //atrybut etykiety obiektu
  71. string honest;
  72. public:
  73. //metody
  74. //Dodanie wartosci atrybutowi value
  75. void add(int v)
  76. {
  77. value=v;
  78. }
  79.  
  80. //obsluga dodawania etykiety true/false
  81. void add_honest(string h)
  82. {
  83. if(h=="true")
  84. {
  85. honest="true";
  86. }
  87. else
  88. {
  89. honest="false" ;
  90. }
  91. }
  92. //pobranie wartosci
  93. int get_value()
  94. {
  95. return value;
  96. }
  97. //pobranie etykiety
  98. string get_honest()
  99. {
  100. return honest;
  101. }
  102.  
  103.  
  104. };
  105.  
  106.  
  107. Cell c[9][9]; //utworzenie macierzy obiektow klasy Cell
  108.  
  109. //funkcje
  110. //sprawdzenie zgodnosci wartosci macierzy
  111. void check()
  112. {
  113. for(int i=0; i<9; i++)
  114. {
  115. for(int j=0; j<9; j++)
  116. {
  117. if(c[i][j].get_honest()=="false")
  118. {
  119. win="false" ;
  120. }
  121.  
  122. }
  123. }
  124.  
  125.  
  126. }
  127.  
  128.  
  129. //losowanie wartości pierwszgo obiektu macierzy
  130. void losuj()
  131. {
  132. int liczba=0;
  133. srand(time(NULL));
  134. liczba=rand()%9+0;
  135. sudoku[0][0]=liczba;
  136. }
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148. bool solve(int x, int y); //definicja funkcji rozwiazujacej zadana plansze
  149.  
  150.  
  151. int curr[9][9];
  152. bool can_insert(int x, int y, int value) {
  153. for(int i = 0; i < 9; i++) {
  154. if (value == curr[x][i] || value == curr[i][y] ||
  155. value == curr[x/3*3+i%3][y/3*3+i/3]) return false;
  156. } return true;
  157. }
  158.  
  159. bool next(int x, int y) {
  160. if (x == 8 && y == 8) return true;
  161. else if (x == 8) return solve(0, y + 1);
  162. else return solve(x + 1, y);
  163. }
  164.  
  165. bool solve(int x, int y) {
  166. if (sudoku[x][y] == 0) {
  167. for(int i = 1; i <= 9; i++) {
  168. if (can_insert(x, y, i)) {
  169. curr[x][y] = i;
  170. if (next(x, y)) return true;
  171. }
  172. } curr[x][y] = 0; return false;
  173. } return next(x, y);
  174. }
  175. //generowanie rozwiazanej planszy sudoku
  176. void generuj() {
  177.  
  178. losuj(); //wylosowanie wartosci obiektu o wspolrzednych (0; 0)
  179.  
  180.  
  181. for(int i=0; i<9; i++)
  182. for(int j=0; j<9; j++)
  183. curr[i][j] = sudoku[i][j];
  184. if (solve(0,0)) {
  185. for(int i=0; i<9; i++) {
  186. for(int j=0; j<9; j++) {
  187. a[i][j].add(curr[i][j]);
  188. } cout<<endl;
  189. }
  190. }
  191.  
  192.  
  193.  
  194.  
  195.  
  196. }
  197.  
  198. //wpisanie etykiet
  199. void wpisz_etykiety()
  200. {
  201. for(int i=0; i<9; i++)
  202. {
  203. for(int j=0; j<9; j++)
  204. {
  205. if(c[i][j].get_value()==a[i][j].get_value())
  206. {
  207. c[i][j].add_honest("true");
  208. }
  209. else
  210. {
  211. c[i][j].add_honest("false");
  212. }
  213. }
  214. }
  215. }
  216.  
  217.  
  218.  
  219.  
  220. //---------------------------------------------------------------------------
  221. __fastcall TForm1::TForm1(TComponent* Owner)
  222. : TForm(Owner)
  223. {
  224. }
  225. //---------------------------------------------------------------------------
  226. void __fastcall TForm1::Exit(TObject *Sender)
  227. {
  228. exit(0);
  229. }
  230. //---------------------------------------------------------------------------
  231.  
  232. void __fastcall TForm1::Button1Click(TObject *Sender) //przycisk "Sprawdz"
  233. {
  234. wpisz_etykiety(); //wprowadzenie etykiet do obiektow
  235. check(); //sprawdzenie etykiet
  236.  
  237. if(win=="false")
  238. {
  239. LinkLabel1->Caption="PRZEGRAŁEŚ";
  240. win="true";
  241. }
  242. else
  243. {
  244. LinkLabel1->Caption="WYGRAŁEŚ";
  245. win="true";
  246. }
  247.  
  248. }
  249. //nadawanie wartosci komorkom
  250. //---------------------------------------------------------------------------
  251.  
  252. void __fastcall TForm1::Edit1Change(TObject *Sender)
  253. {
  254. c[0][0].add(Edit1->Text.ToInt());
  255. }
  256.  
  257. //---------------------------------------------------------------------------
  258.  
  259.  
  260. void __fastcall TForm1::Edit2Change(TObject *Sender)
  261. {
  262.  
  263. c[1][0].add(Edit2->Text.ToInt());
  264.  
  265. }
  266. //---------------------------------------------------------------------------
  267.  
  268. void __fastcall TForm1::Edit3Change(TObject *Sender)
  269. {
  270. c[2][0].add(Edit3->Text.ToInt());
  271.  
  272. }
  273. //---------------------------------------------------------------------------
  274.  
  275.  
  276. void __fastcall TForm1::Edit4Change(TObject *Sender)
  277. {
  278. c[3][0].add(Edit4->Text.ToInt());
  279.  
  280. }
  281. //---------------------------------------------------------------------------
  282.  
  283.  
  284.  
  285. void __fastcall TForm1::Edit5Change(TObject *Sender)
  286. {
  287. c[4][0].add(Edit5->Text.ToInt());
  288.  
  289. }
  290. //---------------------------------------------------------------------------
  291.  
  292.  
  293. void __fastcall TForm1::Edit6Change(TObject *Sender)
  294. {
  295. c[5][0].add(Edit6->Text.ToInt());
  296.  
  297. }
  298. //---------------------------------------------------------------------------
  299.  
  300. void __fastcall TForm1::Edit7Change(TObject *Sender)
  301. {
  302. c[6][0].add(Edit7->Text.ToInt());
  303.  
  304. }
  305. //---------------------------------------------------------------------------
  306.  
  307. void __fastcall TForm1::Edit8Change(TObject *Sender)
  308. {
  309. c[7][0].add(Edit8->Text.ToInt());
  310.  
  311. }
  312. //---------------------------------------------------------------------------
  313.  
  314. void __fastcall TForm1::Edit9Change(TObject *Sender)
  315. {
  316. c[8][0].add(Edit9->Text.ToInt());
  317.  
  318. }
  319. //---------------------------------------------------------------------------
  320.  
  321. void __fastcall TForm1::Edit10Change(TObject *Sender)
  322. {
  323. c[0][1].add(Edit10->Text.ToInt());
  324.  
  325. }
  326. //---------------------------------------------------------------------------
  327.  
  328. void __fastcall TForm1::Edit11Change(TObject *Sender)
  329. {
  330. c[1][1].add(Edit11->Text.ToInt());
  331. }
  332. //---------------------------------------------------------------------------
  333.  
  334. void __fastcall TForm1::Edit12Change(TObject *Sender)
  335. {
  336. c[2][1].add(Edit12->Text.ToInt());
  337.  
  338. }
  339. //---------------------------------------------------------------------------
  340.  
  341. void __fastcall TForm1::Edit13Change(TObject *Sender)
  342. {
  343. c[3][1].add(Edit13->Text.ToInt());
  344.  
  345. }
  346. //---------------------------------------------------------------------------
  347.  
  348. void __fastcall TForm1::Edit14Change(TObject *Sender)
  349. {
  350. c[4][1].add(Edit14->Text.ToInt());
  351.  
  352. }
  353. //---------------------------------------------------------------------------
  354.  
  355. void __fastcall TForm1::Edit15Change(TObject *Sender)
  356. {
  357. c[5][1].add(Edit15->Text.ToInt());
  358.  
  359. }
  360. //---------------------------------------------------------------------------
  361.  
  362. void __fastcall TForm1::Edit16Change(TObject *Sender)
  363. {
  364. c[6][1].add(Edit16->Text.ToInt());
  365.  
  366. }
  367. //---------------------------------------------------------------------------
  368.  
  369. void __fastcall TForm1::Edit17Change(TObject *Sender)
  370. {
  371. c[7][1].add(Edit17->Text.ToInt());
  372.  
  373. }
  374. //---------------------------------------------------------------------------
  375.  
  376. void __fastcall TForm1::Edit18Change(TObject *Sender)
  377. {
  378. c[8][1].add(Edit18->Text.ToInt());
  379.  
  380. }
  381. //---------------------------------------------------------------------------
  382.  
  383. void __fastcall TForm1::Edit19Change(TObject *Sender)
  384. {
  385. c[0][2].add(Edit19->Text.ToInt());
  386.  
  387. }
  388. //---------------------------------------------------------------------------
  389.  
  390. void __fastcall TForm1::Edit20Change(TObject *Sender)
  391. {
  392. c[1][2].add(Edit20->Text.ToInt());
  393.  
  394. }
  395. //---------------------------------------------------------------------------
  396.  
  397. void __fastcall TForm1::Edit21Change(TObject *Sender)
  398. {
  399. c[2][2].add(Edit21->Text.ToInt());
  400.  
  401. }
  402. //---------------------------------------------------------------------------
  403.  
  404. void __fastcall TForm1::Edit22Change(TObject *Sender)
  405. {
  406. c[3][2].add(Edit22->Text.ToInt());
  407.  
  408. }
  409. //---------------------------------------------------------------------------
  410.  
  411. void __fastcall TForm1::Edit23Change(TObject *Sender)
  412. {
  413. c[4][2].add(Edit23->Text.ToInt());
  414.  
  415. }
  416. //---------------------------------------------------------------------------
  417.  
  418. void __fastcall TForm1::Edit24Change(TObject *Sender)
  419. {
  420. c[5][2].add(Edit24->Text.ToInt());
  421.  
  422. }
  423. //---------------------------------------------------------------------------
  424.  
  425. void __fastcall TForm1::Edit25Change(TObject *Sender)
  426. {
  427. c[6][2].add(Edit25->Text.ToInt());
  428.  
  429. }
  430. //---------------------------------------------------------------------------
  431.  
  432. void __fastcall TForm1::Edit26Change(TObject *Sender)
  433. {
  434. c[7][2].add(Edit26->Text.ToInt());
  435.  
  436. }
  437. //---------------------------------------------------------------------------
  438.  
  439. void __fastcall TForm1::Edit27Change(TObject *Sender)
  440. {
  441. c[8][2].add(Edit27->Text.ToInt());
  442.  
  443. }
  444. //---------------------------------------------------------------------------
  445.  
  446. void __fastcall TForm1::Edit28Change(TObject *Sender)
  447. {
  448. c[0][3].add(Edit28->Text.ToInt());
  449.  
  450. }
  451. //---------------------------------------------------------------------------
  452.  
  453. void __fastcall TForm1::Edit29Change(TObject *Sender)
  454. {
  455. c[1][3].add(Edit29->Text.ToInt());
  456.  
  457. }
  458. //---------------------------------------------------------------------------
  459.  
  460. void __fastcall TForm1::Edit30Change(TObject *Sender)
  461. {
  462. c[2][3].add(Edit30->Text.ToInt());
  463.  
  464. }
  465. //---------------------------------------------------------------------------
  466.  
  467. void __fastcall TForm1::Edit31Change(TObject *Sender)
  468. {
  469. c[3][3].add(Edit31->Text.ToInt());
  470.  
  471. }
  472. //---------------------------------------------------------------------------
  473.  
  474. void __fastcall TForm1::Edit32Change(TObject *Sender)
  475. {
  476. c[4][3].add(Edit32->Text.ToInt());
  477.  
  478. }
  479. //---------------------------------------------------------------------------
  480.  
  481. void __fastcall TForm1::Edit33Change(TObject *Sender)
  482. {
  483. c[5][3].add(Edit33->Text.ToInt());
  484.  
  485. }
  486. //---------------------------------------------------------------------------
  487.  
  488. void __fastcall TForm1::Edit34Change(TObject *Sender)
  489. {
  490. c[6][3].add(Edit34->Text.ToInt());
  491.  
  492. }
  493. //---------------------------------------------------------------------------
  494.  
  495. void __fastcall TForm1::Edit35Change(TObject *Sender)
  496. {
  497. c[7][3].add(Edit35->Text.ToInt());
  498.  
  499. }
  500. //---------------------------------------------------------------------------
  501.  
  502. void __fastcall TForm1::Edit36Change(TObject *Sender)
  503. {
  504. c[8][3].add(Edit36->Text.ToInt());
  505.  
  506. }
  507. //---------------------------------------------------------------------------
  508.  
  509. void __fastcall TForm1::Edit37Change(TObject *Sender)
  510. {
  511. c[0][4].add(Edit37->Text.ToInt());
  512.  
  513. }
  514. //---------------------------------------------------------------------------
  515.  
  516. void __fastcall TForm1::Edit38Change(TObject *Sender)
  517. {
  518. c[1][4].add(Edit38->Text.ToInt());
  519.  
  520. }
  521. //---------------------------------------------------------------------------
  522.  
  523. void __fastcall TForm1::Edit39Change(TObject *Sender)
  524. {
  525. c[2][4].add(Edit39->Text.ToInt());
  526.  
  527. }
  528. //---------------------------------------------------------------------------
  529.  
  530. void __fastcall TForm1::Edit40Change(TObject *Sender)
  531. {
  532. c[3][4].add(Edit40->Text.ToInt());
  533.  
  534. }
  535. //---------------------------------------------------------------------------
  536.  
  537. void __fastcall TForm1::Edit41Change(TObject *Sender)
  538. {
  539. c[4][4].add(Edit41->Text.ToInt());
  540.  
  541. }
  542. //---------------------------------------------------------------------------
  543.  
  544. void __fastcall TForm1::Edit42Change(TObject *Sender)
  545. {
  546. c[5][4].add(Edit42->Text.ToInt());
  547.  
  548. }
  549. //---------------------------------------------------------------------------
  550.  
  551. void __fastcall TForm1::Edit43Change(TObject *Sender)
  552. {
  553. c[6][4].add(Edit43->Text.ToInt());
  554.  
  555. }
  556. //---------------------------------------------------------------------------
  557.  
  558. void __fastcall TForm1::Edit44Change(TObject *Sender)
  559. {
  560. c[7][4].add(Edit44->Text.ToInt());
  561.  
  562. }
  563. //---------------------------------------------------------------------------
  564.  
  565. void __fastcall TForm1::Edit45Change(TObject *Sender)
  566. {
  567. c[8][4].add(Edit45->Text.ToInt());
  568.  
  569. }
  570. //---------------------------------------------------------------------------
  571.  
  572. void __fastcall TForm1::Edit46Change(TObject *Sender)
  573. {
  574. c[0][5].add(Edit46->Text.ToInt());
  575.  
  576. }
  577. //---------------------------------------------------------------------------
  578.  
  579. void __fastcall TForm1::Edit47Change(TObject *Sender)
  580. {
  581. c[1][5].add(Edit47->Text.ToInt());
  582.  
  583. }
  584. //---------------------------------------------------------------------------
  585.  
  586. void __fastcall TForm1::Edit48Change(TObject *Sender)
  587. {
  588. c[2][5].add(Edit48->Text.ToInt());
  589.  
  590. }
  591. //---------------------------------------------------------------------------
  592.  
  593. void __fastcall TForm1::Edit49Change(TObject *Sender)
  594. {
  595. c[3][5].add(Edit49->Text.ToInt());
  596.  
  597. }
  598. //---------------------------------------------------------------------------
  599.  
  600. void __fastcall TForm1::Edit50Change(TObject *Sender)
  601. {
  602. c[4][5].add(Edit50->Text.ToInt());
  603.  
  604. }
  605. //---------------------------------------------------------------------------
  606.  
  607. void __fastcall TForm1::Edit51Change(TObject *Sender)
  608. {
  609. c[5][5].add(Edit51->Text.ToInt());
  610.  
  611. }
  612. //---------------------------------------------------------------------------
  613.  
  614. void __fastcall TForm1::Edit52Change(TObject *Sender)
  615. {
  616. c[6][5].add(Edit52->Text.ToInt());
  617.  
  618. }
  619. //---------------------------------------------------------------------------
  620.  
  621. void __fastcall TForm1::Edit53Change(TObject *Sender)
  622. {
  623. c[7][5].add(Edit53->Text.ToInt());
  624.  
  625. }
  626. //---------------------------------------------------------------------------
  627.  
  628. void __fastcall TForm1::Edit54Change(TObject *Sender)
  629. {
  630. c[8][5].add(Edit54->Text.ToInt());
  631.  
  632. }
  633. //---------------------------------------------------------------------------
  634.  
  635. void __fastcall TForm1::Edit55Change(TObject *Sender)
  636. {
  637. c[0][6].add(Edit55->Text.ToInt());
  638.  
  639. }
  640. //---------------------------------------------------------------------------
  641.  
  642. void __fastcall TForm1::Edit56Change(TObject *Sender)
  643. {
  644. c[1][6].add(Edit56->Text.ToInt());
  645.  
  646. }
  647. //---------------------------------------------------------------------------
  648.  
  649. void __fastcall TForm1::Edit57Change(TObject *Sender)
  650. {
  651. c[2][6].add(Edit57->Text.ToInt());
  652.  
  653. }
  654. //---------------------------------------------------------------------------
  655.  
  656. void __fastcall TForm1::Edit58Change(TObject *Sender)
  657. {
  658. c[3][6].add(Edit58->Text.ToInt());
  659.  
  660. }
  661. //---------------------------------------------------------------------------
  662.  
  663. void __fastcall TForm1::Edit59Change(TObject *Sender)
  664. {
  665. c[4][6].add(Edit59->Text.ToInt());
  666.  
  667. }
  668. //---------------------------------------------------------------------------
  669.  
  670. void __fastcall TForm1::Edit60Change(TObject *Sender)
  671. {
  672. c[5][6].add(Edit60->Text.ToInt());
  673.  
  674. }
  675. //---------------------------------------------------------------------------
  676.  
  677. void __fastcall TForm1::Edit61Change(TObject *Sender)
  678. {
  679. c[6][6].add(Edit61->Text.ToInt());
  680.  
  681. }
  682. //---------------------------------------------------------------------------
  683.  
  684. void __fastcall TForm1::Edit62Change(TObject *Sender)
  685. {
  686. c[7][6].add(Edit62->Text.ToInt());
  687.  
  688. }
  689. //---------------------------------------------------------------------------
  690.  
  691. void __fastcall TForm1::Edit63Change(TObject *Sender)
  692. {
  693. c[8][6].add(Edit63->Text.ToInt());
  694.  
  695. }
  696. //---------------------------------------------------------------------------
  697.  
  698. void __fastcall TForm1::Edit64Change(TObject *Sender)
  699. {
  700. c[0][7].add(Edit64->Text.ToInt());
  701.  
  702. }
  703. //---------------------------------------------------------------------------
  704.  
  705. void __fastcall TForm1::Edit65Change(TObject *Sender)
  706. {
  707. c[1][7].add(Edit65->Text.ToInt());
  708.  
  709. }
  710. //---------------------------------------------------------------------------
  711.  
  712. void __fastcall TForm1::Edit66Change(TObject *Sender)
  713. {
  714. c[2][7].add(Edit66->Text.ToInt());
  715.  
  716. }
  717. //---------------------------------------------------------------------------
  718.  
  719. void __fastcall TForm1::Edit67Change(TObject *Sender)
  720. {
  721. c[3][7].add(Edit67->Text.ToInt());
  722.  
  723. }
  724. //---------------------------------------------------------------------------
  725.  
  726. void __fastcall TForm1::Edit68Change(TObject *Sender)
  727. {
  728. c[4][7].add(Edit68->Text.ToInt());
  729.  
  730. }
  731. //---------------------------------------------------------------------------
  732.  
  733. void __fastcall TForm1::Edit69Change(TObject *Sender)
  734. {
  735. c[5][7].add(Edit69->Text.ToInt());
  736.  
  737. }
  738. //---------------------------------------------------------------------------
  739.  
  740. void __fastcall TForm1::Edit70Change(TObject *Sender)
  741. {
  742. c[6][7].add(Edit70->Text.ToInt());
  743.  
  744. }
  745. //---------------------------------------------------------------------------
  746.  
  747. void __fastcall TForm1::Edit71Change(TObject *Sender)
  748. {
  749. c[7][7].add(Edit71->Text.ToInt());
  750.  
  751. }
  752. //---------------------------------------------------------------------------
  753.  
  754. void __fastcall TForm1::Edit72Change(TObject *Sender)
  755. {
  756. c[8][7].add(Edit72->Text.ToInt());
  757.  
  758. }
  759. //---------------------------------------------------------------------------
  760.  
  761. void __fastcall TForm1::Edit73Change(TObject *Sender)
  762. {
  763. c[0][8].add(Edit73->Text.ToInt());
  764.  
  765. }
  766. //---------------------------------------------------------------------------
  767.  
  768. void __fastcall TForm1::Edit74Change(TObject *Sender)
  769. {
  770. c[1][8].add(Edit74->Text.ToInt());
  771.  
  772. }
  773. //---------------------------------------------------------------------------
  774.  
  775. void __fastcall TForm1::Edit75Change(TObject *Sender)
  776. {
  777. c[2][8].add(Edit75->Text.ToInt());
  778.  
  779. }
  780. //---------------------------------------------------------------------------
  781.  
  782. void __fastcall TForm1::Edit76Change(TObject *Sender)
  783. {
  784. c[3][8].add(Edit76->Text.ToInt());
  785.  
  786. }
  787. //---------------------------------------------------------------------------
  788.  
  789. void __fastcall TForm1::Edit77Change(TObject *Sender)
  790. {
  791. c[4][8].add(Edit77->Text.ToInt());
  792.  
  793. }
  794. //---------------------------------------------------------------------------
  795.  
  796. void __fastcall TForm1::Edit78Change(TObject *Sender)
  797. {
  798. c[5][8].add(Edit78->Text.ToInt());
  799.  
  800. }
  801. //---------------------------------------------------------------------------
  802.  
  803. void __fastcall TForm1::Edit79Change(TObject *Sender)
  804. {
  805. c[6][8].add(Edit79->Text.ToInt());
  806.  
  807. }
  808. //---------------------------------------------------------------------------
  809.  
  810. void __fastcall TForm1::Edit80Change(TObject *Sender)
  811. {
  812. c[7][8].add(Edit80->Text.ToInt());
  813.  
  814. }
  815. //---------------------------------------------------------------------------
  816.  
  817. void __fastcall TForm1::Edit81Change(TObject *Sender)
  818. {
  819. c[8][8].add(Edit81->Text.ToInt());
  820.  
  821. }
  822. //---------------------------------------------------------------------------
  823.  
  824. //przycisk "Nowa Gra"
  825. //---------------------------------------------------------------------------
  826.  
  827. void __fastcall TForm1::Button2Click(TObject *Sender)
  828. {
  829. generuj(); //wygenerowanie rozwiazanej planszy sudoku
  830. //Sleep(500); //przerwa 0,5 sekundy
  831. Edit1->Visible=true; //przywrocenie widocznosci editow
  832. Edit2->Visible=true;
  833. Edit3->Visible=true;
  834. Edit4->Visible=true;
  835. Edit5->Visible=true;
  836. Edit6->Visible=true;
  837. Edit7->Visible=true;
  838. Edit8->Visible=true;
  839. Edit9->Visible=true;
  840. Edit10->Visible=true;
  841. Edit11->Visible=true;
  842. Edit12->Visible=true;
  843. Edit13->Visible=true;
  844. Edit14->Visible=true;
  845. Edit15->Visible=true;
  846. Edit16->Visible=true;
  847. Edit17->Visible=true;
  848. Edit18->Visible=true;
  849. Edit19->Visible=true;
  850. Edit20->Visible=true;
  851. Edit21->Visible=true;
  852. Edit22->Visible=true;
  853. Edit23->Visible=true;
  854. Edit24->Visible=true;
  855. Edit25->Visible=true;
  856. Edit26->Visible=true;
  857. Edit27->Visible=true;
  858. Edit28->Visible=true;
  859. Edit29->Visible=true;
  860. Edit30->Visible=true;
  861. Edit31->Visible=true;
  862. Edit32->Visible=true;
  863. Edit33->Visible=true;
  864. Edit34->Visible=true;
  865. Edit35->Visible=true;
  866. Edit36->Visible=true;
  867. Edit37->Visible=true;
  868. Edit38->Visible=true;
  869. Edit39->Visible=true;
  870. Edit40->Visible=true;
  871. Edit41->Visible=true;
  872. Edit42->Visible=true;
  873. Edit43->Visible=true;
  874. Edit44->Visible=true;
  875. Edit45->Visible=true;
  876. Edit46->Visible=true;
  877. Edit47->Visible=true;
  878. Edit48->Visible=true;
  879. Edit49->Visible=true;
  880. Edit50->Visible=true;
  881. Edit51->Visible=true;
  882. Edit52->Visible=true;
  883. Edit53->Visible=true;
  884. Edit54->Visible=true;
  885. Edit55->Visible=true;
  886. Edit56->Visible=true;
  887. Edit57->Visible=true;
  888. Edit58->Visible=true;
  889. Edit59->Visible=true;
  890. Edit60->Visible=true;
  891. Edit61->Visible=true;
  892. Edit62->Visible=true;
  893. Edit63->Visible=true;
  894. Edit64->Visible=true;
  895. Edit65->Visible=true;
  896. Edit66->Visible=true;
  897. Edit67->Visible=true;
  898. Edit68->Visible=true;
  899. Edit69->Visible=true;
  900. Edit70->Visible=true;
  901. Edit71->Visible=true;
  902. Edit72->Visible=true;
  903. Edit73->Visible=true;
  904. Edit74->Visible=true;
  905. Edit75->Visible=true;
  906. Edit76->Visible=true;
  907. Edit77->Visible=true;
  908. Edit78->Visible=true;
  909. Edit79->Visible=true;
  910. Edit80->Visible=true;
  911. Edit81->Visible=true;
  912. Label2->Caption=a[0][0].get_value(); //wyswietlenie planszy w labelach
  913. Label1->Caption=a[1][0].get_value();
  914. Label3->Caption=a[2][0].get_value();
  915. Label4->Caption=a[3][0].get_value();
  916. Label5->Caption=a[4][0].get_value();
  917. Label6->Caption=a[5][0].get_value();
  918. Label7->Caption=a[6][0].get_value();
  919. Label8->Caption=a[7][0].get_value();
  920. Label9->Caption=a[8][0].get_value();
  921. Label10->Caption=a[0][1].get_value();
  922. Label11->Caption=a[1][1].get_value();
  923. Label12->Caption=a[2][1].get_value();
  924. Label13->Caption=a[3][1].get_value();
  925. Label14->Caption=a[4][1].get_value();
  926. Label15->Caption=a[5][1].get_value();
  927. Label16->Caption=a[6][1].get_value();
  928. Label17->Caption=a[7][1].get_value();
  929. Label18->Caption=a[8][1].get_value();
  930. Label19->Caption=a[0][2].get_value();
  931. Label20->Caption=a[1][2].get_value();
  932. Label21->Caption=a[2][2].get_value();
  933. Label22->Caption=a[3][2].get_value();
  934. Label23->Caption=a[4][2].get_value();
  935. Label24->Caption=a[5][2].get_value();
  936. Label25->Caption=a[6][2].get_value();
  937. Label26->Caption=a[7][2].get_value();
  938. Label27->Caption=a[8][2].get_value();
  939. Label28->Caption=a[0][3].get_value();
  940. Label29->Caption=a[1][3].get_value();
  941. Label30->Caption=a[2][3].get_value();
  942. Label31->Caption=a[3][3].get_value();
  943. Label32->Caption=a[4][3].get_value();
  944. Label33->Caption=a[5][3].get_value();
  945. Label34->Caption=a[6][3].get_value();
  946. Label35->Caption=a[7][3].get_value();
  947. Label36->Caption=a[8][3].get_value();
  948. Label37->Caption=a[0][4].get_value();
  949. Label38->Caption=a[1][4].get_value();
  950. Label39->Caption=a[2][4].get_value();
  951. Label40->Caption=a[3][4].get_value();
  952. Label41->Caption=a[4][4].get_value();
  953. Label42->Caption=a[5][4].get_value();
  954. Label43->Caption=a[6][4].get_value();
  955. Label44->Caption=a[7][4].get_value();
  956. Label45->Caption=a[8][4].get_value();
  957. Label46->Caption=a[0][5].get_value();
  958. Label47->Caption=a[1][5].get_value();
  959. Label48->Caption=a[2][5].get_value();
  960. Label49->Caption=a[3][5].get_value();
  961. Label50->Caption=a[4][5].get_value();
  962. Label51->Caption=a[5][5].get_value();
  963. Label52->Caption=a[6][5].get_value();
  964. Label53->Caption=a[7][5].get_value();
  965. Label54->Caption=a[8][5].get_value();
  966. Label55->Caption=a[0][6].get_value();
  967. Label56->Caption=a[1][6].get_value();
  968. Label57->Caption=a[2][6].get_value();
  969. Label58->Caption=a[3][6].get_value();
  970. Label59->Caption=a[4][6].get_value();
  971. Label60->Caption=a[5][6].get_value();
  972. Label61->Caption=a[6][6].get_value();
  973. Label62->Caption=a[7][6].get_value();
  974. Label63->Caption=a[8][6].get_value();
  975. Label64->Caption=a[0][7].get_value();
  976. Label65->Caption=a[1][7].get_value();
  977. Label66->Caption=a[2][7].get_value();
  978. Label67->Caption=a[3][7].get_value();
  979. Label68->Caption=a[4][7].get_value();
  980. Label69->Caption=a[5][7].get_value();
  981. Label70->Caption=a[6][7].get_value();
  982. Label71->Caption=a[7][7].get_value();
  983. Label72->Caption=a[8][7].get_value();
  984. Label73->Caption=a[0][8].get_value();
  985. Label74->Caption=a[1][8].get_value();
  986. Label75->Caption=a[2][8].get_value();
  987. Label76->Caption=a[3][8].get_value();
  988. Label77->Caption=a[4][8].get_value();
  989. Label78->Caption=a[5][8].get_value();
  990. Label79->Caption=a[6][8].get_value();
  991. Label80->Caption=a[7][8].get_value();
  992. Label81->Caption=a[8][8].get_value();
  993. int squares=0;
  994. while(squares<45)
  995. {
  996. int x_axis=0;
  997. int y_axis=0;
  998. srand(time(NULL));
  999.  
  1000. x_axis=rand()%8+0;
  1001.  
  1002. y_axis=rand()%8+0;
  1003.  
  1004. if(x_axis==0 & y_axis==0)
  1005. {
  1006. Edit1->Visible=false;
  1007. }
  1008.  
  1009. if(x_axis==1 & y_axis==0)
  1010. {
  1011. Edit2->Visible=false;
  1012. }
  1013.  
  1014.  
  1015.  
  1016. if(x_axis==2 & y_axis==0)
  1017. {
  1018. Edit3->Visible=false;
  1019. }
  1020.  
  1021.  
  1022.  
  1023. if(x_axis==3 & y_axis==0)
  1024. {
  1025. Edit4->Visible=false;
  1026. }
  1027.  
  1028.  
  1029.  
  1030. if(x_axis==4 & y_axis==0)
  1031. {
  1032. Edit5->Visible=false;
  1033. }
  1034.  
  1035.  
  1036.  
  1037. if(x_axis==5 & y_axis==0)
  1038. {
  1039. Edit6->Visible=false;
  1040. }
  1041.  
  1042.  
  1043.  
  1044. if(x_axis==6 & y_axis==0)
  1045. {
  1046. Edit7->Visible=false;
  1047. }
  1048.  
  1049.  
  1050.  
  1051. if(x_axis==7 & y_axis==0)
  1052. {
  1053. Edit8->Visible=false;
  1054. }
  1055.  
  1056.  
  1057.  
  1058. if(x_axis==8 & y_axis==0)
  1059. {
  1060. Edit9->Visible=false;
  1061. }
  1062.  
  1063.  
  1064.  
  1065. if(x_axis==0 & y_axis==1)
  1066. {
  1067. Edit10->Visible=false;
  1068. }
  1069.  
  1070.  
  1071.  
  1072. if(x_axis==1 & y_axis==1)
  1073. {
  1074. Edit11->Visible=false;
  1075. }
  1076.  
  1077.  
  1078.  
  1079. if(x_axis==2 & y_axis==1)
  1080. {
  1081. Edit12->Visible=false;
  1082. }
  1083.  
  1084.  
  1085.  
  1086. if(x_axis==3 & y_axis==1)
  1087. {
  1088. Edit13->Visible=false;
  1089. }
  1090.  
  1091.  
  1092.  
  1093. if(x_axis==4 & y_axis==1)
  1094. {
  1095. Edit14->Visible=false;
  1096. }
  1097.  
  1098.  
  1099.  
  1100. if(x_axis==5 & y_axis==1)
  1101. {
  1102. Edit15->Visible=false;
  1103. }
  1104.  
  1105.  
  1106.  
  1107. if(x_axis==6 & y_axis==1)
  1108. {
  1109. Edit16->Visible=false;
  1110. }
  1111.  
  1112.  
  1113.  
  1114. if(x_axis==7 & y_axis==1)
  1115. {
  1116. Edit17->Visible=false;
  1117. }
  1118.  
  1119.  
  1120.  
  1121. if(x_axis==8 & y_axis==1)
  1122. {
  1123. Edit18->Visible=false;
  1124. }
  1125.  
  1126.  
  1127.  
  1128. if(x_axis==0 & y_axis==2)
  1129. {
  1130. Edit19->Visible=false;
  1131. }
  1132.  
  1133.  
  1134.  
  1135. if(x_axis==1 & y_axis==2)
  1136. {
  1137. Edit20->Visible=false;
  1138. }
  1139.  
  1140.  
  1141.  
  1142. if(x_axis==2 & y_axis==2)
  1143. {
  1144. Edit21->Visible=false;
  1145. }
  1146.  
  1147.  
  1148.  
  1149. if(x_axis==3 & y_axis==2)
  1150. {
  1151. Edit22->Visible=false;
  1152. }
  1153.  
  1154.  
  1155.  
  1156. if(x_axis==4 & y_axis==2)
  1157. {
  1158. Edit23->Visible=false;
  1159. }
  1160.  
  1161.  
  1162.  
  1163. if(x_axis==5 & y_axis==2)
  1164. {
  1165. Edit24->Visible=false;
  1166. }
  1167.  
  1168.  
  1169.  
  1170. if(x_axis==6 & y_axis==2)
  1171. {
  1172. Edit25->Visible=false;
  1173. }
  1174.  
  1175.  
  1176.  
  1177. if(x_axis==7 & y_axis==2)
  1178. {
  1179. Edit26->Visible=false;
  1180. }
  1181.  
  1182.  
  1183.  
  1184. if(x_axis==8 & y_axis==2)
  1185. {
  1186. Edit27->Visible=false;
  1187. }
  1188.  
  1189.  
  1190.  
  1191. if(x_axis==0 & y_axis==3)
  1192. {
  1193. Edit28->Visible=false;
  1194. }
  1195.  
  1196.  
  1197.  
  1198. if(x_axis==1 & y_axis==3)
  1199. {
  1200. Edit29->Visible=false;
  1201. }
  1202.  
  1203.  
  1204.  
  1205. if(x_axis==2 & y_axis==3)
  1206. {
  1207. Edit30->Visible=false;
  1208. }
  1209.  
  1210.  
  1211.  
  1212. if(x_axis==3 & y_axis==3)
  1213. {
  1214. Edit31->Visible=false;
  1215. }
  1216.  
  1217.  
  1218.  
  1219. if(x_axis==4 & y_axis==3)
  1220. {
  1221. Edit32->Visible=false;
  1222. }
  1223.  
  1224.  
  1225.  
  1226. if(x_axis==5 & y_axis==3)
  1227. {
  1228. Edit33->Visible=false;
  1229. }
  1230.  
  1231.  
  1232.  
  1233. if(x_axis==6 & y_axis==3)
  1234. {
  1235. Edit34->Visible=false;
  1236. }
  1237.  
  1238.  
  1239.  
  1240. if(x_axis==7 & y_axis==3)
  1241. {
  1242. Edit35->Visible=false;
  1243. }
  1244.  
  1245.  
  1246.  
  1247. if(x_axis==8 & y_axis==3)
  1248. {
  1249. Edit36->Visible=false;
  1250. }
  1251.  
  1252.  
  1253.  
  1254. if(x_axis==0 & y_axis==4)
  1255. {
  1256. Edit37->Visible=false;
  1257. }
  1258.  
  1259.  
  1260.  
  1261. if(x_axis==1 & y_axis==4)
  1262. {
  1263. Edit38->Visible=false;
  1264. }
  1265.  
  1266.  
  1267.  
  1268. if(x_axis==2 & y_axis==4)
  1269. {
  1270. Edit39->Visible=false;
  1271. }
  1272.  
  1273.  
  1274.  
  1275. if(x_axis==3 & y_axis==4)
  1276. {
  1277. Edit40->Visible=false;
  1278. }
  1279.  
  1280.  
  1281.  
  1282. if(x_axis==4 & y_axis==4)
  1283. {
  1284. Edit41->Visible=false;
  1285. }
  1286.  
  1287.  
  1288.  
  1289. if(x_axis==5 & y_axis==4)
  1290. {
  1291. Edit42->Visible=false;
  1292. }
  1293.  
  1294.  
  1295.  
  1296. if(x_axis==6 & y_axis==4)
  1297. {
  1298. Edit43->Visible=false;
  1299. }
  1300.  
  1301.  
  1302.  
  1303. if(x_axis==7 & y_axis==4)
  1304. {
  1305. Edit44->Visible=false;
  1306. }
  1307.  
  1308.  
  1309.  
  1310. if(x_axis==8 & y_axis==4)
  1311. {
  1312. Edit45->Visible=false;
  1313. }
  1314.  
  1315.  
  1316.  
  1317. if(x_axis==0 & y_axis==5)
  1318. {
  1319. Edit46->Visible=false;
  1320. }
  1321.  
  1322.  
  1323.  
  1324. if(x_axis==1 & y_axis==5)
  1325. {
  1326. Edit47->Visible=false;
  1327. }
  1328.  
  1329.  
  1330.  
  1331. if(x_axis==2 & y_axis==5)
  1332. {
  1333. Edit48->Visible=false;
  1334. }
  1335.  
  1336.  
  1337.  
  1338. if(x_axis==3 & y_axis==5)
  1339. {
  1340. Edit49->Visible=false;
  1341. }
  1342.  
  1343.  
  1344.  
  1345. if(x_axis==4 & y_axis==5)
  1346. {
  1347. Edit50->Visible=false;
  1348. }
  1349.  
  1350.  
  1351.  
  1352. if(x_axis==5 & y_axis==5)
  1353. {
  1354. Edit51->Visible=false;
  1355. }
  1356.  
  1357.  
  1358.  
  1359. if(x_axis==6 & y_axis==5)
  1360. {
  1361. Edit52->Visible=false;
  1362. }
  1363.  
  1364.  
  1365.  
  1366. if(x_axis==7 & y_axis==5)
  1367. {
  1368. Edit53->Visible=false;
  1369. }
  1370.  
  1371.  
  1372.  
  1373. if(x_axis==8 & y_axis==5)
  1374. {
  1375. Edit54->Visible=false;
  1376. }
  1377.  
  1378.  
  1379.  
  1380. if(x_axis==0 & y_axis==6)
  1381. {
  1382. Edit55->Visible=false;
  1383. }
  1384.  
  1385.  
  1386.  
  1387. if(x_axis==1 & y_axis==6)
  1388. {
  1389. Edit56->Visible=false;
  1390. }
  1391.  
  1392.  
  1393.  
  1394. if(x_axis==2 & y_axis==6)
  1395. {
  1396. Edit57->Visible=false;
  1397. }
  1398.  
  1399.  
  1400.  
  1401. if(x_axis==3 & y_axis==6)
  1402. {
  1403. Edit58->Visible=false;
  1404. }
  1405.  
  1406.  
  1407.  
  1408. if(x_axis==4 & y_axis==6)
  1409. {
  1410. Edit59->Visible=false;
  1411. }
  1412.  
  1413.  
  1414.  
  1415. if(x_axis==5 & y_axis==6)
  1416. {
  1417. Edit60->Visible=false;
  1418. }
  1419.  
  1420.  
  1421.  
  1422. if(x_axis==6 & y_axis==6)
  1423. {
  1424. Edit61->Visible=false;
  1425. }
  1426.  
  1427.  
  1428.  
  1429. if(x_axis==7 & y_axis==6)
  1430. {
  1431. Edit62->Visible=false;
  1432. }
  1433.  
  1434.  
  1435.  
  1436. if(x_axis==8 & y_axis==6)
  1437. {
  1438. Edit63->Visible=false;
  1439. }
  1440.  
  1441.  
  1442.  
  1443. if(x_axis==0 & y_axis==7)
  1444. {
  1445. Edit64->Visible=false;
  1446. }
  1447.  
  1448.  
  1449.  
  1450. if(x_axis==1 & y_axis==7)
  1451. {
  1452. Edit65->Visible=false;
  1453. }
  1454.  
  1455.  
  1456.  
  1457. if(x_axis==2 & y_axis==7)
  1458. {
  1459. Edit66->Visible=false;
  1460. }
  1461.  
  1462.  
  1463.  
  1464. if(x_axis==3 & y_axis==7)
  1465. {
  1466. Edit67->Visible=false;
  1467. }
  1468.  
  1469.  
  1470.  
  1471. if(x_axis==4 & y_axis==7)
  1472. {
  1473. Edit68->Visible=false;
  1474. }
  1475.  
  1476.  
  1477.  
  1478. if(x_axis==5 & y_axis==7)
  1479. {
  1480. Edit69->Visible=false;
  1481. }
  1482.  
  1483.  
  1484.  
  1485. if(x_axis==6 & y_axis==7)
  1486. {
  1487. Edit70->Visible=false;
  1488. }
  1489.  
  1490.  
  1491.  
  1492. if(x_axis==7 & y_axis==7)
  1493. {
  1494. Edit71->Visible=false;
  1495. }
  1496.  
  1497.  
  1498.  
  1499. if(x_axis==8 & y_axis==7)
  1500. {
  1501. Edit72->Visible=false;
  1502. }
  1503.  
  1504.  
  1505.  
  1506. if(x_axis==0 & y_axis==8)
  1507. {
  1508. Edit73->Visible=false;
  1509. }
  1510.  
  1511.  
  1512.  
  1513. if(x_axis==1 & y_axis==8)
  1514. {
  1515. Edit74->Visible=false;
  1516. }
  1517.  
  1518.  
  1519.  
  1520. if(x_axis==2 & y_axis==8)
  1521. {
  1522. Edit75->Visible=false;
  1523. }
  1524.  
  1525.  
  1526.  
  1527. if(x_axis==3 & y_axis==8)
  1528. {
  1529. Edit76->Visible=false;
  1530. }
  1531.  
  1532.  
  1533.  
  1534. if(x_axis==4 & y_axis==8)
  1535. {
  1536. Edit77->Visible=false;
  1537. }
  1538.  
  1539.  
  1540.  
  1541. if(x_axis==5 & y_axis==8)
  1542. {
  1543. Edit78->Visible=false;
  1544. }
  1545.  
  1546.  
  1547.  
  1548. if(x_axis==6 & y_axis==8)
  1549. {
  1550. Edit79->Visible=false;
  1551. }
  1552.  
  1553.  
  1554.  
  1555. if(x_axis==7 & y_axis==8)
  1556. {
  1557. Edit80->Visible=false;
  1558. }
  1559.  
  1560.  
  1561.  
  1562. if(x_axis==8 & y_axis==8)
  1563. {
  1564. Edit81->Visible=false;
  1565. }
  1566. squares++;
  1567. }
  1568.  
  1569.  
  1570. win="true"; //reset zmiennej "win"
  1571. LinkLabel1->Caption="SUDOKU"; //reset napisu
  1572. }
  1573. //---------------------------------------------------------------------------
  1574.  
  1575.  
  1576.  
  1577. //---------------------------------------------------------------------------
  1578. void __fastcall TForm1::RozwiązanieClick(TObject *Sender) //przycisk "Rozwiazanie"
  1579. {
  1580. Edit1->Visible=false;
  1581. Edit2->Visible=false;
  1582. Edit3->Visible=false;
  1583. Edit4->Visible=false;
  1584. Edit5->Visible=false;
  1585. Edit6->Visible=false;
  1586. Edit7->Visible=false;
  1587. Edit8->Visible=false;
  1588. Edit9->Visible=false;
  1589. Edit10->Visible=false;
  1590. Edit11->Visible=false;
  1591. Edit12->Visible=false;
  1592. Edit13->Visible=false;
  1593. Edit14->Visible=false;
  1594. Edit15->Visible=false;
  1595. Edit16->Visible=false;
  1596. Edit17->Visible=false;
  1597. Edit18->Visible=false;
  1598. Edit19->Visible=false;
  1599. Edit20->Visible=false;
  1600. Edit21->Visible=false;
  1601. Edit22->Visible=false;
  1602. Edit23->Visible=false;
  1603. Edit24->Visible=false;
  1604. Edit25->Visible=false;
  1605. Edit26->Visible=false;
  1606. Edit27->Visible=false;
  1607. Edit28->Visible=false;
  1608. Edit29->Visible=false;
  1609. Edit30->Visible=false;
  1610. Edit31->Visible=false;
  1611. Edit32->Visible=false;
  1612. Edit33->Visible=false;
  1613. Edit34->Visible=false;
  1614. Edit35->Visible=false;
  1615. Edit36->Visible=false;
  1616. Edit37->Visible=false;
  1617. Edit38->Visible=false;
  1618. Edit39->Visible=false;
  1619. Edit40->Visible=false;
  1620. Edit41->Visible=false;
  1621. Edit42->Visible=false;
  1622. Edit43->Visible=false;
  1623. Edit44->Visible=false;
  1624. Edit45->Visible=false;
  1625. Edit46->Visible=false;
  1626. Edit47->Visible=false;
  1627. Edit48->Visible=false;
  1628. Edit49->Visible=false;
  1629. Edit50->Visible=false;
  1630. Edit51->Visible=false;
  1631. Edit52->Visible=false;
  1632. Edit53->Visible=false;
  1633. Edit54->Visible=false;
  1634. Edit55->Visible=false;
  1635. Edit56->Visible=false;
  1636. Edit57->Visible=false;
  1637. Edit58->Visible=false;
  1638. Edit59->Visible=false;
  1639. Edit60->Visible=false;
  1640. Edit61->Visible=false;
  1641. Edit62->Visible=false;
  1642. Edit63->Visible=false;
  1643. Edit64->Visible=false;
  1644. Edit65->Visible=false;
  1645. Edit66->Visible=false;
  1646. Edit67->Visible=false;
  1647. Edit68->Visible=false;
  1648. Edit69->Visible=false;
  1649. Edit70->Visible=false;
  1650. Edit71->Visible=false;
  1651. Edit72->Visible=false;
  1652. Edit73->Visible=false;
  1653. Edit74->Visible=false;
  1654. Edit75->Visible=false;
  1655. Edit76->Visible=false;
  1656. Edit77->Visible=false;
  1657. Edit78->Visible=false;
  1658. Edit79->Visible=false;
  1659. Edit80->Visible=false;
  1660. Edit81->Visible=false;
  1661. }
  1662. //---------------------------------------------------------------------------
  1663.  
  1664.  
  1665.  
  1666.  
  1667.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:3:17: fatal error: vcl.h: No such file or directory
 #include <vcl.h>
                 ^
compilation terminated.
stdout
Standard output is empty