• 20194731 自动生成四则运算题第一版报告


    一、需求分析

      现在的小学生算数能力需要经常锻炼,但是出题成了家长们的一大难题,因为人工出题需要自己计算,但是利用程序出题可以很快速,准确的出题。

    二、功能设计

      1、基本功能

        (1)自动生成10道100以内的2个操作数的四则运算算式(+ - *  /),要求运算结果也在100以内

        (2)剔除重复算式。  2 + 3 =    和  2 + 3 =     是重复算式      2 + 3 =   和   3 + 2 =  不属于重复算式

        (3)题目数量可定制

        (4)相关参数可控制

          是否包含乘法和除法

          操作数数值范围可控(如操作数 在100以内   还是1000以内)

          操作数是否含负数

        (5)生成的运算题存储到外部文件result.txt中

       2、拓展功能

        (1)可选择是否生成答案

    三、设计实现

      因为我用的是c语言编写的程序,没有用到类,我也没有写函数。

    四、测试运行

     五、代码片段

      1、判断算式是否重复,若重复便跳过次算式

    1 for(j=0;j<i;j++)
    2  if(b1[i][0]==b1[j][0]&&b1[i][1]==b1[j][1]&&b1[i][2]==b1[j][2]){
    3    flag=1;
    4       break;
    5   }
    6 if(flag==1||(e==2&&c==0)){
    7       i--;
    8       continue;
    9 }

       2、是否生成带答案的算式

    1 if(t4==1)
    2   fprintf(fp,"%5.0f%5.c%5.0f =%5.0f
    ", a,b[e],c,sum);
    3 else
    4   fprintf(fp,"%5.0f%5.c%5.0f =
    ", a,b[e],c);

    六、总结

      改进思路:可把每段关键算法写成单独的函数,这样每次进行修改时可直接修改函数部分不需要到程序中进行修改,把可变的参数全部用变量代替,这样可实现更多功能,使程序更加人性化。

    七、PSP

    PSP2.1

    任务内容

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

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

    Planning

    计划

    60

    120

    ·       Estimate

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

    60

    120

    Development

    开发

    30

    60

    ··       Analysis

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

    3

    5

    ·       Design Spec

    ·  生成设计文档

    2

    5

    ·       Design Review

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

    2

    5

    ·       Coding Standard

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

    1

    1

    ·       Design

      具体设计

    5

    5

    ·       Coding

      具体编码

    20

    15

    ·       Code Review

    ·  代码复审

    5

    20

    ·       Test

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

    1

    4

    Reporting

    报告

    30

    60

    ··       Test Report

    ·  测试报告

    10

    20

    ·       Size Measurement

      计算工作量

    10

    20

    ·       Postmortem & Process Improvement Plan

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

    10

    20


     

  • 相关阅读:
    EF中,保存实体报错:Validation failed for one or more entities. 如何知道具体错误在哪?
    个人常用的移动端浅灰底index.html
    分享一段js,判断是否在iPhone中的Safari浏览器打开的页面
    2017年3月25日,祝自己23岁生日快乐!
    JavaScript监控页面input输入整数且只能输入2位小数
    iPhone IOS10安装APP没提示连接网络(无法联网)的解决办法
    iPhone屏蔽IOS更新、iPhone系统更新的提示(免越狱,有效期更新至2021年)
    iPhone Anywehre虚拟定位提示“后台服务未启动,请重新安装应用后使用”的解决方法
    C# OracleDBhelper
    戴尔灵越15-5000/3558等系列修改BIOS设置U盘启动
  • 原文地址:https://www.cnblogs.com/wy1025816034/p/11479429.html
Copyright © 2020-2023  润新知