home *** CD-ROM | disk | FTP | other *** search
/ Chip 1999 August / Chip_1999-08_cd.bin / tema / Ozogan / RUNTIME / APLIKACE.EXE / VYPOCTY2.KL3 < prev    next >
Text File  |  1999-06-19  |  9KB  |  253 lines

  1. Program vypocty2;
  2.  
  3. {********************************************}
  4. { Program pro v²poΦet povrch∙ a objem∙ t∞les }
  5. { Auto°i: Petr a Pavel Ozogßnovi, 19.6.1999  }
  6. {********************************************}
  7.  
  8. procedure TForm.RadioButton1Click(Sender: TObject);
  9. begin
  10.    ButtonVypocet.Click;
  11.    LabelX.Caption := 'X = A * B * C';
  12.    Edit1.Visible := True;  Label1.Visible := True;
  13.    Edit2.Visible := True;  Label2.Visible := True;
  14.    Edit3.Visible := True;  Label3.Visible := True;
  15.    Edit4.Visible := False; Label4.Visible := False;
  16.    Edit5.Visible := False; Label5.Visible := False;
  17.    Image.Clear;
  18.    Image.PenWidth(2);
  19. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  20.    Image.Rectangle(80, 20, 180, 140);
  21.    Image.BrushColor(clLime);
  22.    Image.Rectangle(20, 60, 120, 180);
  23.    Image.BrushColor(clWhite);
  24.    Image.Line( 20,  60,  80,  20);
  25.    Image.Line(120,  60, 180,  20);
  26.    Image.Line(120, 180, 180, 140);
  27. end;
  28.  
  29. procedure TForm.RadioButton2Click(Sender: TObject);
  30. begin
  31.    ButtonVypocet.Click;
  32.    LabelX.Caption := 'X = 2*(A*B+B*C+A*C)';
  33.    Edit1.Visible := True;  Label1.Visible := True;
  34.    Edit2.Visible := True;  Label2.Visible := True;
  35.    Edit3.Visible := True;  Label3.Visible := True;
  36.    Edit4.Visible := False; Label4.Visible := False;
  37.    Edit5.Visible := False; Label5.Visible := False;
  38.    Image.Clear;
  39.    Image.PenWidth(2);
  40. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  41.    Image.Rectangle(80, 20, 180, 140);
  42.    Image.BrushColor(clLime);
  43.    Image.Rectangle(20, 60, 120, 180);
  44.    Image.BrushColor(clWhite);
  45.    Image.Line( 20,  60,  80,  20);
  46.    Image.Line(120,  60, 180,  20);
  47.    Image.Line(120, 180, 180, 140);
  48. end;
  49.  
  50. procedure TForm.RadioButton3Click(Sender: TObject);
  51. begin
  52.    ButtonVypocet.Click;
  53.    LabelX.Caption := 'X = 6 * A*A';
  54.    Edit1.Visible := True;  Label1.Visible := True;
  55.    Edit2.Visible := False; Label2.Visible := False;
  56.    Edit3.Visible := False; Label3.Visible := False;
  57.    Edit4.Visible := False; Label4.Visible := False;
  58.    Edit5.Visible := False; Label5.Visible := False;
  59.    Image.Clear;
  60.    Image.PenWidth(2);
  61. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  62.    Image.Rectangle(80, 30, 180, 120);
  63.    Image.BrushColor(clBlue);
  64.    Image.Rectangle(20, 70, 120, 160);
  65.    Image.BrushColor(clWhite);
  66.    Image.Line( 20,  70,  80,  30);
  67.    Image.Line(120,  70, 180,  30);
  68.    Image.Line(120, 160, 180, 120);
  69. end;
  70.  
  71. procedure TForm.RadioButton4Click(Sender: TObject);
  72. begin
  73.    ButtonVypocet.Click;
  74.    LabelX.Caption := 'X = PI * R*R * V';
  75.    Edit1.Visible := False; Label1.Visible := False;
  76.    Edit2.Visible := False; Label2.Visible := False;
  77.    Edit3.Visible := False; Label3.Visible := False;
  78.    Edit4.Visible := True;  Label4.Visible := True;
  79.    Edit5.Visible := True;  Label5.Visible := True;
  80.    Image.Clear;
  81.    Image.PenWidth(2);
  82. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  83.    Image.BrushColor(clRed);
  84.    Image.Ellipse( 20,  20, 180,  80);
  85.    Image.BrushColor(clWhite);
  86.    Image.Ellipse( 20, 120, 180, 180);
  87.    Image.Line   ( 20,  50,  20, 150);
  88.    Image.Line   (180,  50, 180, 150);
  89. end;
  90.  
  91. procedure TForm.RadioButton5Click(Sender: TObject);
  92. begin
  93.    ButtonVypocet.Click;
  94.    LabelX.Caption := 'X=2*PI*R*R + 2*PI*R*V';
  95.    Edit1.Visible := False; Label1.Visible := False;
  96.    Edit2.Visible := False; Label2.Visible := False;
  97.    Edit3.Visible := False; Label3.Visible := False;
  98.    Edit4.Visible := True;  Label4.Visible := True;
  99.    Edit5.Visible := True;  Label5.Visible := True;
  100. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  101.    Image.Clear;
  102.    Image.PenWidth(2);
  103.    Image.BrushColor(clRed);
  104.    Image.Ellipse( 20,  20, 180,  80);
  105.    Image.BrushColor(clWhite);
  106.    Image.Ellipse( 20, 120, 180, 180);
  107.    Image.Line   ( 20,  50,  20, 150);
  108.    Image.Line   (180,  50, 180, 150);
  109. end;
  110.  
  111. procedure TForm.RadioButton6Click(Sender: TObject);
  112. begin
  113.    ButtonVypocet.Click;
  114.    LabelX.Caption := 'X = 1/3 * A*A * V';
  115.    Edit1.Visible := True;  Label1.Visible := True;
  116.    Edit2.Visible := False; Label2.Visible := False;
  117.    Edit3.Visible := False; Label3.Visible := False;
  118.    Edit4.Visible := False; Label4.Visible := False;
  119.    Edit5.Visible := True;  Label5.Visible := True;
  120. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  121.    Image.Clear;
  122.    Image.PenWidth(2);
  123.    Image.Line   ( 20, 180, 120, 180);  {1}
  124.    Image.Line   ( 20, 180,  80, 140);  {2}
  125.    Image.Line   (120, 180, 180, 140);  {3}
  126.    Image.Line   ( 80, 140, 180, 140);  {4}
  127.    Image.Line   ( 20, 180, 100,  20);  {5}
  128.    Image.Line   ( 80, 140, 100,  20);  {6}
  129.    Image.Line   (120, 180, 100,  20);  {7}
  130.    Image.Line   (180, 140, 100,  20);  {8}
  131. end;
  132.  
  133. procedure TForm.RadioButton7Click(Sender: TObject);
  134. begin
  135.    ButtonVypocet.Click;
  136.    LabelX.Caption := 'X = A*A + 2*A * V';
  137.    Edit1.Visible := True;  Label1.Visible := True;
  138.    Edit2.Visible := False; Label2.Visible := False;
  139.    Edit3.Visible := False; Label3.Visible := False;
  140.    Edit4.Visible := False; Label4.Visible := False;
  141.    Edit5.Visible := True;  Label5.Visible := True;
  142. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  143.    Image.Clear;
  144.    Image.PenWidth(2);
  145.    Image.Line   ( 20, 180, 120, 180);  {1}
  146.    Image.Line   ( 20, 180,  80, 140);  {2}
  147.    Image.Line   (120, 180, 180, 140);  {3}
  148.    Image.Line   ( 80, 140, 180, 140);  {4}
  149.    Image.Line   ( 20, 180, 100,  20);  {5}
  150.    Image.Line   ( 80, 140, 100,  20);  {6}
  151.    Image.Line   (120, 180, 100,  20);  {7}
  152.    Image.Line   (180, 140, 100,  20);  {8}
  153. end;
  154.  
  155. procedure TForm.RadioButton8Click(Sender: TObject);
  156. begin
  157.    ButtonVypocet.Click;
  158.    LabelX.Caption := 'X = 4 * PI * R*R';
  159.    Edit1.Visible := False; Label1.Visible := False;
  160.    Edit2.Visible := False; Label2.Visible := False;
  161.    Edit3.Visible := False; Label3.Visible := False;
  162.    Edit4.Visible := True;  Label4.Visible := True;
  163.    Edit5.Visible := False; Label5.Visible := False;
  164. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  165.    Image.Clear;
  166.    Image.PenWidth(2);
  167.    Image.BrushColor(clYellow);
  168.    Image.Ellipse( 20, 20, 180, 180);
  169.    Image.BrushColor(clWhite);
  170. end;
  171.  
  172. procedure TForm.RadioButton9Click(Sender: TObject);
  173. begin
  174.    ButtonVypocet.Click;
  175.    LabelX.Caption := 'X = 4/3 * PI * R*R*R';
  176.    Edit1.Visible := False; Label1.Visible := False;
  177.    Edit2.Visible := False; Label2.Visible := False;
  178.    Edit3.Visible := False; Label3.Visible := False;
  179.    Edit4.Visible := True;  Label4.Visible := True;
  180.    Edit5.Visible := False; Label5.Visible := False;
  181. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  182.    Image.Clear;
  183.    Image.PenWidth(2);
  184.    Image.BrushColor(clYellow);
  185.    Image.Ellipse( 20, 20, 180, 180);
  186.    Image.BrushColor(clWhite);
  187. end;
  188.  
  189. procedure TForm.RadioButton10Click(Sender: TObject);
  190. begin
  191.    ButtonVypocet.Click;
  192.    LabelX.Caption := 'X = A*A*A';
  193.    Edit1.Visible := True;  Label1.Visible := True;
  194.    Edit2.Visible := False; Label2.Visible := False;
  195.    Edit3.Visible := False; Label3.Visible := False;
  196.    Edit4.Visible := False; Label4.Visible := False;
  197.    Edit5.Visible := False; Label5.Visible := False;
  198.    Image.Clear;
  199.    Image.PenWidth(2);
  200. //   Image.Rectangle(0,0,GetMaxX, GetMaxY);
  201.    Image.Rectangle(80, 30, 180, 120);
  202.    Image.BrushColor(clBlue);
  203.    Image.Rectangle(20, 70, 120, 160);
  204.    Image.BrushColor(clWhite);
  205.    Image.Line( 20,  70,  80,  30);
  206.    Image.Line(120,  70, 180,  30);
  207.    Image.Line(120, 160, 180, 120);
  208. end;
  209.  
  210. procedure TForm.ButtonVypocetClick(Sender: TObject);
  211. Var A, B, C, R, V, X : Integer;
  212. begin
  213.    A := StrToReal(Edit1.Text);
  214.    B := StrToReal(Edit2.Text);
  215.    C := StrToReal(Edit3.Text);
  216.    R := StrToReal(Edit4.Text);
  217.    V := StrToReal(Edit5.Text);
  218.    X := 0;
  219.  
  220.    if RadioButton1.Checked  then X := A*B*C;
  221.    if RadioButton2.Checked  then X := 2*(A*B + B*C + A*C);
  222.    if RadioButton3.Checked  then X := 6 * Sqr(A);
  223.    if RadioButton4.Checked  then X := PI * Sqr(R) * V;
  224.    if RadioButton5.Checked  then X := (2 * PI * Sqr(R))  + (2 * PI * R * V);
  225.    if RadioButton6.Checked  then X := 1/3 * Sqr(A) * V;
  226.    if RadioButton7.Checked  then X := Sqr(A) + 2 * A * V;
  227.    if RadioButton8.Checked  then X := 4 * PI * Sqr(R);
  228.    if RadioButton9.Checked  then X := 4/3 * PI * R*R*R;
  229.    if RadioButton10.Checked then X := A*A*A;
  230.    Label7.Caption := Trim(RealToStr(X, 15, 3));
  231. end;
  232.  
  233. procedure TForm.ButtonCloseClick(Sender: TObject);
  234. begin
  235.    Form.Close;
  236. end;
  237.  
  238. procedure TForm.FormCreate(Sender: TObject);
  239. begin
  240.    ButtonVypocet.Click;
  241.    Image.PenWidth(2);
  242.    Image.Rectangle(0,0,GetMaxX, GetMaxY);
  243.    Image.Rectangle(80, 20, 180, 140);
  244.    Image.BrushColor(clLime);
  245.    Image.Rectangle(20, 60, 120, 180);
  246.    Image.BrushColor(clWhite);
  247.    Image.Line( 20,  60,  80,  20);
  248.    Image.Line(120,  60, 180,  20);
  249.    Image.Line(120, 180, 180, 140);
  250. end;
  251.  
  252. end.
  253.