即使在for循环中数量增加,备忘录仍会显示相同的货币值

时间:2016-05-22 15:21:56

标签: delphi delphi-2010

由于某种原因,此代码仅输出与TextEdit中输入的数字相同的代码。输出的格式应该是

  1. $ 3000
  2. $ 3300
  3. 等等。

    procedure TfrmProjection.BtnCalculateClick(Sender: TObject);
    var
      counter, i : integer;
      total, sales, average, projsales : double;
    begin
      sales := StrtoFloat(edtSales.Text);
      redOutput.Lines.Add('INCREASE IN SALES');
      for i := 1 to 12 do
        redOutput.Lines.Add(FloattoStr(i) + #9 + #9 + FloattoStrf(sales, ffCurrency, 9, 2));
      sales:= sales * 1.1;
    end;
    

    有谁知道如何能够纠正这个问题?

1 个答案:

答案 0 :(得分:0)

你遗漏了一个开始结束的块,so sales * 1.1从未被调用到最后。

procedure TForm1.Button1Click(Sender: TObject);
var
  counter, i: integer;
  sales, average, projsales : double;
begin
  sales := StrtoFloat(edtSales.Text);
  redOutput.Lines.Add('INCREASE IN SALES');
  for i := 1 to 12 do
  begin
    redOutput.Lines.Add(FloattoStr(i) + #9 + #9 + FloattoStrf(sales, ffCurrency, 9, 2));
    sales:= sales * 1.1;
  end; 
end;