Delphi 7带小数的两个数字的和

时间:2014-06-26 14:36:25

标签: delphi delphi-7

初学者:)

我正在尝试创建一个需要用户输入的Delphi应用程序,然后添加和减去这些变量。

我成功创建了应用程序,除了:

之外,一切正常

无法找到处理带小数的数字的正确方法。

示例:

A,B,C,D,E,F:string; A1,B1,C1,D1,E1,F1:整数:

我使用InputBox来获取用户输入。 我将输入存储在字符串变量中。 我将字符串变量转换为整数,A1:= strToint(A); 最后,我想:A1 + B1-C1-D1-E1-F1 如果输入是整数,则结束一切正常。 如果用户输入带小数的数字,则会出现问题。

我到处都搜索过,但找不到问题的答案。(或者我不明白)

任何人都可以指出我正确的方向吗?

谢谢。

2 个答案:

答案 0 :(得分:6)

您正在尝试将字符串转换为浮点值。

首先,您需要将Integer变量更改为Double类型。这将允许您存储非整数的值。

其次,您需要一个不同的功能来执行转换。您应该使用TryStrToFloat。这会尝试从字符串转换为浮点。如果转换成功,则函数返回True,否则返回False。例如:

var
  str: string;
  value: Double;
....
if not TryStrToFloat(str, value) then
begin
  // handle error in some appropriate way
end;
// do something with value

答案 1 :(得分:4)

顾名思义,StrToInt将数字字符串转换为等效的整数。还有用于处理浮点数的类似StrToFloat函数。

您的变量目前被定义为整数。如果要使用实数/十进制数,则需要使用Double类型。

我建议您查阅Delphi文档以获取更多相关信息。