1、C#编程科学计算器using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drav/ing;using System.Text;using System.Windows.Forms;namespace Calculatorpublic partial class Counter : Formpublic Counter()lnitializeComponent();double num I, num2;double result=0;int
2、op;int flag=0;/开始标志int sp = 0;/判断除数为零时移除监听int max = 0;范围标识int eq=0;region功能键private void on_Click(object sender, EventArgs。)开始flag = 1;sp = 0;max = 0;this.numinput.Text = (T;this.txtlnput.Text =private void off_Click(object sender, EventArgs e)关闭flag = 0;sp = 0;max = 0;this.numinput.Text = m,;this.t
3、xtlnput.Text = m,;1private void button9_Click(object sender, EventArgs e)删除max = 0;if (flag = 1&sp=0)string numstring = this.numinput.Text;if (numstring.Length 0)(string temp = numstring.Substring(0, numstring.Length 1);this.numinput.Text = temp.7bString();elsethis.numinput.Text = 0;private void cle
4、ar_Click(object sender, EventArgs )c清零max = 0;if (flag = 1)sp = o;this.numinput.Text = 0;this.txtlnput.Text = ,w;private void delete_Click(object sender, EventArgs。)洁零max = 0;if (flag = 1)sp = o;this.numinput.Text = O;)#endregionregion运算符private void equaLClick(object sender, EventArgs e)等eq = 1;if
5、(flag = 1 & sp = 0)(max = 0; num2 = Convert.TbDoublefthis. numinput.Text);this.txtinput.Text += num2.TbString();this.txtlnput.1ext += ”=”;txtinput.Text = null;sv/itch (op)case 1: result = num1 + num2;break;case 2: result = num1 num2;break;case 3: result = num1 * num2;break;case 4:result = num I / nu
6、m2;break;case 5: result = Math.Pow(num1, num2);break;case 6: result = Mod(num l, num2);break;default: return;if (op = 4&num2 = 0)this.numinput.Text = ”除数不能为 0”;sp = 1;else/this, txtinput.Text += result.ToString();this.numinput.Text = result.TbString();)private void sub_Click(object sender, EventArgs
7、。)微法 max = 0;if (flag = 1 & sp = 0)num1 = Convert.TDDouble(this. numinput.Text);this.txtinput.Text += nuni17bString();numinput.Text = m,;this.txtlnput.7ext +=op = 2;private void mul_Click(object sender, EventArgs e)乘法max = 0;if (flag = 1 aa sp = 0)(num1 = Convert.TDDouble(this. numinput.Text);this.t
8、xtinput.Text += num1.7bString();this.numinput.Text =this.txtlnput.7ext +=op = 3;)private void divide_Click(object sender, EventArgs e)除法 max = 0;if (flag = 1 aa sp = 0)(num1 = Convert.TDDouble(this. numinput.Text);this.txtinput.Text += num17bString();this.numinput.Text =this.txtlnput.7ext +=op = 4;)
9、private void plus_Click(object sender, EventArgs e)加法max = 0;if (flag = 1 &ft sp = 0)num1 = Convert.TDDouble(this. numinput.Text);this.txtinput.Text += num17bString();numinput.Text = m,;this.txtinput.Text += %”;op = 1 ;)public double Mod (double x, double y)取模运算max = 0;int temp = Convert.7blnt32(x /
10、 y);return (x - y * temp);private void power_Click(object sender, EventArgs。)/繇运算max = 0;if (flag = 1 &a sp = 0)(num1 = Convert.TDDouble(numlnput.Text);this.txtinput.Text += num1.7bString();this.numinput.Text = ,M,;this.txtlnput.7ext +=RA;op = 5;)private void recip_Click(object sender, EventArgs。)倒数
11、max = 0;if (flag = 1 aa sp = 0)(num1 = Convert.TDDouble(this. numinput.Text);double temp = 0;temp = 1 / numl;this.txtlnput.7ext = n1/n + num1.7bString() + 官;this.numinput.Text = temp.7bString();)private void percent_Click(object sender, EventArgs e)max = 0;if (flag = 1 &ft sp = 0)(/double temp = Con
12、vert.TbDouble(this.numinput.Text);/this, txtinput.Text += temp.7bString();/temp = temp / 100;/this, numinput.Text = temp.lbStnng();/this.txtinput.Text +=num1 = Convert.TbDoublefthis. numinput.Text);this.txtinput.Text += num1.7bString();this.numinput.Text = ,M;this.txtlnput.7ext += ”;op = 6;)#endregi
13、onregion 数字private void one_Click(object sender, EventArgs e)/1if (flag = 1 & sp = 0 & max = 0)if (this.numinput.Text = 0n)this.numinput.Text = m,;if (eq = 1)(this.numinput.Text = 1;eq = 0;elsethis.numinput.Text += 111n;private void two_Click(object sender, EventArgs e)/2if (flag = 1 & sp = 0 & max
14、= 0)if (this.numinput.Text = ”0”)this.numinput.Text = n;if (eq = 1)this.numinput.Text = 2;eq = 0;elsethis.numinput.Text += ”2”;/this.txtinput.Text += Z;)private void three_Click(object sender, EventArgs e)/3if (flag = 1 8t& sp = 0 & max = 0)if (this.numinput.Text = 0)(this.numinput.Text = n;if (eq =
15、 1)this.numinput.Text = 3;eq = 0;elsethis.numinput.Text += 3n;/this.txtinput.Text += ”3”;)private void four_Click(object sender, EventArgs e)/4if (flag = 1 & sp = 0 & max = 0)(if (this.numinput.Text = ”0”)this.numinput.Text =if (eq = 1)this.numinput.Text = n4r,;eq = 0;elsethis.numinput.Text += 4n;/
16、this.txtlnput.Text += 4;)private void five_Click(object sender, EventArgs e)/5if (flag = 1 & sp = 0 & max = 0)if (this.numinput.Text = ”0”)this.numinput.Text = m,;)if (eq = 1)this.numinput.Text = 5;eq = 0;elsethis.numinput.Text += 5n;/this, txtinput.Text += 5;private void six_Click(object sender, Ev
17、entArgs e)/6if (flag = 1 8t& sp = 0 & max = 0)if (this.numinput.Text = ,0H)(this.numinput.Text = n;if (eq = 1)this.numinput.Text = M6M;eq = 0;elsethis.numinput.Text += u6n;/this, txtinput.Text += 6;)private void seven_Click(object sender, EventArgs e)/7if (flag = 1 & sp = 0 & max = 0)(if (this.numin
18、put.Text = ”0”)this.numinput.Text =if (eq = 1)this.numinput.Text = ”7”;eq = 0;elsethis.numinput.Text += ,7n;/this, txtinput, fext += “7”;)private void eight_Click(object sender, EventArgs e)/8if (flag = 1 & sp = 0 & max = 0)(if (this.numinput.Text = 0”)this.numinput.Text = n;if (eq = 1)this.numinput
19、.Text = ”8”;eq = 0;elsethis.numinput.Text += ”8”;/this, txtinput, fext += u8;private void night_Click(object sender, EventArgs e)/9if (flag = 1 & sp = 0 & max = 0)if (this.numinput.Text = ,0H)(this.numinput.Text = n;if (eq = 1)this.numinput.Text = 9;eq = 0;elsethis.numinput.Text += 9;/this.txtlnput.
20、Iext += “9”;)private void zero_Click(object sender, EventArgs e)/0if (flag = 1 & sp = 0 & max = 0)if (this.numinput.Text = 0。this.numinput.Text = n;if (eq = 1)this.numinput.Text = 0;eq = 0;elsethis.numinput.Text += 0”;/this, txtinput.Text += O1;)private void dian_Click(object sender, EventArgs。)小数点i
21、f (flag = 1 & sp = 0 & max = 0)(if (eq = 1)this.numinput.Text = .,f;eq = 0;elsethis.numinput.Text +=/this, txtinput.Text +=)#endregionRegion三角函数private void sin_Click(object sender, EventArgs e)/sinif (flag = 1 aa sp = 0)num1 = Convert.TDDoublefthis. numinput.Text);double temp = Math.PI * (num1 / 18
22、0);this.txtlnput.1ext += Msin(H + num I + ”)=“;num1 = Math.Sin(temp);this.numinput.Text = numl.7bStnng();/this, txtinput.Text += num1.ToString();private void cos_Click(object sender, EventArgs e)/cosif (flag = 1 aa sp = 0)(num1 = Convert.TDDoublefthis. numinput.Text);double temp = Math.PI * (num1 /
23、180);this.txtinput.Text += ”cos(” + num1 + n)=;num1 = Math.Cos(temp);this.numinput.Text = numl.7bString();)private void tan_Click(object sender, EventArgs e)/tanif (flag = 1 aa sp = 0)(num1 = Convert.TDDouble(this. numinput.Text);double temp = Math.PI * (num1 / 180);this.txtlnput.7ext += ntan(H + nu
24、ml + )=n;num1 = Math.Tan(temp);this.numinput.Text = num I.ToString();)#endregion#region 帮助private void 关于产品7bolStnpMenultem_Click(object sender, EventArgs e) MenuAbout about = nev/ MenuAbout();about. Show();1private void change_Click(object sender, EventArgs e)max = 0;if (flag = l&ftsp = 0)numl = Co
25、nvert.TDDoublefthis. numinput.Text);num1 = -num I;this.numinput.Text = num I.ToString();)private void 使用手册7bolStnpMenultem_Click(object sender, EventArgs e) MenuUse use = new MenuUse();use.Shov/();1#endregionRegion皮肤private void 皮肤 17bolStnpMenultem_Click(object sender, EventArgs e)skinEngine I .Ski
26、nFile = Application.StartupPath + XCalmness-ssk;private void 皮肤27bolStripMenultem_Click(object sender, EventArgs e)skinEngine I .SkinFile = Application.StartupPath + DeepCyan.ssk,1;private void 皮肤37bolStripMenultem_Click(object sender, EventArgs e)skinEngine I .SkinFile = Application.StartupPath + E
27、ighteen.ssk;private void 皮肤47bolStripMenultem_Click(object sender, EventArgs e)skinEngine I .SkinFile = Application.StartupPath + GlassGreen.ssk;private void 皮fl57bolStripMenultem_Click(object sender, EventArgs e)skinEngine I .SkinFile = Application.StartupPath + XSilvenssk;1#endregion#region复制粘贴pri
28、vate void 复ftilbolStripMenultem_Click(object sender, EventArgs e)if (numinput.SelectionLength 0)numinput.Copy();private void 粘贴7bolStripMenultem-Click(object sender, EventArgs e)numinput. Paste();#endregionprivate void CounterLoad(object sender, EventArgs e)numinput.SelectAll();Rectangle ScreenArea = System.Windows.Forms.Screen.GetBounds(this);int width = ScreenArea.Width;int heigth = ScreenArea.Height;this. Location = new Point (width / 2)(this. Width / 2), (heigth / 2) - (this. Height /2);private void numlnput_TextChanged(object sender, EventArgs e)/numtext
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1