在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例C#语言基础 → C# 简易计算器(入门级源码,实现了平方、开方、加减乘除等算法)

C# 简易计算器(入门级源码,实现了平方、开方、加减乘除等算法)

C#语言基础

下载此实例
  • 开发语言:C#
  • 实例大小:10.26M
  • 下载次数:29
  • 浏览次数:547
  • 发布时间:2019-09-10
  • 实例类别:C#语言基础
  • 发 布 人:water&Y
  • 文件格式:.zip
  • 所需积分:1
 相关标签: 计算器 计算

实例介绍

【实例简介】

基于VS15 的 C# .NET Framework 4.5 用于简单的加减乘除以及平方开方等计算

【实例截图】

from clipboard

from clipboard

【核心代码】

public partial class MyCalculator : Form
    {

        double a = 0;
        double b = 0;
        bool c = false;
        string d;

        public MyCalculator()
        {
            InitializeComponent();

        }

        /// <summary>
        /// 窗体加载 结果默认空字符
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void MyCalculator_Load(object sender, EventArgs e)
        {
            txtResult.Text = "";
            txtResult.TextAlign = HorizontalAlignment.Right;//用来设置文本框的文字的位置,居右显示
        }


        /// <summary>
        /// 平方
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnPF_Click(object sender, EventArgs e)
        {
            if (txtResult.Text == "")
            {
                MessageBox.Show("文本框内不存在数值,不可计算平方值");
                return;
            }
            else if (txtResult.Text == ".")
            {
                MessageBox.Show("文本框内数值不正确,不可计算平方值");
                return;
            }
            else
            {
                c = true;
                b = double.Parse(txtResult.Text);
                d = "x2";
            }
            

        }

        /// <summary>
        /// 开方
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnKF_Click(object sender, EventArgs e)
        {
            if (txtResult.Text == "")
            {
                MessageBox.Show("文本框内不存在数值,不可计算开方值");
                return;
            }
            else if (txtResult.Text == ".")
            {
                MessageBox.Show("文本框内数值不正确,不可计算开方值");
                return;
            }
            else
            {
                c = true;
                b = double.Parse(txtResult.Text);
                d = "sqrt";
            }

        }


        /// <summary>
        /// log
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnLog_Click(object sender, EventArgs e)
        {
            if (txtResult.Text == "")
            {
                MessageBox.Show("文本框内不存在数值,不可计算 Log 值");
                return;
            }
            else if (txtResult.Text == ".")
            {
                MessageBox.Show("文本框内数值不正确,不可计算 Log 值");
                return;
            }
            else
            {
                c = true;
                b = double.Parse(txtResult.Text);
                d = "Log";
            }

        }


        /// <summary>
        /// OFF(关闭计算器)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnOff_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show(this, string.Format("您是真的关闭此计算机吗?", "关闭提示信息"), "关闭提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                this.Close();
            }

        }


        /// <summary>
        /// 7
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn7_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "7";

        }



        /// <summary>
        /// 8
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn8_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "8";

        }


        /// <summary>
        /// 9
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn9_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "9";

        }


        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnJia_Click(object sender, EventArgs e)
        {

            c = true;
            b = double.Parse(txtResult.Text);
            d = " ";

        }


        /// <summary>
        /// 4
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn4_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "4";

        }


        /// <summary>
        /// 5
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn5_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "5";

        }


        /// <summary>
        /// 6
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn6_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "6";

        }


        /// <summary>
        /// -
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnJian_Click(object sender, EventArgs e)
        {

            c = true;
            b = double.Parse(txtResult.Text);
            d = "-";

        }


        /// <summary>
        /// 1
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn1_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "1";

        }



        /// <summary>
        /// 2
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn2_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "2";

        }


        /// <summary>
        /// 3
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn3_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "3";

        }

        /// <summary>
        /// *
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnCheng_Click(object sender, EventArgs e)
        {

            c = true;
            b = double.Parse(txtResult.Text);
            d = "*";

        }


        /// <summary>
        /// 0
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn0_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }

            //txtResult.Text = "0";

            //if (d == "/")
            //{
            //    txtResult.Clear();

            //    MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            //}



            try
            {

                txtResult.Text = "0";
            }
            //catch (DivideByZeroException)
            //{

            //    MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            //}


            catch (DivideByZeroException)
            {
                Console.WriteLine("除数不能为零");
            }
            //catch (Exception e)
            //{
            //    Console.WriteLine(e.Message);
            //}
            Console.WriteLine(txtResult.ToString());



        }

        /// <summary>
        /// 00
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn00_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = "00";

        }

        /// <summary>
        /// =
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnResult_Click(object sender, EventArgs e)
        {

            switch (d)

            {

                case " ": a = b double.Parse(txtResult.Text); break;

                case "-": a = b - double.Parse(txtResult.Text); break;

                case "*": a = b * double.Parse(txtResult.Text); break;

                case "/": a = b / double.Parse(txtResult.Text); break;

                case "x2": a = b * double.Parse(txtResult.Text); break;

                case "sqrt": a = Math.Sqrt(b); break;

                case "log": a = Math.Log(double.Parse(txtResult.Text), b); break;

                case "ln": a = Math.Log(b, Math.E); break;

            }

            txtResult.Text = a "";

            c = true;

        }


        /// <summary>
        /// /
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnChu_Click(object sender, EventArgs e)
        {

            c = true;
            b = double.Parse(txtResult.Text);
            d = "/";

        }


        /// <summary>
        /// .
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDian_Click(object sender, EventArgs e)
        {

            if (c == true)
            {
                txtResult.Text = "";
                c = false;
            }
            txtResult.Text = ".";

        }


        /// <summary>
        /// C(清空)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnC_Click(object sender, EventArgs e)
        {

            txtResult.Text = "";

        }

        /// <summary>
        /// ln
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnLn_Click(object sender, EventArgs e)
        {
            if (txtResult.Text == "")
            {
                MessageBox.Show("文本框内不存在数值,不可计算 Ln 值");
                return;
            }
            else if (txtResult.Text == ".")
            {
                MessageBox.Show("文本框内数值不正确,不可计算 Ln 值");
                return;
            }
            else
            {
                c = true;
                b = double.Parse(txtResult.Text);
                d = "Ln";
            }

        }


        /// <summary>
        /// back
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnBack_Click(object sender, EventArgs e)
        {
            
            string msg = txtResult.Text;

            if (msg.Length > 0)
            {
                txtResult.Text = msg.Substring(0, msg.Length - 1);//每点击一下Back按钮,后退一步(即每点击一下 Back 按钮,文本内容清空一次最后一位数值)
            }
            else
            {
                MessageBox.Show("文本框内不存在数值,不需再执行清除字符");
                return;
            }
        }

    }


标签: 计算器 计算

实例下载地址

C# 简易计算器(入门级源码,实现了平方、开方、加减乘除等算法)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警