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

目录

一、    需求分析

二、    功能设计

三、    设计实现

四、    算法详解

五、    测试运行

六、    代码展示

七、    总结

八、    展示PSP

一、   需求分析

1、  程序可接收一个输入参数n,然后随机产生n道加减乘除(分别使用符号+-*÷来表示)练习题,每个数字在 0 和 100 之间,运算符在3个到5个之间。

2、  为了让小学生得到充分锻炼,每个练习题至少要包含2种运算符。同时,由于小学生没有分数与负数的概念,你所出的练习题在运算过程中不得出现负数与非整数,比如不能出 3÷5+2=2.6,2-5+10=7等算式。

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

4、  支持有括号的运算式,包括出题与求解正确答案。注意,算式中存在的括号必须大于2个,且不得超过运算符的个数。

5、  扩展程序功能支持真分数的出题与运算(只需要涵盖加减法即可

二、   功能设计

 

基本功能

1、实现三到五个字符的四则运算

2、数字大小在0至100之间

3、没有负数和非整数

拓展功能

1、支持有括号的运算

2、支持真分数的出题与运算

三、   设计实现

1、使用main类:接受用户给的参数

2、使用calculater类:生成练习题并计算答案

使用random产生随机数,使用calculate计算答案

四、   算法详解

 

1、产生随机数

 int number = 0;
        Random num = new Random();
        number = num.nextInt(max + 1);
        return number

2、使用逆波兰表达式

五、   测试运行

 

六、   代码展示

 

#include <iostream>#include<stdio.h>
#include<math.h>using namespace std; //http://noi.openjudge.cn/ch0202/1696/char a[100];
double f(){    cin>>a;  
  switch(a[0]){        case '+':return f()+f();   
     case '-':return f()-f();      
  case '*':return f()*f();   
     case '/':return f()/f();   
     default:return atof(a);  
  }}int main(int argc, char *argv[]) {    double ans=0.0;    ans=f();
printf("%f
",ans);    return 0;}
 

 

七、   总结

 

个人认为这次作业难度较大,个人水平不足,花了许多时间,但是也掌握了一定的知识,还是非常值得和满足的,以后也会继续努力学习,争取能敲更多的代码。

八、   展示PSP

 

PSP2.1

任务内容

计划共完成需要的时间(min)

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

Planning

计划

10

30

·        Estimate

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

10

30

Development

开发

204

406

·        Analysis

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

5

8

·        Design Spec

·         生成设计文档

5

6

·        Design Review

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

4

6

·        Coding Standard

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

5

9

·        Design

·         具体设计

15

22

·        Coding

·         具体编码

120

300

·        Code Review

·         代码复审

20

15

·        Test

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

30

40

Reporting

报告

11

18

·         Test Report

·         测试报告

5

7

·         Size Measurement

·         计算工作量

3

6

·         Postmortem & Process Improvement Plan

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

3

5

原文地址:https://www.cnblogs.com/isccA/p/8647398.html