国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#實現(xiàn)簡單的計算器功能完整實例

2020-01-24 00:32:48
字體:
供稿:網(wǎng)友

本文實例講述了C#實現(xiàn)簡單的計算器功能。分享給大家供大家參考,具體如下:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Collections;using System.Threading;using System.Diagnostics;namespace CALCULATOR{  public partial class Form1 : Form  {    public Form1()    {      InitializeComponent();    }    private string _sign;    private double _first = 10241024;    private double _second = 10241024;    private string _number;    private void button1_Click(object sender, EventArgs e)    {      _number += "1";      this.textBox1.Text += "1";    }    private void button2_Click(object sender, EventArgs e)    {      _number += "2";      this.textBox1.Text += "2";    }    private void button3_Click(object sender, EventArgs e)    {      _number += "3";      this.textBox1.Text += "3";    }    private void button4_Click(object sender, EventArgs e)    {      _number += "4";      this.textBox1.Text += "4";    }    private void button8_Click(object sender, EventArgs e)    {      _number += "5";      this.textBox1.Text += "5";    }    private void button7_Click(object sender, EventArgs e)    {      _number += "6";      this.textBox1.Text += "6";    }    private void button6_Click(object sender, EventArgs e)    {      _number += "7";      this.textBox1.Text += "7";    }    private void button5_Click(object sender, EventArgs e)    {      _number += "8";      this.textBox1.Text += "8";    }    private void button9_Click(object sender, EventArgs e)    {      _number += "9";      this.textBox1.Text += "9";    }    private void button10_Click(object sender, EventArgs e)    {      _number += "0";      this.textBox1.Text += "0";    }    private void button16_Click(object sender, EventArgs e)    {      //設(shè)置加號計算數(shù)      SetNumber(Convert.ToDouble(_number));      if (_sign == null || _second == 10241024)      {        _sign = "+";        this.textBox1.Text += "+";        return;      }      if (_second != 10241024)      {        //開始進行計算        Computer ComPro = new Computer(_sign, _first, _second);        this.textBox1.Text = ComPro.Comt(out _first).ToString();        //驗證除數(shù)為零的情況        if (_first == 10241024.10241023)        {          this.textBox1.Text = "0";          MessageBox.Show("除數(shù)不能為零!");          _number = null;          _first = 10241024;          _second = 10241024;          this.textBox1.Text = null;          _sign = null;          this.textBox1.Text = null;        }        //開始初始化數(shù)據(jù)        _sign = "+";        this.textBox1.Text += "+";        _second = 10241024;        _number = null;        return;      }    }    private void button15_Click(object sender, EventArgs e)    {      //設(shè)置減號計算數(shù)      SetNumber(Convert.ToDouble(_number));      if (_sign == null || _second == 10241024)      {        _sign = "-";        this.textBox1.Text += "-";        return;      }      if (_second != 10241024)      {        //開始進行計算        Computer ComPro = new Computer(_sign, _first, _second);        this.textBox1.Text = ComPro.Comt(out _first).ToString();        //驗證除數(shù)為零的情況        if (_first == 10241024.10241023)        {          this.textBox1.Text = "0";          MessageBox.Show("除數(shù)不能為零!");          _number = null;          _first = 10241024;          _second = 10241024;          this.textBox1.Text = null;          _sign = null;          this.textBox1.Text = null;        }        //開始初始化數(shù)據(jù)        _sign = "-";        this.textBox1.Text += "-";        _second = 10241024;        _number = null;        return;      }    }    private void button14_Click(object sender, EventArgs e)    {      //設(shè)置乘號計算數(shù)      SetNumber(Convert.ToDouble(_number));      if (_sign == null || _second == 10241024)      {        _sign = "*";        this.textBox1.Text += "*";        return;      }      if (_second != 10241024)      {        //開始進行計算        Computer ComPro = new Computer(_sign, _first, _second);        this.textBox1.Text = ComPro.Comt(out _first).ToString();        //驗證除數(shù)為零的情況        if (_first == 10241024.10241023)        {          this.textBox1.Text = "0";          MessageBox.Show("除數(shù)不能為零!");          _number = null;          _first = 10241024;          _second = 10241024;          this.textBox1.Text = null;          _sign = null;          this.textBox1.Text = null;        }        //開始初始化數(shù)據(jù)        _sign = "*";        this.textBox1.Text += "*";        _second = 10241024;        _number = null;        return;      }    }      /// <summary>      /// 設(shè)置除號計算數(shù)      /// </summary>      /// <param name="sender"></param>      /// <param name="e"></param>    private void button11_Click(object sender, EventArgs e)    {      SetNumber(Convert.ToDouble(_number));      if (_sign == null || _second == 10241024)      {        _sign = "/";        this.textBox1.Text += "/";        return;      }      if (_second != 10241024)      {        //開始進行計算        Computer ComPro = new Computer(_sign, _first, _second);        this.textBox1.Text = ComPro.Comt(out _first).ToString();        //驗證除數(shù)為零的情況        if (_first == 10241024.10241023)        {          this.textBox1.Text = "0";          this.textBox1.Text = "除數(shù)不能為零!";          _number = null;          _first = 10241024;          _second = 10241024;          this.textBox1.Text = null;          _sign = null;          this.textBox1.Text = null;        }        //開始初始化數(shù)據(jù)        _sign = "/";        this.textBox1.Text += "/";        _second = 10241024;        _number = null;        return;      }    }    /// <summary>    /// 清空輸入框    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    private void button12_Click(object sender, EventArgs e)    {      _number = null;      _first = 10241024;      _second = 10241024;      this.textBox1.Text = null;      _sign = null;      this.textBox1.Text = null;    }    private void button13_Click(object sender, EventArgs e)    {      SetNumber(Convert.ToDouble(_number));      //判斷是否設(shè)置了_second的值      if (_second == 10241024)      {        _second = Convert.ToDouble(_number);        _number = null;      }      //判斷是否設(shè)置了_first的值      if (_first == 10241024)      {        _first = Convert.ToDouble(_number);        _number = null;      }      //判斷是否有_sign的值      if (_sign == null)      {        _sign = "+";      }      //開始進行計算      Computer ComPro = new Computer(_sign, _first, _second);      this.textBox1.Text = ComPro.Comt(out _first).ToString();      //驗證除數(shù)為零的情況      if (_first == 10241024.10241023)      {        this.textBox1.Text = "0";        MessageBox.Show("除數(shù)不能為零!");        _number = null;        _first = 10241024;        _second = 10241024;        this.textBox1.Text = null;        _sign = null;        this.textBox1.Text = null;      }      //開始初始化數(shù)據(jù)      _sign = null;      _second = 10241024;      _number = null;    }    public class Computer    {      private string _sign;      private double _first;      private double _second;      public Computer(string str, double first, double second)      {        _sign = str;        _first = first;        _second = second;      }      //選擇相應(yīng)的運算符進行運算      public double Comt(out double first)      {        if (_sign == "+")        {          first = _first + _second;          return _first + _second;        }        else if (_sign == "-")        {          first = _first - _second;          return _first - _second;        }        else if (_sign == "*")        {          first = _first * _second;          return _first * _second;        }        else if (_sign == "/")        {          if (_second == 0)          {            first = 10241024.10241023;            return 10241024.10241023;          }          else          {            first = _first / _second;            return _first / _second;          }        }        else        {          first = 10241024.10241024;          return 10241024.10241024;        }      }    }    //設(shè)置數(shù)字函數(shù)    public void SetNumber(double number)    {      if (_first == 10241024 && _number != null)      {        _first = Convert.ToDouble(_number);        _number = null;      }      else if (_second == 10241024 && _number != null)      {        _second = Convert.ToDouble(_number);        _number = null;      }    }    private void timer1_Tick(object sender, EventArgs e)    {      this.label2.Text = DateTime.Now.ToString();    }    private void button24_Click(object sender, EventArgs e)    {      if (this.textBox1.Text == " ")      {        MessageBox.Show("請輸入數(shù)據(jù)");        this.textBox1.Text = Convert.ToInt64(textBox1.Text.ToString(), 2).ToString();      }      else      {        this.textBox1.Text = Convert.ToInt64(textBox1.Text.ToString(), 2).ToString();      }    }    private void button22_Click(object sender, EventArgs e)    {      if (this.textBox1.Text == " ")      {        MessageBox.Show("請輸入數(shù)據(jù)");        Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);        this.textBox1.Text = Convert.ToString(int64,16);      }      else      {        Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);        this.textBox1.Text = Convert.ToString(int64, 16);      }    }    private void button23_Click(object sender, EventArgs e)    {      if (this.textBox1.Text == " ")      {        MessageBox.Show("請輸入數(shù)據(jù)");        Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);        this.textBox1.Text = Convert.ToString(int64, 8);      }      else      {        Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);        this.textBox1.Text = Convert.ToString(int64, 8);      }    }    private void button21_Click(object sender, EventArgs e)    {      if (this.textBox1.Text == " ")      {        MessageBox.Show("請輸入數(shù)據(jù)");        Int64 int64 = Convert.ToInt64(textBox1.Text);        this.textBox1.Text = Convert.ToString(int64, 2);      }      else      {        Int64 int64 = Convert.ToInt64(textBox1.Text);        this.textBox1.Text = Convert.ToString(int64, 2);      }    }    private void button27_Click(object sender, EventArgs e)    {      double buffer1= Convert.ToDouble(textBox1.Text);        buffer1 = 1 / buffer1;      this.textBox1.Text = buffer1.ToString();    }    private void button17_Click(object sender, EventArgs e)    {      _number += ".";      this.textBox1.Text += ".";    }    private void button25_Click(object sender, EventArgs e)    {      double buffer1 = Convert.ToDouble(textBox1.Text);      buffer1 = buffer1 * buffer1;      this.textBox1.Text = buffer1.ToString();    }    private void button26_Click(object sender, EventArgs e)    {      if (this.textBox1.Text == " ")      {        MessageBox.Show("請輸入數(shù)據(jù)");        Int64 int64 = Convert.ToInt64(this.textBox1.Text);        Int64 temp1 = 1;        while (int64 > 1)        {          temp1 = temp1*int64 ;          int64--;        }        this.textBox1.Text = temp1.ToString();      }      else      {        Int64 int64 = Convert.ToInt64(this.textBox1.Text);        Int64 temp1 = 1;        while (int64 > 1)        {          temp1 = temp1 * int64;          int64--;        }        this.textBox1.Text = temp1.ToString();      }    }    private void button28_Click(object sender, EventArgs e)    {      //Int64 int64 = Convert.ToInt64(this.textBox1.Text);      //double temp=Math.Log10(int64);      //this.textBox1.Text = temp.ToString();      Double temp1, temp2;      string[] STRarry = new string[2];      STRarry = this.textBox1.Text.Split('.');      temp1 = Convert.ToDouble(STRarry[0]);      temp2 = Convert.ToDouble(STRarry[1]);      // double temp1 = Convert.ToDouble(this.textBox1.Text);      temp2 = Math.Log(temp2,temp1 );      this.textBox1.Text = temp2.ToString();    }    private void button18_Click(object sender, EventArgs e)    {      double temp1 = Convert.ToDouble(this.textBox1.Text);      double temp2 = Math.Sin(temp1);      this.textBox1.Text = temp2.ToString();    }    private void button19_Click(object sender, EventArgs e)    {      double temp1 = Convert.ToDouble(this.textBox1.Text);      double temp2 = Math.Cos(temp1);      this.textBox1.Text = temp2.ToString();    }    private void button20_Click(object sender, EventArgs e)    {      double temp1 = Convert.ToDouble(this.textBox1.Text);      double temp2 = Math.Tan(temp1);      this.textBox1.Text = temp2.ToString();    }    private void button33_Click(object sender, EventArgs e)    {      Double temp1, temp2;      string[] STRarry=new string[2];      STRarry=this.textBox1.Text.Split('.');      temp1 = Convert.ToDouble(STRarry[0]);      temp2 = Convert.ToDouble(STRarry[1]);      // double temp1 = Convert.ToDouble(this.textBox1.Text);      temp2 = Math.Pow(temp1,temp2);      this.textBox1.Text = temp2.ToString();    }    /// <summary>    /// 計算e的temp1次冪    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    private void button31_Click(object sender, EventArgs e)    {      double temp1 = Convert.ToDouble(this.textBox1.Text);      double temp2 = Math.Exp(temp1);      this.textBox1.Text = temp2.ToString();    }    private void button34_Click(object sender, EventArgs e)    {       double temp1 = Convert.ToDouble(this.textBox1.Text);      double temp2 = Math.Sqrt(temp1);      this.textBox1.Text = temp2.ToString();    }    private void button32_Click(object sender, EventArgs e)    {      Double temp1, temp2;      string[] STRarry = new string[2];      STRarry = this.textBox1.Text.Split('.');      temp1 = Convert.ToDouble(STRarry[0]);      temp2 = Convert.ToDouble(STRarry[1]);      // double temp1 = Convert.ToDouble(this.textBox1.Text);      temp2 = Math.IEEERemainder(temp1, temp2);      this.textBox1.Text = temp2.ToString();    }    /// <summary>    /// 圓的面積    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    private void button30_Click(object sender, EventArgs e)    {      double buffer1 = Convert.ToDouble(textBox1.Text);      buffer1 =3.1415926*buffer1*buffer1;      this.textBox1.Text = buffer1.ToString();    }    /// <summary>    /// 三角形面積    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    private void button29_Click(object sender, EventArgs e)    {      Double temp1, temp2,temp3,p,area;      string[] STRarry = new string[3];      STRarry = this.textBox1.Text.Split('.');      temp1 = Convert.ToDouble(STRarry[0]);      temp2 = Convert.ToDouble(STRarry[1]);      temp3 = Convert.ToDouble(STRarry[2]);      // double temp1 = Convert.ToDouble(this.textBox1.Text);      p = (temp1 + temp2 + temp3) / 2;      area= p * (p - temp1) * (p - temp2) * (p - temp3);      area = Math.Sqrt(area);      this.textBox1.Text = area.ToString();    }    private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)    {      string str = e.Link.ToString();      Process.Start(str);    }    private void Form1_Load(object sender, EventArgs e)    {    }  }}

