简单计算器

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;

namespace 计算器
           
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           
        }
        double s;//计算结果
        double m;//第一个数
        double n;//第二个
      
        string d;//退格后的数

        public void resetUi()
        {
            if (textBox2.Text == "=")
            {
                setUi("0", "");// textBox1返回0;textBox2返回空
            }
        }
        #region 定义数字键
        private void button1_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "1";
            }
            else
            {
                textBox1.Text = textBox1.Text + "1";
            }
        }

      
        private void button2_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "2";
            }
            else
            {
                textBox1.Text = textBox1.Text + "2";
            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "3";
            }
            else
            {
                textBox1.Text = textBox1.Text + "3";
            }
        }

        private void button4_Click(object sender, EventArgs e)
        {

            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "4";
            }
            else
            {
                textBox1.Text = textBox1.Text + "4";
            }
        }

        private void button5_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "5";
            }
            else
            {
                textBox1.Text = textBox1.Text + "5";
            }
        }

        private void button6_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "6";
            }
            else
            {
                textBox1.Text = textBox1.Text + "6";
            }
        }

        private void button7_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "7";
            }
            else
            {
                textBox1.Text = textBox1.Text + "7";
            }
        }

        private void button8_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "8";
            }
            else
            {
                textBox1.Text = textBox1.Text + "8";
            }
        }

        private void button9_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "9";
            }
            else
            {
                textBox1.Text = textBox1.Text + "9";
            }
        }

        private void button10_Click(object sender, EventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "0";
            }
            else
            {
                textBox1.Text = textBox1.Text + "0";
            }
        }

        #endregion

    
        #region 加减乘除
        private void button13_Click(object sender, EventArgs e)//加
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "+");         
           
          
        }

        private void button14_Click(object sender, EventArgs e)//减
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "-");
        }

        private void button15_Click(object sender, EventArgs e)//乘
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "*");
        }

        private void button16_Click(object sender, EventArgs e)//除
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "/");
        }
        #endregion
        private void button19_Click(object sender, EventArgs e)//等
        {
            resetUi();
            n = Convert.ToDouble(textBox1.Text);
            switch (textBox2.Text)
            {
                case "+": s = m + n; break;
                case "-": s = m - n; break;
                case "*": s = m * n; break;
                case "/": s = m / n; break;

            }
            if (Double.IsInfinity(s))//IsInfinity返回正无穷大或副无穷大
            {

                setUi("除数不能为0!", "/");
                return;
            }

            setUi(s.ToString(), "=");

        }

        public void setUi(string txt1, string txt2)
        {
            textBox1.Text = txt1;
            textBox2.Text = txt2;
        }

        private void button17_Click(object sender, EventArgs e)//清零
        {
            setUi("0", "");           

        }

        private void button18_Click(object sender, EventArgs e)//退格
        {
            d = textBox1.Text;
            if (d.Length == 0)
            {
                return;
            }
            else
            {
                d = d.Remove(d.Length - 1);
                textBox1.Text = d;
            }
        }

        private void button11_Click(object sender, EventArgs e)//正负
        {
            double f = 0;
            if (Convert.ToDouble(textBox1.Text) > 0)
            {
                f -= Convert.ToDouble(textBox1.Text);
                textBox1.Text = Convert.ToString(f);
            }
            else if (Convert.ToDouble(textBox1.Text) < 0)
            {
                f -= Convert.ToDouble(textBox1.Text);
                textBox1.Text = Convert.ToString(f);
            }
            else
            {
                return;
            }
        }

        private void button12_Click(object sender, EventArgs e)//点
        {
            if (!textBox1.Text.Contains("."))//contains包含
            {
                setUi(textBox1.Text+".", textBox2.Text);
            }
            else
            {


                return;
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            setUi("0", textBox2.Text);
        }

        private void button20_Click(object sender, EventArgs e)//根
        {
            m = Convert.ToDouble(textBox1.Text);
            s = Math.Sqrt(m);
            if (Double.IsNaN(s))
            {
                // MessageBox.Show("负数无法开根号", "负数无法开根号");
                textBox1.Text = "负数无法开根号!";
                return;
            }
            setUi(s.ToString(), "√");
        
        }

        private void button21_Click(object sender, EventArgs e)//平方
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi(Math.Pow(m, 2).ToString(), "x²");
        }

        private void button22_Click(object sender, EventArgs e)//退出
        {
            Application.Exit();
        }

        private void button1_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "1";
            }
            else
            {
                textBox1.Text = textBox1.Text + "1";
            }
        }

        private void button2_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "2";
            }
            else
            {
                textBox1.Text = textBox1.Text + "2";
            }
        }

        private void button3_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "3";
            }
            else
            {
                textBox1.Text = textBox1.Text + "3";
            }
        }

        private void button4_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "4";
            }
            else
            {
                textBox1.Text = textBox1.Text + "4";
            }
        }

        private void button5_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "5";
            }
            else
            {
                textBox1.Text = textBox1.Text + "5";
            }
        }

        private void button6_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "6";
            }
            else
            {
                textBox1.Text = textBox1.Text + "6";
            }
        }

        private void button7_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "7";
            }
            else
            {
                textBox1.Text = textBox1.Text + "7";
            }
        }

        private void button8_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "8";
            }
            else
            {
                textBox1.Text = textBox1.Text + "8";
            }
        }

        private void button9_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "9";
            }
            else
            {
                textBox1.Text = textBox1.Text + "9";
            }
        }

        private void button10_KeyDown(object sender, KeyEventArgs e)
        {
            resetUi();
            if (textBox1.Text == "0")
            {
                textBox1.Text = "0";
            }
            else
            {
                textBox1.Text = textBox1.Text + "0";
            }
        }

        private void button11_KeyDown(object sender, KeyEventArgs e)
        {
            double f = 0;
            if (Convert.ToDouble(textBox1.Text) > 0)
            {
                f -= Convert.ToDouble(textBox1.Text);
                textBox1.Text = Convert.ToString(f);
            }
            else if (Convert.ToDouble(textBox1.Text) < 0)
            {
                f -= Convert.ToDouble(textBox1.Text);
                textBox1.Text = Convert.ToString(f);
            }
            else
            {
                return;
            }
        }

        private void button12_KeyDown(object sender, KeyEventArgs e)
        {
            if (!textBox1.Text.Contains("."))//contains包含
            {
                setUi(textBox1.Text + ".", textBox2.Text);
            }
            else
            {


                return;
            }
        }

        private void button13_KeyDown(object sender, KeyEventArgs e)
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "+");
        }

        private void button14_KeyDown(object sender, KeyEventArgs e)
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "-");
        }

        private void button15_KeyDown(object sender, KeyEventArgs e)
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "*");
        }

        private void button16_KeyDown(object sender, KeyEventArgs e)
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "/");
        }

        private void button19_KeyDown(object sender, KeyEventArgs e)
        {
            m = Convert.ToDouble(textBox1.Text);
            setUi("", "=");
        }

      
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com.softeem.train.calculator; import java.util.Scanner; import java.io.*; public class Calculator { private int m; // 第一个输入的数字 private int n; // 第二个输入的数字 public Calculator() { this.m = 0; this.n = 0; } /* * public void use() { System.out.println("你是否继续使用?继续输入Y,退出输任意键?"); Scanner * in5= new Scanner(System.in); String zz=in5.next(); * if(zz.equals("Y")||zz.equals("y")) this.gui(); else System.exit(0); * * } */ public void graphic() { //3 System.out.println("=========================="); System.out.println("欢迎使用 So easy 计算机简易系统 "); System.out.println(" 请选择计算类型:"); System.out.println(" 1.加法"); System.out.println(" 2.减法"); System.out.println(" 3.乘法"); System.out.println(" 4.除法"); System.out.println(" 5.输入表达式计算"); System.out.println(" 6.退出"); System.out.println("=========================="); Scanner in3 = new Scanner(System.in); int n = in3.nextInt(); switch (n) { //4 case 1: this.add(); //8 break; case 2: this.sub(); break; case 3: this.mul(); break; case 4: this.div(); break; case 5: this.cal(); break; case 6: System.exit(0); default: break; } } public void add() // 实现加法的方法 { //5 System.out.println("欢迎使用加法操作"); this.in(); //7 int sum; sum = this.m + this.n; System.out.println("你输入的数据的和是:" + sum); // this.use(); } public void sub() // 实现减法的方法 { System.out.println("欢迎使用减法操作"); this.in(); int cha; cha = this.m - this.n; System.out.println("你输入的数据的差是:" + cha); // this.use(); } public void mul() // 实现乘法的方法 { System.out.println("欢迎使用乘法操作"); this.in(); int ji; ji = this.m * this.n; System.out.println("你输入的数据的积是:" + ji); // this.use(); } public void div() // 实现除法的方法 { System.out.println("欢迎使用除法操作"); this.in(); if (n == 0) { System.out.println("被除数不能为零!"); this.graphic(); } int shang; shang = this.m / this.n; System.out.println("你输入的数据的和是:" + shang); // this.use(); } public void cal() // 实现表达式运算方法 { String s = ""; // 接收表达式的字符串 String ss1 = ""; // 分离数字m的字符串 String ss2 = ""; // 分离数字n的字符串 char c1 = ' '; // 存放运算符 int m = 0; // 第一个数字 int n = 0; // 第二个数字 System.out.print("请输入一个表达式:"); try { BufferedReader in = new BufferedReader(new InputStreamReader( System.in)); s = in.readLine(); } catch (IOException e) { } for (int i = 0; i < s.length(); i++) { if ((s.charAt(i) == '+') || (s.charAt(i) == '-') || (s.charAt(i) == '*') || (s.charAt(i) == '/')) { c1 = s.charAt(i); // 第一个数 for (int j = 0; j < i; j++) { ss1 += s.charAt(j); m = Integer.parseInt(ss1); } // 第二个数 for (int j = i + 1; j < s.length(); j++) { ss2 += s.charAt(j); n = Integer.parseInt(ss2); } break; } } if (c1 == '+') System.out.println(m + "+" + n + "=" + (m + n)); if (c1 == '-') System.out.println(m + "-" + n + "=" + (m - n)); if (c1 == '*') System.out.println(m + "*" + n + "=" + (m * n)); if (c1 == '/') System.out.println(m + "/" + n + "=" + (m / n)); } public void in() // 实现接收数据的方法 { //6 System.out.println("请输入第一个数:"); Scanner in1 = new Scanner(System.in); this.m = in1.nextInt(); System.out.println("请输入第二个数:"); Scanner in2 = new Scanner(System.in); this.n = in2.nextInt(); } public static void main(String[] args) throws java.io.IOException { //1 String ifquit = ""; // 用于接收是否退出 Calculator c = new Calculator(); do { //2 c.graphic(); // 调用界面方法 //9 System.out.println("你是否继续使用?继续输入Y,退出输任意键?"); Scanner in5 = new Scanner(System.in); ifquit = in5.nextLine(); //10 } while (ifquit.equals("Y") || ifquit.equals("y")); } }

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值