vb简单实现运算符优先级的计算器

尝试写了一个计算器,VB大作业。从来没有接触过vb语言,只能硬着头皮上了。所幸窗体设计与C#相似。

设计了一个非常简易的计算器(其中利用栈实现了运算符优先级)

【界面如下】


组成包括Label控件2个,其中一个用来显示数学表达式,一个显示当前操作数字;

按钮17个,分别为10个数字0~9,小数点,四则运算按钮,等号按钮,清零按钮;

 

【设计思路】

一开始实现的是只能操作一个运算符:比如输入5+9+6,再按等号输出的是15;

后来想要实现连续运算的功能,就利用栈数据结构,把算术符号的优先级考虑进去。


【原理】


【实现逻辑】

1.       构建两个栈,符号栈和数据栈,利用数组实现,满足先进后出;

2.       界面按钮控件点击事件:

1)     数字:0 <限制不能在首位输入多个0>

2)     数字:1-9 <在label上显示>

3)     小数点 <不能连续输入多个小数点,输入小数点后将该空间可编辑状态设置false,点击其他按钮后恢复true>

4)     运算符号:

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值