码迷,mamicode.com
首页 > 其他好文 > 详细

四则运算

时间:2015-10-01 20:30:37      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:

四则运算

 

一、需求分析

(1)当单击“+”或“-”或“x”或“÷”按钮时,程序会随机产生两个1-10的随机整数,由用户输出结果。

(2)当单击“停止”按钮时,程序会给出“正确”、“错误”等信息。

二、设计思路

(1)创建Window窗体应用程序,设计窗体,根据需要编写代码。

(2)因为要统计出答对、答错的题目数量,首先定义两个变量“right”和“fault”

(3)然后用Random()方法来产生随机数。

(4)单击textBox3的KeyDown事件实现加减乘除的运算,并且按下回车键,确认输入结果;为了减少代码的数量,用switch语句来判断运算符。

(5)单击“停止”按钮,弹出Form2窗体,显示测试结果。

三、代码实现

Form1代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace szys
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public static int Count = 0;
        public static int right = 0;
        public static int fault = 0;
        private void RandomNum()
        {
            Random ran = new Random();
            int n1, n2;
            n1 = ran.Next(1, 11);
            n2 = ran.Next(1, 11);
            textBox1.Text = n1.ToString();
            textBox2.Text = n2.ToString();
            textBox3.Text = "";
            Count++;
        }

        private void textBox3_KeyDown(object sender, KeyEventArgs e)
        {
            int sum;
            string s =label9.Text;

            switch (s)
            {
                case "+":
                    sum = int.Parse(textBox1.Text) + int.Parse(textBox2.Text);
                    break;
                case "-":
                    sum = int.Parse(textBox1.Text) - int.Parse(textBox2.Text);
                    break;
                case "x":
                    sum = int.Parse(textBox1.Text) * int.Parse(textBox2.Text);
                    break;
                default:
                    sum = int.Parse(textBox1.Text) / int.Parse(textBox2.Text);
                    break;
            }
            if (e.KeyCode == Keys.Enter)
            {
                if (textBox3.Text == sum.ToString())

                    right++;

                RandomNum();
            }
           
        

        }
        private void button5_Click(object sender, EventArgs e)
        {

            Form2 frm2 = new Form2();
            frm2.ShowDialog();
        }


        private void button1_Click(object sender, EventArgs e)
        {

            label9.Text = "+";
             RandomNum();
            

            
        }

        private void button2_Click(object sender, EventArgs e)
        {
            label9.Text = "-";
            RandomNum();
        }
            

        private void button3_Click(object sender, EventArgs e)
        {
            label9.Text = "x";
            RandomNum();
           
        }
        private void button4_Click(object sender, EventArgs e)
        {
            label9.Text = "÷";
            RandomNum();
            
        }
       
       }
    }

 Form2代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace szys
{
    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();
            textBox4.Text = ((Form1.Count - (double)(Form1.right))).ToString();
            textBox3.Text = ((Form1.right / (double)(Form1.Count)) * 100).ToString() + "%";
        }

      
}      
        
    }

四、测试

运行程序,测试各个功能

技术分享技术分享

技术分享

五、PSP耗时分析

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

0.5

   Postmortem 事后总结

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

六、总结

   看似不简单,其实也不难。老师布置的这个作业很有挑战性,刚看到题目要求感觉是不可完成的任务,但还是想要尝试一下。

   我们可以用Java和C#来实现,我选择了C#,对于是用控制台应用程序还是用Windows窗体应用程序,我犹豫好长时间,我个人感觉用Windows窗体应用程序比较容易理解。在窗体设计方面还是挺得心应手,但代码编写费了不少脑筋;特别是需要转换运算符的时候,如果只是实现一个加法测试程序,问题就简单多了。

   在你决心做之前一定要对自己有信心,然后要有耐心,遇到困难想办法克服,一步一步地做。不管做的怎样,我坚持把这个做完了。

 

   

 

   

   

 

四则运算

标签:

原文地址:http://www.cnblogs.com/twinkle-0908/p/4851468.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!