Показать сообщение отдельно
  #9  
Старый 13.12.2010, 12:05
Andrew1266 Andrew1266 вне форума
Прохожий
 
Регистрация: 09.12.2010
Сообщения: 15
Репутация: 10
По умолчанию

Посмотрите, вот код:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,ExtCtrls, ComCtrls, StdCtrls, Mask, Buttons;

type
  TForm1 = class(TForm)
    MaskEdit1: TMaskEdit;
    MaskEdit2: TMaskEdit;
    Button1: TButton;
    RadioGroup1: TRadioGroup;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    Label1: TLabel;
    Button2: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function SrArifm: double;
begin
result:= (StrToInt(Form1.MaskEdit1.Text)+StrToInt(Form1.MaskEdit2.Text)  )/2
end;

function SrGeom: double;
begin
result:=sqrt(StrToInt(Form1.MaskEdit1.Text)*StrToInt(Form1.MaskEdit2.Text))
end;

procedure count;
begin
if Form1.RadioGroup1.ItemIndex=0
then Form1.Memo1.Lines.Append(FloatToStr(SrArifm))
else Form1.Memo1.Lines.Append(FloatToStr(SrGeom))
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
count;
   MaskEdit1.Clear;
   MaskEdit2.Clear;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Close;
end;

end.

И при выводе ответа на поле Memo, среднее арифметическое получается дробное число с 12-ю знаками после запятой. Как это исправить???
Ответить с цитированием