版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;/*计算器算法当每次安19的数字按键,调用一个anniu方法,在aniu方法用是否输入运算符来判断是否是输入的是第一个第二个值,中间在判断是否是小数的数值算法。普通值的算法是a=a*10+i;i为传入的参数的值小数值的算法是a=a+i/s;s=s*10;s为小数的位数,1为无10为1
2、位,100为2位。运算符号方法的算法调用fh这个方法判断当前是否有输入过运算符如果无则给运算字符串赋值为传入的值,并置空小数位有则调js计算的方法,并并置空小数位,在给运算字符串赋值为传入的值。计算的方法由于数不能为0所以首先判断是否为处号除数不能为0如果是则不计算跳出否则计算相应的符号计算并显示 */namespace WindowsApplication1 public partial class Form1 : Form String Fh=""/用于存储符号运算符 double a, b, c;/a为第一个接收的值,b为第二个值,c为计算结果 long s = 1;
3、/初始小数的位数 public Form1() InitializeComponent(); public void anniu(double i)/按钮的方法 if (Fh.Equals("")/是否当前有运算符 if (s = 1)/判断是否有小数点 a = a * 10 + i;/计算无小数的值 else a = a + i / s;/计算有小数的值 s = s * 10;/计算下一个小数的位置 textBox1.Text = a.ToString();/显示计算的结果 else /当前有运算符的方法 if (!(c = 0) b = 0; c = 0; /当有计算结
4、果就清除B的值 if (s = 1)/判断是否有小数点 b = b * 10 + i;/计算无小数的值 else if (i = 0)/判断在小数位后添加0 s = s * 10;/计算下一个小数的位置 else b = b + i / s;/计算有小数的值 s = s * 10;/计算下一个小数的位置 textBox1.Text = b.ToString();/显示计算的结果 public void js() /数学计算的方法 if (Fh="/")/判断是否除数等于0 if (b = 0) /是则不计算 textBox1.Text = "被除数不能为0&quo
5、t;/显示被除数不能为0 return;/返回 else c = a / b; else/如果不是出发计算则执行其他计算 if (Fh.Equals("+") c = a + b; if (Fh.Equals("-") c = a - b; if (Fh.Equals("*") c = a * b; if (Fh.Equals("%") c = a % b; textBox1.Text = c.ToString(); /显示计算结果 a = c;/将结果给第一个变量作为 public void fh(string
6、str) /接收运算符的方法 if (Fh.Equals("")/当前是否已经有运算符 Fh = str; s = 1;/没有则接收运算符,小数点失效 else js(); s = 1; Fh = str;/有则计算当前的值,小数点失效 private void button1_Click(object sender, EventArgs e)/监听按钮1的单击事件 anniu(1);/调用按钮方法 private void button2_Click(object sender, EventArgs e) anniu(2); private void button3_Cl
7、ick(object sender, EventArgs e) anniu(3); private void button4_Click(object sender, EventArgs e) anniu(4); private void button5_Click(object sender, EventArgs e) anniu(5); private void button7_Click(object sender, EventArgs e) anniu(6); private void button6_Click(object sender, EventArgs e) anniu(7)
8、; private void button8_Click(object sender, EventArgs e) anniu(8); private void button9_Click(object sender, EventArgs e) anniu(9); private void button10_Click(object sender, EventArgs e) if (!textBox1.Text.Equals("0") anniu(0); private void button11_Click(object sender, EventArgs e)/监听运算符
9、按钮的事件 fh("+");/调用运算符的方法 private void button12_Click(object sender, EventArgs e) fh("-"); private void button14_Click(object sender, EventArgs e)/清空按钮 textBox1.Text = "0"/清空TEXTBOX的显示值 a = 0; b = 0; c = 0; s = 1; Fh = ""/初始化所有值 private void button13_Click(objec
10、t sender, EventArgs e)/等于按钮 js();/调用计算方法 private void button16_Click(object sender, EventArgs e) fh("/"); private void button17_Click(object sender, EventArgs e) fh("%"); private void button15_Click(object sender, EventArgs e) fh("*"); private void button19_Click(object sender, EventArgs e)/正负号 if (Fh.Equals("") a = -a; textBox1.Text = a.ToString(); else
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 废矿物油再生处置工安全知识宣贯模拟考核试卷含答案
- 粮油保管员岗前工艺分析考核试卷含答案
- 水解酵母分离工岗后考核试卷含答案
- 水(油)压机锻造工岗前安全技能测试考核试卷含答案
- 卫生检验员安全实践强化考核试卷含答案
- 泥面塑工操作强化考核试卷含答案
- 整模脱模工安全检查测试考核试卷含答案
- 织袜工班组管理测试考核试卷含答案
- 燃气具装配工岗前价值创造考核试卷含答案
- 废矿物油再生处置工安全知识竞赛模拟考核试卷含答案
- 2023年高考辽宁卷化学真题(解析版)
- 《论语》导读(复旦版)学习通超星期末考试答案章节答案2024年
- 压力管道使用单位压力管道安全日管控制度及压力管道安全员守则和每日压力管道安全检查记录
- 品管圈:汇报提高儿科护士桡动脉采血的穿刺成功率课件
- 船体装配工、高级理论复习题
- 区块链技术与原理智慧树知到期末考试答案章节答案2024年山东劳动职业技术学院
- 马克思主义基本原理-2023版-课后习题答案
- 100以内加减法混合竖式练习题
- 2023年江西新余中考历史真题及答案
- “星火计划”人才培养项目
- 【人教版】八年级数学下册《一次函数与方程、不等式》基础测试卷及答案
评论
0/150
提交评论