• 第四次作业


    一、需求分析 

    用户还可以自行输入所要计时的时间,从而进行倒计时;

    单击停止按钮时也会弹出统计结果;

    用户还可以自行输入随机数的产生范围;

    运算符号的随机产生;

    用户还可以选择是否加括号!分为前两个数加和后两个数加。

    二、设计思路

    先创建From1再设计From2;

    编写代码先From1 中随机数、算法、定时器、结果的判断正确;

    然后From2正确题数、总题数、正确率的值。

    三、代码实现

    From1

    复制代码
    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();
            }
            //定义变量
            public static int t;
            public static int m;
            public static int count=-1;
            public static int right=0;
            public void suanfa() //算法
            {
                Random s = new Random();
                int d, h;
                d = s.Next(1,5);
                h = s.Next(1,5);
                if (d == 1) 
                {
                    label4.Text = "+";
                }
                if (d == 2)
                {
                    label4.Text = "-";
                }
                if (d == 3)
                {
                    label4.Text = "*";
                }
                if (d == 4)
                {
                    label4.Text = "/";
                }
                if (h == 1)
                {
                    label8.Text = "+";
                }
                if (h == 2)
                {
                    label8.Text = "-";
                }
                if (h == 3)
                {
                    label8.Text = "*";
                }
                if (h == 4)
                {
                    label8.Text = "/";
                }
            }
            public void shu() //输出两个随机数
            {
                Random  s = new Random();
                int n1, n2, n3;
                int a = int.Parse(textBox3.Text)+1;
                int b = int.Parse(textBox4.Text)+1;
                n1 = s.Next(a,b);
                n2 = s.Next(a,n1);
                n3 = s.Next(n2,b);
                label3.Text = n1.ToString();
                label6.Text = n2.ToString();
                label9.Text = n3.ToString();
                textBox2.Text = "";
                count++;
            }
            private void timer1_Tick(object sender, EventArgs e)//定时器
            {
                if (t <= 0)
                {
                    timer1.Enabled = false;
                    textBox2.Enabled = false;
                    MessageBox.Show("时间到!");
                    Form2 da = new Form2();
                    da.ShowDialog();
    
                }
                t = t - 1;
                textBox1.Text = t.ToString();
            }
            private void button1_Click(object sender, EventArgs e)
            {
                int c=int.Parse(textBox1.Text);
                t = c;
                timer1.Enabled = true;
                timer1.Interval = 1000;
                timer1.Start();
                shu();
                suanfa();
            }
            private void textBox2_KeyDown(object sender, KeyEventArgs e)
            {   
                if (e.KeyCode == Keys.Enter)
                {
                    if(textBox2.Text==m.ToString())
                    {
                        right++;
                    }
                    shu();
                    suanfa();
                }
                string k=label4.Text;
                string l=label8.Text;
                string n=k+l;
                
                if (comboBox1.Text == "前两个加")
                {
                    if (n == "+*")
                    {
                        m = (int.Parse(label3.Text) + int.Parse(label6.Text)) * int.Parse(label9.Text);
                    }
                    if (n == "+/")
                    {
                        m = (int.Parse(label3.Text) + int.Parse(label6.Text)) / int.Parse(label9.Text);
                    }
                    if (n == "-*")
                    {
                        m = (int.Parse(label3.Text) - int.Parse(label6.Text)) * int.Parse(label9.Text);
                    }
                    if (n == "-/")
                    {
                        m = (int.Parse(label3.Text) - int.Parse(label6.Text)) / int.Parse(label9.Text);
                    }
                    if (n == "++")
                    {
                        m = (int.Parse(label3.Text) + int.Parse(label6.Text)) + int.Parse(label9.Text);
                    }
                    if (n == "+-")
                    {
                        m = (int.Parse(label3.Text) + int.Parse(label6.Text)) - int.Parse(label9.Text);
                    }
                    if (n == "--")
                    {
                        m = (int.Parse(label3.Text) - int.Parse(label6.Text)) - int.Parse(label9.Text);
                    }
                    if (n == "-+")
                    {
                        m = (int.Parse(label3.Text) - int.Parse(label6.Text)) + int.Parse(label9.Text);
                    }
                    if (n == "**")
                    {
                        m = (int.Parse(label3.Text) * int.Parse(label6.Text)) * int.Parse(label9.Text);
                    }
                    if (n == "*/")
                    {
                        m = (int.Parse(label3.Text) * int.Parse(label6.Text)) / int.Parse(label9.Text);
                    }
                    if (n == "/*")
                    {
                        m = (int.Parse(label3.Text) / int.Parse(label6.Text)) * int.Parse(label9.Text);
                    }
                    if (n == "//")
                    {
                        m = (int.Parse(label3.Text) / int.Parse(label6.Text)) / int.Parse(label9.Text);
                    }
                    if (n == "*+")
                    {
                        m = (int.Parse(label3.Text) * int.Parse(label6.Text)) + int.Parse(label9.Text);
                    }
                    if (n == "*-")
                    {
                        m = (int.Parse(label3.Text) * int.Parse(label6.Text)) - int.Parse(label9.Text);
                    }
                    if (n == "/+")
                    {
                        m = (int.Parse(label3.Text) / int.Parse(label6.Text)) + int.Parse(label9.Text);
                    }
                    if (n == "/-")
                    {
                        m = (int.Parse(label3.Text) / int.Parse(label6.Text)) - int.Parse(label9.Text);
                    }
                }
                if (comboBox1.Text == "后两个加") 
                {
                    if (n == "++")
                    {
                        m = int.Parse(label3.Text) + (int.Parse(label6.Text) + int.Parse(label9.Text));
                    }
                    if (n == "+*")
                    {
                        m = int.Parse(label3.Text) + (int.Parse(label6.Text) * int.Parse(label9.Text));
                    }
                    if (n == "+/")
                    {
                        m = int.Parse(label3.Text) + (int.Parse(label6.Text) / int.Parse(label9.Text));
                    }
                    if (n == "+-")
                    {
                        m = int.Parse(label3.Text) + (int.Parse(label6.Text) - int.Parse(label9.Text));
                    }
                    if (n == "--")
                    {
                        m = int.Parse(label3.Text) - (int.Parse(label6.Text) - int.Parse(label9.Text));
                    }
                    if (n == "-*")
                    {
                        m = int.Parse(label3.Text) - (int.Parse(label6.Text) * int.Parse(label9.Text));
                    }
                    if (n == "-/")
                    {
                        m = int.Parse(label3.Text) - (int.Parse(label6.Text) / int.Parse(label9.Text));
                    }
                    if (n == "-+")
                    {
                        m = int.Parse(label3.Text) - (int.Parse(label6.Text) + int.Parse(label9.Text));
                    }
                    if (n == "**")
                    {
                        m = int.Parse(label3.Text) * (int.Parse(label6.Text) * int.Parse(label9.Text));
                    }
                    if (n == "*/")
                    {
                        m = int.Parse(label3.Text) * (int.Parse(label6.Text) / int.Parse(label9.Text));
                    }
                    if (n == "/*")
                    {
                        m = int.Parse(label3.Text) / (int.Parse(label6.Text) * int.Parse(label9.Text));
                    }
                    if (n == "*+")
                    {
                        m = int.Parse(label3.Text) * (int.Parse(label6.Text) + int.Parse(label9.Text));
                    }
                    if (n == "*-")
                    {
                        m = int.Parse(label3.Text) * (int.Parse(label6.Text) - int.Parse(label9.Text));
                    }
                    if (n == "/-")
                    {
                        m = int.Parse(label3.Text) / (int.Parse(label6.Text) - int.Parse(label9.Text));
                    } 
                    if (n == "/+")
                    {
                        m = int.Parse(label3.Text) / (int.Parse(label6.Text) + int.Parse(label9.Text));
                    }
                    if (n == "//")
                    {
                        m = int.Parse(label3.Text) / (int.Parse(label6.Text) / int.Parse(label9.Text));
                    }
                }
                if(comboBox1.Text=="不加")
                {
                    if (n == "++")
                    {
                        m = int.Parse(label3.Text) + int.Parse(label6.Text) + int.Parse(label9.Text);
                    }
                    if (n == "+*")
                    {
                        m = int.Parse(label3.Text) + int.Parse(label6.Text) * int.Parse(label9.Text);
                    }
                    if (n == "+/")
                    {
                        m = int.Parse(label3.Text) + int.Parse(label6.Text) / int.Parse(label9.Text);
                    }
                    if (n == "+-")
                    {
                        m = int.Parse(label3.Text) + int.Parse(label6.Text) - int.Parse(label9.Text);
                    }
                    if (n == "--")
                    {
                        m = int.Parse(label3.Text) - int.Parse(label6.Text) - int.Parse(label9.Text);
                    }
                    if (n == "-*")
                    {
                        m = int.Parse(label3.Text) - int.Parse(label6.Text) * int.Parse(label9.Text);
                    }
                    if (n == "-/")
                    {
                        m = int.Parse(label3.Text) - int.Parse(label6.Text) / int.Parse(label9.Text);
                    }
                    if (n == "-+")
                    {
                        m = int.Parse(label3.Text) - int.Parse(label6.Text) + int.Parse(label9.Text);
                    }
                    if (n == "**")
                    {
                        m = int.Parse(label3.Text) * int.Parse(label6.Text) * int.Parse(label9.Text);
                    }
                    if (n == "*/")
                    {
                        m = int.Parse(label3.Text) * int.Parse(label6.Text) / int.Parse(label9.Text);
                    }
                    if (n == "/*")
                    {
                        m = int.Parse(label3.Text) / int.Parse(label6.Text) * int.Parse(label9.Text);
                    }
                    if (n == "*+")
                    {
                        m = int.Parse(label3.Text) * int.Parse(label6.Text) + int.Parse(label9.Text);
                    }
                    if (n == "*-")
                    {
                        m = int.Parse(label3.Text) * int.Parse(label6.Text) - int.Parse(label9.Text);
                    }
                    if (n == "/-")
                    {
                        m = int.Parse(label3.Text) / int.Parse(label6.Text) - int.Parse(label9.Text);
                    }
                    if (n == "/+")
                    {
                        m = int.Parse(label3.Text) / int.Parse(label6.Text) + int.Parse(label9.Text);
                    }
                    if (n == "//")
                    {
                        m = int.Parse(label3.Text) / int.Parse(label6.Text) / int.Parse(label9.Text);
                    }
                }
            }
            private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
            {
                if( comboBox1.Text=="前两个加")
                {
                    label2.Text = "(";
                    label5.Text = "";
                    label7.Text = ")";
                    label10.Text = "";
                }
                if (comboBox1.Text == "后两个加")
                {
                    label2.Text = "";
                    label5.Text = "(";
                    label7.Text = "";
                    label10.Text = ")";
                }
                if (comboBox1.Text == "不加")
                {
                    label2.Text = "";
                    label5.Text = "";
                    label7.Text = "";
                    label10.Text = "";
                }
            }
            private void button2_Click(object sender, EventArgs e)
            {
                timer1.Enabled = false;
                textBox2.Enabled = false;
                Form2 da = new Form2();
                da.ShowDialog();
            }
        }
    }
    复制代码

     From2

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    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 Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();
            }
     
            private void Form2_Load(object sender, EventArgs e)
            {
                textBox1.Text = Form1.count.ToString();
                textBox2.Text = Form1.right.ToString();
                textBox3.Text = ((Form1.right / (double)(Form1.count)) * 100).ToString() + "%";
                 
            }
        }
    }

     四、测试

    五、

    PSP2.1 Personal Software Process Stages Time(h)
    Planning 计划 6
      • Estimate 估计这个任务需要多长时间 8
    Development 开发  
      • Analysis 需求分析 1
      • Design Spec 生成设计文档  
      • Coding Standard 代码规范 1
      • Design 具体设计 1.5
      • Coding 具体代码 3
      • Code Review 代码复审 0.5
      • Text 测试 1.5
    Reporting 报告  
      • Test Report 测试报告  
      • Size Measurement 计算工作量

    0.5

      • Postmortem 事后总结

    1

    六、总结

    感觉越来越难了,同时也越来越期待,勇士就是要不断挑战。

  • 相关阅读:
    Apicloud_(模板)登陆注册功能模板
    Apicloud_(接口验证)用户注册头部信息X-APICloud-AppKey生成
    Apicloud_(项目)网上书城02_后端数据获取
    Apicloud_(项目)网上书城01_前端搭建
    R_Studio(时序)Apriori算法寻找频繁项集的方法
    R_Studio(聚类)针对iris数据比较几种聚类方法优劣
    R_Studio(神经网络)BP神经网络算法预测销量的高低
    JavaWeb_(SSH论坛)_七、辅助模块
    JavaWeb_(SSH论坛)_六、点赞模块
    JavaWeb_(SSH论坛)_五、帖子模块
  • 原文地址:https://www.cnblogs.com/long1314/p/4920506.html
Copyright © 2020-2023  润新知