• 第一阶段结对作业验收小学生四则运算


      这次与王悦生合作编写了小学生四则运算过程,包括整数四则运算部分与真分数四则运算部分,原本是用vc来编程实现的,但通过讨论最后决定了用C++来实现,而最基本的一点就是美观大方,编写也变得轻松了一点,最后将这个软件成功实现了,不过有一点没有做的是关于题目数量的规定,做成了无限出题.

            使用时需要注意的是整数答案直接输入就好,而分数答案要输入成a/b的形式,比如:1/2=1/2, 6/3=2,6/10=3/5

    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();
            }
            private int ti_shu, result, f1, f2;
    
            private void chu_ti()
            {
                Random suiji = new Random();
                int a = suiji.Next(0, 10);
                int b = suiji.Next(1, 10);
                int c = suiji.Next(0, 10);
                int d = suiji.Next(1, 10);
                int p = 4;
                //int p = suiji.Next(0, 7);
                if (p == 0)//出加法题
                {
                    label1.Text = a.ToString() + "+" + b.ToString() + "=";
                    result = a + b;
                    f1 = result;
                    f2 = 1;
                }
                if (p == 1) //出减法题
                {
                    label1.Text = a.ToString() + "-" + b.ToString() + "+" + c.ToString() + "-" + d.ToString();
                    result = a - b;
                    f1 = result;
                    f2 = 1;
                }
                ti_shu = ti_shu + 1;
                textBox1.Text = "";
                if (p == 2) //出乘法题
                {
                    label1.Text = a.ToString() + "*" + b.ToString() + "=";
                    result = a * b;
                    f1 = result;
                    f2 = 1;
                }
                if (p == 3) //出除法题
                {
                    label1.Text = a.ToString() + "/" + b.ToString() + "=";
                    f1 = a;
                    f2 = b;
                    int g;
                    g = Gcd(f1, f2);
                    if (g>1)
                    {
                        f1 = f1 / g;
                        f2 = f2 / g;
                    }
                    if (f2==1)
                    {
                        result = f1;
                    }
    
    
                }
                if (p == 4) //出分数加法题
                {
                    if (a > b)
                    {
                        int t = a; a = b; b = t;
                    }
                    if (c > d)
                    {
                        int t = c; c = d; d = t;
                    }
                    label1.Text = a.ToString() + "/" + b.ToString() + "+" + c.ToString() + "/" + d.ToString() + "=";
                    f1 = a * d + b * c;
                    f2 = b * d;
                    int g;
                    g = Gcd(f1, f2);
                    f1 = f1 / g;
                    f2 = f2 / g;
                    result = f1 / f2;
                    if (f1 == 0)
                    {
                        result = 0;
                    }
                    if (f2 == 1)
                    {
                        result = f1;
                    }
                }
                if (p == 5) //出分数减法题
                {
                    if (a > b)
                    {
                        int t = a; a = b; b = t;
                    }
                    if (c > d)
                    {
                        int t = c; c = d; d = t;
                    }
                    label1.Text = a.ToString() + "/" + b.ToString() + "-" + c.ToString() + "/" + d.ToString() + "=";
                    f1 = a * d - b * c;
                    f2 = b * d;
                    int g;
                    g=Gcd(f1, f2);
                    f1 = f1 / g;
                    f2 = f2 / g;
                    result = f1 / f2;
                    if (f1 == 0)
                    {
                        result = 0;
                    }
                    if (f2 == 1)
                    {
                        result = f1;
                    }
    
                }
                if (p == 6) //出分数乘法题
                {
                    if (a > b)
                    {
                        int t = a; a = b; b = t;
                    }
                    if (c > d)
                    {
                        int t = c; c = d; d = t;
                    }
                    label1.Text = a.ToString() + "/" + b.ToString() + "*" + c.ToString() + "/" + d.ToString() + "=";
                    f1 = a * c;
                    f2 = b * d;
                    int g;
                    g = Gcd(f1, f2);
                    f1 = f1 / g;
                    f2 = f2 / g;
                    result = f1 / f2;
                    if (f1 == 0)
                    {
                        result = 0;
                    }
                    if (f2 == 1)
                    {
                        result = f1;
                    }
                }
                if (p == 7) //出分数除法题
                {
                    if (c == 0)
                    {
                        c++;
                    }
                    if (a > b)
                    {
                        int t = a; a = b; b = t;
                    }
                    if (c > d)
                    {
                        int t = c; c = d; d = t;
                    }
                    label1.Text = a.ToString() + "/" + b.ToString() + " " + "/" + " " + c.ToString() + "/" + d.ToString() + "=";
                    f1 = a * d;
                    f2 = b * c;
                    int g;
                    g = Gcd(f1, f2);
                    f1 = f1 / g;
                    f2 = f2 / g;
                    if (f1 == 0)
                    {
                        result = 0;
                    }
                    if (f2 == 1)
                    {
                        result = f1;
                    }
                    //result = f1 / f2;
                }
            }
    
            private void label1_Click(object sender, EventArgs e)
            {
    
            }
    
    
            int Gcd(int a, int b)//求最大公约数,以便对结果进行约分
            {
                while (a != 0 && b != 0)
                {
                    if (a > b) a = a % b;
                    else if (a < b) b = b % a;
                }
                return (a > b ? a : b);
            }
    
    
            private void Form1_Load(object sender, EventArgs e)
            {
                ti_shu = 0;
                chu_ti();
            }
    
            private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
            {
                string Item;
                /*if (pp <= 3 || f1 == 0 || f2 == 1)
                {
                    if (e.KeyChar == 13)//表示按下的回车键
                    {
                        if (Convert.ToInt16(textBox1.Text) == result)
                        {
                            Item = label1.Text + textBox1.Text + "√";
    
                        }
                        else
                            Item = label1.Text + textBox1.Text + "×";             
                        this.listBox1.Items.Add(Item);
                        this.textBox1.Text = "";
                        chu_ti();
                        }
                        }
                         else
                         {*/
                             if (e.KeyChar == 13)//表示按下的回车键
                    {
                        if (f2==1||f1==0)
                        {
                            if (Convert.ToInt16(textBox1.Text) == result)
                            {
                                Item = label1.Text + textBox1.Text + "√";
                                this.listBox1.Items.Add(Item);
                            }
                            else
                            {
                                Item = label1.Text + textBox1.Text + "×";
                                this.listBox1.Items.Add(Item);
                                this.listBox2.Items.Add(Item);
                            }
                               
                        }
                        else
                        {
                            if (Convert.ToString(textBox1.Text) == Convert.ToString(f1) + "/" + Convert.ToString(f2))
                            {
                                Item = label1.Text + textBox1.Text + "√";
                                this.listBox1.Items.Add(Item);
                            }
                            else
                            {
                                Item = label1.Text + textBox1.Text + "×";
                                this.listBox1.Items.Add(Item);
                                this.listBox2.Items.Add(Item);
                            }
                               
                        }
                        
                                 
                                 this.textBox1.Text = "";
                                 chu_ti();
                             }
                             
                    }
    
            private void button1_Click(object sender, EventArgs e)
            {
                Application.Exit();
            }
                }
    
            }
    

      

    软件使用说明书

      

    小学四则运算程序使用说明书

    1.1编写目的

      实现小学生四则运算在线答题,能够使用户锻炼自己的数学能力
    1.2项目背景

       石家庄铁道大学16级测绘系 罗玉铭,王悦生编

    1. 软件概述
      2.1目标:实现小学生在线答题
      2.2功能:小学生在线答题且提出错题
      2.3 性能
          .a时间特性:反应速度快
          .b灵活性:较为灵活

            .c外观:简单清晰

    3. 运行环境
    3.1硬件

    要求低

    VS

    4. 使用说明
    4.1安装和初始化

      需安装VS


    4.2输入

      请输入正确答案(分数答案格式为a/b)
    4.2.1数据背景

    4.2.2数据格式

      无

    4.2.3输入举例

    答案为整数输入x,答案为分数输入a/b,1/2=1/2, 6/3=2,6/10=3/5
    4.3输出

    √或×
    4.4出错和恢复

    如出错请重新运行程序


    5. 运行说明
    5.1运行步骤

      无运行步骤,请直接输入答案

    5.1.1运行控制


    5.1.2操作信息
        a. 运行目的;小学生在线答题

        b. 操作要求;输入数据即可

        c. 启动方法;无需操做,打开程序后自动运行

        d. 预计运行时间;极短

        e. 其他事项。
    5.2.3输入/输出文件

    无输入输出文件
    5.2.4启动或恢复过程


    6. 非常规过程
      

    7. 操作命令一览表
      

    8. 程序文件(或命令文件)和数据文件一览表
     计算,输入,退出,储存

            这次作业和王悦生的合作让我换了一个想法去编程,确实与人合作和自己编程的一些东西是不一样的,要好好学习,不断提升自己的水平才行

  • 相关阅读:
    手机号码为字母或者符号(回退)
    总结:Python的赋值、深拷贝、浅拷贝有什么区别
    Python安装Mysqlclient的坑
    MySQL数据库安装和Navicat for MySQL配合使用
    chrome打开开发者工具之后看不到请求头信息——F12的使用(一)
    常见dos命令汇总
    如何编写高质量的简历-学习笔记
    windows环境搭建禅道项目管理工具
    Web接口测试工具--Jmeter
    不要把测试工具当饭吃
  • 原文地址:https://www.cnblogs.com/logo132/p/9915590.html
Copyright © 2020-2023  润新知