201571030320+小学四则运算练习软件项目报告

Posted M-小麦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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语言编程,下次作业我会完成的更好一点,出色一点,希望老师包容一点,等待一下,我会尽最大努力补救。

以上是关于201571030320+小学四则运算练习软件项目报告的主要内容,如果未能解决你的问题,请参考以下文章

201571030320/201571030335《小学四则运算练习软件》结对项目报告

201571030133/201571030102《小学四则运算练习软件软件需求说明》结对项目报告

201571030122/201571030129《小学四则运算练习软件软件需求说明》结对项目报告

201571030120/201571030119《小学四则运算练习软件软件需求说明》结对项目报告

201571030318/201574010343《小学四则运算练习软件软件需求说明》结对项目报告

2015710301020/201571030119《小学四则运算练习软件软件需求说明》结对项目报告