主题:请教关于用edit进行计算
小小20032003
[专家分:0] 发布于 2006-04-03 16:49:00
我是一个初学者,现场需要用到一个计算器,已知字母a,b,c,d分别是常数2,3,4,5,当输入一个四位的编码(为四个字母或数字组成)后,计算出如下的结果:(2×第一位编码)+(3×第二位编码)+(4×第三位编码)+(5×第四位编码)。我设计了五个edit控件,和一个按纽,请高手指点,写一下代码。
回复列表 (共5个回复)
沙发
sunriver [专家分:1330] 发布于 2006-04-04 12:59:00
输入的是数字还是字母,五个edit控件分别的作用是什么?
板凳
小小20032003 [专家分:0] 发布于 2006-04-04 15:14:00
有时输入数字,有时输入字母。前四个控件是用来输入编码的,最后一个用来得到结果的。
3 楼
小小20032003 [专家分:0] 发布于 2006-04-05 08:24:00
对不起各位,我的问题没有说清,我所指四位编码只能包括a,b,c,d,及0至9中的任意四位,请大家帮忙!
4 楼
sunriver [专家分:1330] 发布于 2006-04-05 12:03:00
var
Arrkey : array[0..3] of String;
iCount : Integer;
begin
Arrkey[0]:= Edit1.text;
Arrkey[1]:= Edit2.text;
Arrkey[2]:= Edit3.text;
Arrkey[3]:= Edit4.text;
for iCount :=0 to 3 do
begin
if Arrkey[iCount]='a' then Arrkey[iCount]='2';
if Arrkey[iCount]='b' then Arrkey[iCount]='3';
if Arrkey[iCount]='c' then Arrkey[iCount]='4';
if Arrkey[iCount]='d' then Arrkey[iCount]='5';
end;
Edit5.text:= IntToStr(StrToInt(Arrkey[0])+StrToInt(Arrkey[1])
+StrToInt(Arrkey[2])+StrToInt(Arrkey[3]));
end;
5 楼
wqwy111 [专家分:0] 发布于 2006-04-13 21:07:00
最后一步是否错了?
Edit5.text:= IntToStr(StrToInt(Arrkey[0])+StrToInt(Arrkey[1])
+StrToInt(Arrkey[2])+StrToInt(Arrkey[3]));
应改为:
Edit5.text:= IntToStr(2*StrToInt(Arrkey[0])+3*StrToInt(Arrkey[1])
+4*StrToInt(Arrkey[2])+5*StrToInt(Arrkey[3]));
我来回复