第二次软件开发作业

发布时间 2023-12-03 23:11:06作者: 任璀梅

软件开发第二次作业

一、实验目的

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:算术平方根