软件开发第二次作业
一、实验目的
1.掌握软件开发的基本流程
2.掌握常用的软件开发方式和工具。
二、实验内容
设计一个包含登录界面的计算器软件,该软件可以实现第一次作业中的全部功能,同时可以保存用户的历史计算记录。
三、实验环境
1.操作系统:Windows11
2.开发工具:Visual Studio
四、基本功能描述
从登录页面可跳转到计算器页面,简易计算器包括基本的四则运算(加、减、乘、除)及开方运算,还可以查看历史计算记录。
—— —— —— —— —— —— —— —— —— —— ——— —— —— —— —— ——分割线
五、流程图
1.登录界面流程图
2.计算器界面流程图
六:登录界面
代码:
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 Login
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void button2_Click(object sender, EventArgs e)
{
string userName = textBox1.Text;
string passWord = textBox2.Text;
if (userName == "小白" && passWord == "1005")
{
MessageBox.Show("登录成功!");
//登录成功后跳转计算器
RCM rcm = new RCM();
rcm.Show();
}
else
{
MessageBox.Show("用户名或密码错误!");
}
}
}
}
跳转计算器
七:计算器界面
代码:
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 Calculator
{
public partial class RCM : Form
{
public RCM()
{
InitializeComponent();
}
Double Lnum, Rnum, Res;
int i = 0;
string Flag;
//数字1 2 3 4 5 6 7 8 9 00 0 小数点“.”按钮的定义
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text =textBox1.Text + button1.Text;
}
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button2.Text;
}
private void button3_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button3.Text;
}
private void button4_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button4.Text;
}
private void button5_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button5.Text;
}
private void button6_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button6.Text;
}
private void button7_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button7.Text;
}
private void button8_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button8.Text;
}
private void button9_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button9.Text;
}
private void button10_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button10.Text; //"00"
}
private void button18_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button18.Text; //"0"
}
private void button11_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text + button11.Text;
}
//加减乘除开方符号运算
private void button14_Click(object sender, EventArgs e)
{
Lnum = Convert.ToDouble(textBox1.Text);
Flag = "+"; //"+"
textBox1.Text = null;
i = 0;
}
private void button15_Click(object sender, EventArgs e) //"="
{
Rnum = Convert.ToDouble(textBox1.Text);
if (Flag == "+") Res = Lnum + Rnum;
else if (Flag == "-") Res = Lnum - Rnum;
else if (Flag == "*") Res = Lnum * Rnum;
else if (Flag == "/") Res = Lnum / Rnum;
else
{
Lnum = Convert.ToDouble(textBox1.Text);
}
textBox1.Text = Res.ToString();
textBox1.Text = String.Format("{0} {1} {2} = {3}", Lnum, Flag, Rnum, Res) + "\r\n\r\n\n";
textBox2.Text=textBox2 .Text +string .Format("{0} {1} {2} = {3}", Lnum, Flag , Rnum , Res ) + "\r\n\r\n";
}
private void button13_Click(object sender, EventArgs e)
{
Lnum = Convert.ToDouble(textBox1.Text);
Flag = "-";
textBox1.Text = "";
i = 0; //"-"
}
private void button12_Click(object sender, EventArgs e) //"*"
{
Lnum = Convert.ToDouble(textBox1.Text);
Flag = "*";
textBox1.Text = "";
i=0;
}
private void button16_Click(object sender, EventArgs e)
{
Lnum = Convert.ToDouble(textBox1.Text);
Flag = "/";
textBox1.Text ="";
i=0;
}
private void button17_Click(object sender, EventArgs e)
{
double r = double.Parse(textBox1.Text);
if(r<0||r==0)
{
MessageBox.Show("被开方数必须大于0");
textBox1.Text = "";
return;
}
else
{
textBox1.Text = Convert.ToString(Math.Sqrt(r));
textBox2.Text += Convert.ToString(Math.Sqrt(r));
}
textBox1.Text = "";
i = 0;
}
private void button19_Click(object sender, EventArgs e)
{
Lnum = 0;
Rnum = 0;
textBox1.Text = "";
}
}
}
八:测试举例
1:加法
2:减法
3:乘法
4:除法
5:算术平方根