zoukankan      html  css  js  c++  java
  • 201571030320+小学四则运算练习软件项目报告

    源码在Github的仓库主页链接地址:https://github.com/mashifang/-.git

           1.需求分析:软件着眼于实际, 能够自动生成定量的四则运算题目供小学练习,用于辅助训练小学生熟练掌握整数的四则运算, 既提高学生学习效率也方便老师和学生家长对其学习情况的了解.

            2.功能设计: 

           软件基本功能要求如下:

    • 程序可接收一个输入参数n,然后随机产生n道加减乘除练习题,每个数字在 0 和 100 之间,运算符在3个到5个之间。
    • 为了让小学生得到充分锻炼,每个练习题至少要包含2种运算符。同时,由于小学生没有分数与负数的概念,你所出的练习题在运算过程中不得出现负数与非整数,比如不能出 3/5+2=2.6,2-5+10=7等算式。
    • 练习题生成好后,将你的学号与生成的n道练习题及其对应的正确答案输出到文件“result.txt中,不要输出额外信息,文件目录与程序目录一致。
    • 当程序接收的参数为4时,以下为输出文件示例。

           软件附加功能要求:
    • 支持有括号的运算式,包括出题与求解正确答案。注意,算式中存在的括号必须大于2个,且不得超过运算符的个数。
    • 扩展程序功能支持真分数的出题与运算,例如:1/6 + 1/8 + 2/3= 23/24。注意在实现本功能时,需支持运算时分数的自动化简,比如 1/2+1/6=2/3,而非4/6。

           3.设计实现:

                 设计了一个主类(Ma),设计了random函数,使用java.lang.Math的random方法生成随机数。

            4测试运行:

            5.核心代码:

     public static void main(String[] args)
         {
             String a,b;
             int k;
             Ma Ma=new Ma();
             for(int n=0;n<30;n++)
             {
                 a=Ma.f();
                 b=Ma.f();
                 int i=(int)(Math.random()*100);
                 int j=(int)(Math.random()*100);
                 switch((int)(Math.random()*4))
                 {
                 case 0:
                   k=(int)(Math.random()*3);
                     if(k==0)
                        System.out.println(i+"+"+j+"=");
                     else if(k==1)
                        System.out.println(a+"+"+j+"=");
                     else if(k==2)
                           System.out.println(b+"+"+a+"=");
                    break;

     

    6.展示PSP,这个环节重要的是让自己看到自己的估计和实际消耗时间,哪个环节耗时最多,哪个环节估计和实践相差巨大?为什么?

    1.  

      PSP2.1

      任务内容

      计划完成需要的时间(h)

      实际完成需要的时间(h)

      Planning

      计划

      3

      4

      ·       Estimate

      ·  估计这个任务需要多少时间,并规划大致工作步骤

      8

      6

      Development

      开发

      5

      6

      ··       Analysis

        需求分析 (包括学习新技术)

      6

      7

      ·       Design Spec

      ·  生成设计文档

      3

      4

      ·       Design Review

      ·  设计复审 (和同事审核设计文档)

      3

      4

      ·       Coding Standard

        代码规范 (为目前的开发制定合适的规范)

      5

      7

      ·       Design

        具体设计

      7

      8

      ·       Coding

        具体编码

      8

      10

      ·       Code Review

      ·  代码复审

      4

      5

      ·       Test

      ·  测试(自我测试,修改代码,提交修改)

      5

      6

      Reporting

      报告

      3

      4

      ··       Test Report

      ·  测试报告

      3

      2

      ·       Size Measurement

        计算工作量

      2

      1

      ·       Postmortem & Process Improvement Plan

      ·  事后总结 ,并提出过程改进计划

      3

      3

       2.从PSP展示结果分析来看,我在软件初期设计和代码设计阶段耗时较多,在做的过程中也感到比较吃力,具体原因可能要归结于长期未用Java语言编写设计程序,再加上初学之时,学的不够扎实,暴露了很多编程短板,也导致了这次作业中许多不可忽视的问题。

    7.总结与反思

         这次作业总的来说要反思的比总结的要多。老实说,由于Java编程功底很弱,这次作业拖了较长时间,很不应该。在作业完成过程中,我实现了随机生成四则运算的算式,以及带()的运算,但没有自动生成运算结果,也未能设计出参数N,总体而言,完成的极不理想,但相比之下,付出了一定的努力,我也正在努力补救,重新学习Java语言编程,下次作业我会完成的更好一点,出色一点,希望老师包容一点,等待一下,我会尽最大努力补救。

  • 相关阅读:
    hdu 2019 数列有序!
    hdu 2023 求平均成绩
    HDU 5805 NanoApe Loves Sequence (思维题) BestCoder Round #86 1002
    51nod 1264 线段相交
    Gym 100801A Alex Origami Squares (求正方形边长)
    HDU 5512 Pagodas (gcd)
    HDU 5510 Bazinga (字符串匹配)
    UVALive 7269 Snake Carpet (构造)
    UVALive 7270 Osu! Master (阅读理解题)
    UVALive 7267 Mysterious Antiques in Sackler Museum (判断长方形)
  • 原文地址:https://www.cnblogs.com/nwnu-MSF/p/8621952.html
Copyright © 2011-2022 走看看