運行效果:

PS:這里再為大家推薦幾款計算工具供大家進一步參考借鑒:

在線一元函數(shù)(方程)求解計算工具:
http://tools.VeVB.COm/jisuanqi/equ_jisuanqi

科學(xué)計算器在線使用_高級計算器在線計算:
http://tools.VeVB.COm/jisuanqi/jsqkexue

在線計算器_標(biāo)準(zhǔn)計算器:
http://tools.VeVB.COm/jisuanqi/jsq

更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#程序設(shè)計之線程使用技巧總結(jié)》、《C#常見控件用法教程》、《WinForm控件用法總結(jié)》、《C#數(shù)組操作技巧總結(jié)》及《C#面向?qū)ο蟪绦蛟O(shè)計入門教程

希望本文所述對大家C#程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 肇源县| 新巴尔虎左旗| 峨山| 当涂县| 罗定市| 金坛市| 蒙山县| 吉首市| 延川县| 达拉特旗| 普兰店市| 涪陵区| 莒南县| 资阳市| 华宁县| 南充市| 洛扎县| 醴陵市| 资溪县| 汝南县| 郯城县| 浪卡子县| 新丰县| 安泽县| 自治县| 奉新县| 康马县| 彭阳县| 肃南| 呼图壁县| 红安县| 晴隆县| 固阳县| 阿城市| 如皋市| 航空| 平原县| 拜城县| 文昌市| 芒康县| 洪泽县|