- 因为前两天家里停电了 所以一直拖到今天才把作业写完 还是少点拖延症 争取周一周二就给作业完成吧,以后。*
制作工具: 通过visual studio用c#实现
实现功能 基本的运算功能,包括加减乘除 还有求n次方。 其他功能包括清空、退格等。
展示:
乘法
这里也对/法进行了一点检验:
如果除数是0 会报错。
退格功能的实现 采用的是字符串截取的函数:
textBox1.Text = textBox1.Text.Substring(0, textBox1.Text.Length - 1);
而平方功能的实现 也是采用了现有的工具
result = Math.Pow(num1, num2);
使用这个工具让我想去去年上过的安卓课,并且看到C#里带着C有种奇怪的亲切感
代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Double num1, num2;
Double result;
char flag='e';
private void button3_Click(object sender, EventArgs e)
{
textBox1.Text += "3";
}
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text += "1";
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text += "2";
}
private void button13_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text.Substring(0, textBox1.Text.Length - 1);
}
private void button19_Click(object sender, EventArgs e)
{
num2 = Convert.ToDouble(textBox1.Text);
if (flag == '+')
{
result = num1 + num2;
textBox1.Text = Convert.ToString(result);
num1 = result;
num2 = 0;
flag = 'e';
}
else if (flag == '-')
{
result = num1 - num2;
textBox1.Text = Convert.ToString(result);
num1 = result;
num2 = 0;
flag = 'e';
}
else if (flag == '*')
{
result = num1 * num2;
textBox1.Text = Convert.ToString(result);
num1 = result;
num2 = 0;
flag = 'e';
}
else if (flag == '/')
{
if (num2 == 0)
textBox1.Text = "输入有误,请按c重新输入!";
else
{
result = num1 / num2;
textBox1.Text = Convert.ToString(result);
num1 = result;
num2 = 0;
flag = 'e';
}
}
else if (flag == 'e')
{
textBox1.Text = textBox1.Text;
}
else if (flag == '^')
{
result = Math.Pow(num1, num2);
textBox1.Text = Convert.ToString(result);
num1 = result;
num2 = 0;
flag = 'e';
}
}
private void button6_Click(object sender, EventArgs e)
{
textBox1.Text += "4";
}
private void button5_Click(object sender, EventArgs e)
{
textBox1.Text += "5";
}
private void button4_Click(object sender, EventArgs e)
{
textBox1.Text += "6";
}
private void button9_Click(object sender, EventArgs e)
{
textBox1.Text += "7";
}
private void button8_Click(object sender, EventArgs e)
{
textBox1.Text += "8";
}
private void button10_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text += "+";
flag = '+';
}
private void button11_Click(object sender, EventArgs e)
{
textBox1.Text = "";
num1 = num2 = 0;
}
private void button17_Click(object sender, EventArgs e)
{
textBox1.Text += ".";
}
private void button16_Click(object sender, EventArgs e)
{
textBox1.Text += "0";
}
private void button15_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text = "";
flag = '/';
}
private void button14_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text = "";
flag = '*';
}
private void button12_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text = "";
flag = '-';
}
private void button18_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text = "";
flag = '^';
}
private void button7_Click(object sender, EventArgs e)
{
textBox1.Text += "9";
}
}
}
目前来看 不足之处还是有很多的 显示功能感觉不是很完善 。。
包括开放 负数等 都还没有加入 之后可能会在这里继续补充完善