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

mac2022-06-30  28

一、需求分析

      为了方便小学生算数练习,为了方便家长们出题,利用程序出题可以很快速,很准确。

二、功能设计

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语言及函数库、for循环、if语句。

四、测试运行

五、代码片段

(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\n", a,b[e],c,sum); 3 else 4   fprintf(fp,"%5.0f%5.c%5.0f =\n", a,b[e],c);

(3)运算结果在100以内

1 if(result>100||result<-100) 2 { 3 i--; 4 continue; 5 }

六、总结

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

七、PSP

psp2.1任务内容计划共完成需要的时间(min)实际完成需要的时间(min)Planning计划6060Estimate估计这个任务需要多少时间,并规划大致工作步骤6060Development开发120120Analysis需求分析 (包括学习新技术)3030Design Spec生成设计文档3030Design Review设计复审 (和同事审核设计文档)3030Coding Standard代码规范 (为目前的开发制定合适的规范)1010Design具体设计2020Coding具体编码120120Code Review代码复审1010Test测试(自我测试,修改代码,提交修改)1010Reporting报告3030Test Report测试报告1010Size Measurement计算工作量2020Postmortem & Process Improvement Plan事后总结 ,并提出过程改进计划1010

转载于:https://www.cnblogs.com/hfffq/p/11529737.html

最新回复(0)