我是一个 delphi 的初学者。现在我有个作业。内容是:一个计算题。
y=k1*x1+k2*x2+k3*x3+k4*x4.  k1,k2,k3,k4,x1,x2,x3,x4, 都是未知数。我设计了8个输入框。值都是实型,框架都作好了,只要输入8个框的值,结果就出来了 。怎么作。。急救。。

解决方案 »

  1.   

    Edit9.text := IntToStr(StrToInt(Edit1.text)*StrToInt(Edit2.text)+StrToInt(Edit3.text)*StrToInt(Edit4.text)+StrToInt(Edit5.text)*StrToInt(Edit6.text)+StrToInt(Edit7.text)*StrToInt(Edit8.text));
      

  2.   

    要记住:输入到框内的都为char(sting)型
    计算的时候要转换类型:inttostr和strtoint
      

  3.   

    声明k1*x1+k2*x2+k3*x3+k4*x4这几个数为全局变量,并把几个输入框的text属性付给它
    例如:k1:=edt1.text;
    然后输入y=k1*x1+k2*x2+k3*x3+k4*x4.规则。
    把Y付给另外一个控件显示属性即可
      

  4.   

    Danphel(Aleon) 你好 。我也是象你一样。
    但是在给 k1 附值时,在k1=edt1.到这里,并没有text属性。
      

  5.   

    你说是要实数吧.//字符串转换成实数
    Function StrToSingle(const Value: String): Single;
    var
      St,Data: String;
      i: Integer;
    begin
      Data := Value;
      if Pos('.',Data) = 1 then//如果是以.开头
         Data := '0' + Data;
      if Pos('.',Data) <= 0 then//没有.
         Data := Data + '.0000';
      St := Copy(Data,0,Pos('.',Data) - 1);//截取整数部分
      i := StrToInt(St);
      Result := i;
      St := Copy (Data,Pos('.',Data) + 1,4);//取小数部分
      if Length(St) < 4 then//长度不足
         St := St + '0';
      i := StrToInt(St);
      Result := Result + (i/10000);
    end;Edit9.Text := Format('%F', 
         (StrToSingle(Edit1.Text) * StrToSingle(Edit2.Text) + 
          StrToSingle(Edit3.Text) * StrToSingle(Edit4.Text) +
          StrToSingle(Edit5.Text) * StrToSingle(Edit6.Text) + 
          StrToSingle(Edit7.text) * StrToSingle(Edit8.text));
    就可以了
      

  6.   

    if Length(St) < 4 then//长度不足 
    改成
    for i := 0 to 4 - Length(St) doEdit9.Text := Format('%F', 
         (StrToSingle(Edit1.Text) * StrToSingle(Edit2.Text) + 
          StrToSingle(Edit3.Text) * StrToSingle(Edit4.Text) +
          StrToSingle(Edit5.Text) * StrToSingle(Edit6.Text) + 
          StrToSingle(Edit7.text) * StrToSingle(Edit8.text));改成Edit9.Text := Format('%F', 
         [StrToSingle(Edit1.Text) * StrToSingle(Edit2.Text) + 
          StrToSingle(Edit3.Text) * StrToSingle(Edit4.Text) +
          StrToSingle(Edit5.Text) * StrToSingle(Edit6.Text) + 
          StrToSingle(Edit7.text) * StrToSingle(Edit8.text)]);
    另外, 要必须保证传入的字符串是整型或实型数据.
    最多只能有一个点
      

  7.   

    procedure TForm1.Button1OnClick(...)
    begin
    Edit9.text := FloatToStr(StrToFloat(Edit1.text)*StrToFloat(Edit2.text)+StrToFloat(Edit3.text)*StrToFloat(Edit4.text)+StrToFloat(Edit5.text)*StrToFloat(Edit6.text)+StrToFloat(Edit7.text)*StrToFloat(Edit8.text));
    end;