别见笑,刚刚学delphi编写计算器的小问题

biming520 2010-01-31 10:39:19
3个文本编辑框
实现 第一个和第三个框输入数字 中间输入+ - * / 运算符 点击按钮出现结果 用 加 减 陈 除 四个函数 实现
function jia(x,y:Double):Double ; 函数加
var
c:Double;
begin
c:=x+y ;
jia:=c;
end;
function jian(x,y:Double):Double ; 函数减
var
d:Double;

begin
d:=x-y;
jian:=d;
end;
function chen(x,y:Double):Double ;函数称
var
e:Double;

begin
e:=x*y ;
chen:=e;
end;
function chu(x,y:Integer):double; 函数除
var
e:Double;

begin
e:=x/y ;
chu:=e;
end;


procedure TForm1.Button1Click(Sender: TObject); 按钮的事件代码
var
x,z,d:Double;
y:char;




begin
x:=strtoint(Edit1.text); 得到第一个数字
y:=Edit2.text; 这里出错了 前面是char 类型 可是不知道怎么改 z:=strtoint(Edit3.text); 得到第二个数字

if y="+" then 如果 Y=“+”号
d:=jia(x,y); 调用 jia 函数
begin 因为前面有错误所以后面没写了

end
else
begin

end;
end;

end.
想请会的 朋友帮我 看看 这后面该怎么改下 谢谢了
...全文
336 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq369860303 2010-02-08
  • 打赏
  • 举报
回复
y:=strtoint(edit2.text);
forestry98 2010-02-04
  • 打赏
  • 举报
回复
好感概啊!我开始编程的时候第一个程序就是计算器,不过那时使用 VB。
dd_zhouqian 2010-02-03
  • 打赏
  • 举报
