delphi里如何编写计算公式 关于delphi数据计算
delphi里如何编写计算公式
edit1.text := inttostr(strtoint(label1.caption)*strtoint(label2.caption))
edit3.text := inttostr(strtoint(edit1.text)-strtoint(edit2.text))
关于delphi数据计算
Delphi中的浮点类型有以下几种(我测试的是Delphi XE3版):
Real48、Single、Double、Real、Extended、Comp、Currency。
你定义的Float类型,可能是自己对以上的浮点类型加了一层外套。
Pascal对类型的检查比较严格,你仔细查一下帮助文档,选择适合自己的数据类型。
建议你把sum改为Double或者Extended类型,试一下。
怎样在DELPHI中编写计算公式的程序?
funtion getA(e: extended) : extend
var
a : extended
sum : extended
begin
A := 1
sum := 1
e :=?? //先赋值
for a:=1 to a do //这里的a为实际数值,即多少次方
begin
A := sum
A := A * e
sum := A
end
result := sum
end
procedure GetY()
var
e : extended
i : extended
X : extended
Y : extended
tmp : extended
sum : extended
begin
Y := 1
tmp := 1
X := ?? //赋个实际值给X;
A := getA(e)
for i :=1 to B do //同样B也是实际数值
begin
tmp := sum
tmp := tmp * X
sum := tmp
end
Y := A * tmp
showmessage(floattostr(Y))
end
delphi 如何计算出用字符串表示的数学表达式的值?
你的这个例子中人家用定义常量方法,将运算符赋给了字符:
Const
Symbol_Mod=M Symbol_Div=D
Symbol_Shl=L Symbol_Shr=R
Symbol_Or=O Symbol_Xor=X
Symbol_And=A
library Expression这是动态链接库,也就是dll!
Exports
ConvertExpression, ParseExpression, ParseExpressionToStr, Version 是dll的出口函数!
看样子你对delphi的动态链接库技术不太清楚!建议多看看书上这方面的内容!
delphi代码实现计算
编译调试通过:edit1代表a,edit2代表b,edit3代表c,edit4代表x
procedure TForm1.Button1Click(Sender: TObject)
var
a,b,x:double
begin
a:=strtofloat(edit1.text)
b:=strtofloat(edit2.text)
if (edit3.text=)or(FormatFloat(0.000,StrToFloat(edit3.Text))=0.000 )
then
showmessage(c不能为0或空,请重新输入)
else
begin
x:=(a b)/power(strtofloat(edit3.text),2)
edit4.Text:=formatfloat(0.000,x)
end
end
end.
delphi像excel表格添加公式
可以考虑用INDEX函数,比如说如下公式:
=SUM(B6:B9)
可以转换为下面这个公式,其结果是完全一样的:
=SUM(INDEX(B:B,6):INDEX(B:B,9))
在下面的这个公式里只需要把你得出的行数iRow替换进去就可以了,比如你要让B列第6行到第iRow行相加则写Delphi代码如下:
:=Sum(INDEX(B:B,6):INDEX(B:B, iRow ))
此外,如果你连B列也不确定,想用第2列(或者第iCol列)来指定的话,公式还可以写成:
=SUM(INDEX(A:ZZ,6,2):INDEX(A:ZZ,9,2))
其中INDEX(A:ZZ,6,2)指的就是第6行第2列(即B6)
注:我只在EXCEL里测试了公式的可用性,没在DELPHI里试,希望有用。