C#简单计算器
来源:互联网 发布:软件外包交易平台 编辑:程序博客网 时间:2024/06/05 18:12
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace 计算器
{
public partial class Form1 : Form
{
public decimal First;
public decimal Second;
bool DoClear;
bool FirstOpen;
string Str;
public Form1()
{
FirstOpen = true;
DoClear = true;
First = 0;
Second = 0;
Str = "=";
InitializeComponent();
}
private void clear_Click(object sender, EventArgs e)
{
DoClear = true;
FirstOpen = true;
Str = "";
First = 0;
Second = 0;
textBox1.Text = "";
}
private void append(int i)
{
//if (FirstOpen == true)
// First = Convert.ToDouble(textBox1.Text);
//else
// Second = Convert.ToDouble(textBox1.Text);
//textBox1.Focus();
if (i == 0 || i != 0)
{
textBox1.Text += i.ToString();
if (textBox1.Text.Length >= 20)
MessageBox.Show("不可以超过20位", "错误提示框");
//textBox1.Enabled = false;
}
DoClear = false;
}
private void button10_Click(object sender, EventArgs e)
{
if (sender == button1)
append(1);
else if (sender == button2)
append(2);
else if (sender == button3)
append(3);
else if (sender == button4)
append(4);
else if (sender == button5)
append(5);
else if (sender == button6)
append(6);
else if (sender == button7)
append(7);
else if (sender == button8)
append(8);
else if (sender == button9)
append(9);
else append(0);
}
private void button12_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
if (FirstOpen == true)
First = Convert.ToDecimal(textBox1.Text);
else
Second = Convert.ToDecimal(textBox1.Text);
switch (Str)
{
case "+": First += Second; break;
case "-": First -= Second; break;
case "*": First *= Second; break;
case "/": First /= Second; break;
default: break;
}
if (sender == button12)
Str = "+";
else if (sender == button13)
Str = "-";
else if (sender == button14)
Str = "*";
else if
(sender == button15)
Str = "/";
FirstOpen=false;
textBox1.Text ="";
}
#region
private void button1_Click(object sender, EventArgs e)
{
button10_Click(sender,e);
}
private void button2_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button3_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button4_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button5_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button6_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button7_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button8_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button9_Click(object sender, EventArgs e)
{
button10_Click(sender, e);
}
private void button13_Click(object sender, EventArgs e)
{
if (DoClear == true)
{
textBox1.Text+="-";
DoClear = false;
}
else
button12_Click(sender, e);
}
private void button14_Click(object sender, EventArgs e)
{
button12_Click(sender, e);
}
private void button15_Click(object sender, EventArgs e)
{
button12_Click(sender, e);
}
#endregion
private void button19_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
if (FirstOpen == true)
First = Convert.ToDecimal(textBox1.Text);
else
Second = Convert.ToDecimal (textBox1.Text);
if (Str == "/" && Second == 0)
{
MessageBox.Show("除数不可以为0", "错误提示对话框");
clear_Click(sender, e);
}
switch(Str)
{
case "+": First += Second; break;
case "-": First -= Second; break;
case "*": First *= Second; break;
case "/": //if (Second == 0)
//MessageBox.Show("分母不可以为0", "错误提示对话框"); break;
First /= Second; break;
default: break;
}
textBox1.Text=Convert.ToString(First);
Str = "=";
FirstOpen = false;
}
private void button16_Click(object sender, EventArgs e)
{
abs_Click(sender, e);
}
private void abs_Click(object sender, EventArgs e)
{
double t;
if (textBox1.Text=="")
MessageBox.Show("数字不可以为空", "操作错误提示对话框");
else
{
t = Convert.ToDouble(textBox1.Text);
if (sender == abs)
{
t = Math.Abs(t);
}
else if (sender == button16)
{
if (t < 0)
MessageBox.Show("负数不可以开平方", "输入错误对话框");
else t = Math.Sqrt(t);
}
else if (sender == log)
{
if (t <= 0)
MessageBox.Show("负数或0不能求对数", "输入错误对话框");
else t = Math.Log(t);
}
else if (sender == exp)
t = Math.Exp(t);
textBox1.Text = Convert.ToString(t);
First = Convert.ToDecimal(t);
}
}
private void log_Click(object sender, EventArgs e)
{
abs_Click(sender, e);
}
private void exp_Click(object sender, EventArgs e)
{
abs_Click(sender, e);
}
private void button11_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
MessageBox.Show("小数点前面需要有数字", "错误提示对话框");
else textBox1.Text += ".";
}
}
}
- C#简单计算器
- 简单计算器C#源代码
- C#计算器简单设计
- C#简单计算器
- c#实现简单计算器
- c#简单计算器编写
- C#窗体-简单计算器
- C#实现计算器(简单计算器)
- C#实现简单计算器功能
- C#计算器简单代码示例
- C#编写简单窗体计算器
- C#实践—简单计算器设计
- C#实现简单的加减乘除计算器
- 第一个C#程序(简单计算器)
- C#基础之计算器的简单实现
- 面向对象的简单计算器C#语言版
- C#简单工厂设计模式实现计算器
- C#实现桌面应用程序简单的计算器
- js 处理Cookie 总结
- Eclipse plugins 插件开发学习 - 使用 IScanner 扫描 Java 源代码
- Asp.net2.0 中自定义过滤器对Response内容进行处理(生成静态页面)
- 各种数据库的JDBC驱动下载及连接字符串URL写法
- 三大portal与其他系统集成SSO探密
- C#简单计算器
- Eclipse plugins 插件开发学习 - IScanner 和 IBuffer 封装的高级应用类
- Accordion(可折叠)控件学习
- TAOCP V4.F2 格雷码(2)
- 什么是DirectX
- 理解程序
- 保留小数点后2位
- 什么是框架?
- 我的记事本