回复
我记得我的第一个程序也是计算器,那个时候真的好不容易才写好一个,不容易啊
xjq2003 2010-02-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yct0605 的回复:]
给你一个思路吧,把+、-、*、/ 放在combobox控件里面,根据combobox的itemindex值来判断用户选择的数据操作,这里可以用
var
float X;
case combobox.itemindex of
0:x:=strtoint(edit1.text)+strtoint(edit2.text)//加操作
1:x:=strtoint(edit1.text)-strtoint(edit2.text)//减操作
2:x:=strtoint(edit1.text)*strtoint(edit2.text//乘操作
3:x:=strtoint(edit1.text)/strtoint(edit2.text//除操作,除操作要判断被除数是否为零
end;
[/Quote]这个方便使用
yct0605 2010-02-03
  • 打赏
  • 举报
回复
给你一个思路吧,把+、-、*、/ 放在combobox控件里面,根据combobox的itemindex值来判断用户选择的数据操作,这里可以用
var
float X;
case combobox.itemindex of
0:x:=strtoint(edit1.text)+strtoint(edit2.text)//加操作
1:x:=strtoint(edit1.text)-strtoint(edit2.text)//减操作
2:x:=strtoint(edit1.text)*strtoint(edit2.text//乘操作
3:x:=strtoint(edit1.text)/strtoint(edit2.text//除操作,除操作要判断被除数是否为零
end;
biming520 2010-02-03
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 dd_zhouqian 的回复:]
我记得我的第一个程序也是计算器,那个时候真的好不容易才写好一个,不容易啊
[/Quote]
呵呵 同感啊 虽然的人看了很简单 但是刚刚接触这些生硬的东西 错误百出 花了好久
biming520 2010-02-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yct0605 的回复:]
给你一个思路吧,把+、-、*、/ 放在combobox控件里面,根据combobox的itemindex值来判断用户选择的数据操作,这里可以用
var
float X;
case combobox.itemindex of
0:x:=strtoint(edit1.text)+strtoint(edit2.text)//加操作
1:x:=strtoint(edit1.text)-strtoint(edit2.text)//减操作
2:x:=strtoint(edit1.text)*strtoint(edit2.text//乘操作
3:x:=strtoint(edit1.text)/strtoint(edit2.text//除操作,除操作要判断被除数是否为零
end;
[/Quote].
谢谢你的帮助 我这就是试验
biming520 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 bjcx994 的回复:]
觉得一个函数就够了
[/Quote]
麻烦有更好的 方法 给我观摩观摩 谢谢啊
最好有附加注释 因为我刚学 很多不懂
wjs_002 2010-02-01
  • 打赏
  • 举报
回复
你这个程序写的别扭,按常见的计算器的样子写说不定会简单些,比如用一个文本框输入数字,显示结果也用这个文本框,用四个按钮表示+ - * /,否则你还得判断到底是+还是-。
y[1]的意思是字符串的第一个字符吧。话怎么说来着:大概是每个字符串就是一个数组,字符串的第n个字符可以表示为y[N]。
bjcx994 2010-02-01
  • 打赏
  • 举报
回复
觉得一个函数就够了
buding79 2010-02-01
  • 打赏
  • 举报
回复
y声明成string就可以了。
y:=edit2.text;

之后直接判断,就可以了,没必要char类型
if y='*' then
begin
//
end;
//另外,你用的都是double型的,可以用strtofloat就可以了。
biming520 2010-02-01
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wjs_002 的回复:]
你这个程序写的别扭,按常见的计算器的样子写说不定会简单些,比如用一个文本框输入数字,显示结果也用这个文本框,用四个按钮表示+ - * /,否则你还得判断到底是+还是-。
y[1]的意思是字符串的第一个字符吧。话怎么说来着:大概是每个字符串就是一个数组,字符串的第n个字符可以表示为y[N]。
[/Quote]

我也想按照常规写 我才刚学, 很多函数什么都不知道 只能这样了
biming520 2010-01-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhuang_bx 的回复:]
var y:string;

x:=strtoint(Edit1.text);  得到第一个数字
y:=trim(Edit2.text);             
z:=strtoint(Edit3.text);  得到第二个数字

case y[1] of 有点不理解 y[1] 是什么意思。。
  '+':;//加
'-':;//减
'*':;//乘
'/':;//除
end;

[/Quote]
zhuang_bx 2010-01-31
  • 打赏
  • 举报
回复
var y:string;

x:=strtoint(Edit1.text); 得到第一个数字
y:=trim(Edit2.text);
z:=strtoint(Edit3.text); 得到第二个数字

case y[1] of
'+':;//加
'-':;//减
'*':;//乘
'/':;//除
end;
内容概要:本文档是2025年全国广播电视技术能手竞赛IPTV专业的竞赛内容大纲,旨在指导参赛选手准备比赛。竞赛分为理论和实操两大部分。理论部分涵盖基本知识、基础理论和专业知识,包括法律法规、技术标准、IPTV技术基础、信号传输与分发、网络和数据安全等。实操部分则涉及IPTV系统设备、仪器设备的操作使用和指标测量。具体内容包括IPTV系统架构、传输技术与指标、设备配置及维护、专业技能如测量工具使用、视音频指标测量、直播点播协议分析、播出网络性能测量、网络安全数据分析以及系统故障排查等。 适合人群:从事或有意从事IPTV相关工作的技术人员,尤其是有志于参加全国广播电视技术能手竞赛的专业人士。 使用场景及目标:①帮助参赛选手全面了解并掌握IPTV相关的法规文件和技术标准;②提升选手对IPTV系统架构、传输技术和设备配置的理解;③增强选手在实际操作中的测量、分析和故障排查能力;④确保选手能够熟练运用各种测量工具和分析软件进行视音频指标测量和网络安全数据分析。 阅读建议:由于文档内容详尽且专业性强,建议读者在习过程中结合实际案例和操作练习,同时参考相关技术文献,以便更好地理解和掌握竞赛所需的知识和技能。

16,747

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