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

    仓库地址:https://git.coding.net/zhangq896/week2-2.git

    一、需求分析

    (1)  随机产生n道加减乘除练习题,每个数字在 0 和 100 之间,运算符在3个到5个之间

    (2)输入:随机产生n道练习题

    (2)包含至少两种运算符(判断优先级)(递归算法)

    (3)输出:学号与生成的n道练习题及其对应的正确答案输出到文件“result.txt”中

             注意:运算过程不许出现负数、分数

    二、功能设计

          输入:整数n(n道算术题)

          输出:自己的学号以及生成的n道练习题以及对应的正确答案——存于“result.txt”中

          实现:(1)至少两种运算符

                    (2)数字0至100,运算符3至五个

    三、设计实现

     (1)获取表达式:public  static String fun();

     (2)   获取因子:public static int getYin(int a);(除法中运用)

     (3) 四则混合运算:public static float opt(Stirng s);(递归算法)

     (4)主函数

    四、算法详情

    (1)获取表达式:首先任意生成0至100的整数int a=(int)(Math.random()*101); 存入表达式字符str中,然后将运算符进行抽选char f=fu[(int) (Math.random()*4)];

            形成简单的表达式 str.

     (2)四则混合运算:使用了逆波兰表达式来判断运算符的优先级

       (3)主函数中生成n道算术。先获取所有的运算符,放进set中重复。set里的大小就是不同运算符的个数。

    五、总结

        在这个项目中,主要的难点有判断优先级运用了逆波兰表达式,还有其中判断至少有两个运算符的表达式使用到的set。这两点对于我来说是比较新的知识。但是有点缺憾的是我并没有写出附加题的部分。我只能在课下的时候借鉴一下其它同学的代码。总的来说,我对于自己这一次的作业很是满意,虽然没有做到最好,附加题也没有做出,但是这一次我做出了巨大的努力,希望以后还可以自学一些有用的知识,这比老师教授的更令自己满足。

    六、部分代码展示

        逆波兰表达式

    七、PSP

    PSP

    任务内容

    计划时间(min)

    完成时间(min)

    Planning

    计划

    30

    20

     Estimate

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

    40

    36

    Development

    开发

    700

    2200

    Analysis

    需求分析

    15

    25

    Design Spec

    生成文档

    0

    0

     Design Review

    设计复审

    0

    0

    Coding Standard

    代码规范

    10

    7

    Design

    具体设计

    90

    180

    Coding

    具体编码

    300

    900

    Code Review

    代码复审

    50

    700

    Test

    测试

    5

    80

    Reporting

    报告

    180

    450

    Test Report

    测试报告

    200

    390

    Size Measurement

    计算工作量

    5

    10

    Postmortem & Process Improvement Plan

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

    20

    15

    八、测试

     

    
    
    
    
    

          

  • 相关阅读:
    改造vant日期选择
    css3元素垂直居中
    npm综合
    (转)网页加水印方法
    Mac下IDEA自带MAVEN插件的全局环境配置
    隐藏注册控件窗口
    High performance optimization and acceleration for randomWalk, deepwalk, node2vec (Python)
    How to add conda env into jupyter notebook installed by pip
    The Power of WordNet and How to Use It in Python
    背单词app测评,2018年
  • 原文地址:https://www.cnblogs.com/zhangq896/p/8645843.html
Copyright © 2011-2022 走看看