个人项目-小学四则运算 “软件”之初版

本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2166

我的github远程仓库的地址:https://github.com/Jachenq/lc

一、题目要求:

具体要求:任何编程语言都可以,命令行程序接受一个数字输入,然后输出相应数目的四则运算题目和答案。例如输入数字是 30, 那就输出 30 道题目和答案。 运算式子必须至少有两个运算符,运算数字是在 100 之内的正整数,答案不能是负数。 如:23 - 3 * 4 = 11

二、个人软件过程耗时估计与统计表

PSP2.1 Personal Software Process Stages Time Senior Student Time
Development 开发 35 36
· Analysis 需求分析 (包括学习新技术) 6 8
· Design Spec 生成设计文档 0 0
· Design Review 设计复审 0 0
· Coding Standard 代码规范 6 9
· Design 具体设计 5 6
· Coding 具体编码 8 8
· Code Review 代码复审 10 10
· Test 测试(自我测试,修改代码,提交修改) 10 10
Reporting 报告 0 0

三、基本代码

while (number--)  //生成两个运算符运算式
{
m = rand() % 10;
n = rand() % 10;
k = rand() % 10;
op = rand() % 4;
op1 = rand() % 4;

switch (op)
{
case 0:
op = '+';
x = m + n;
switch (op1)
{
case 0:
op1='+';
answer=x+k;
break;
case 1:
op1='-';
answer=x-k;
break;
case 2:
op1='*';
answer=x*k;
break;
case 3:
op1='/';
answer=x/k;
break;}
break;
case 1:
op = '-';
x = m - n;
switch (op1)
{
case 0:
op1='+';
answer=x+k;
break;
case 1:
op1='-';
answer=x-k;
break;
case 2:
op1='*';
answer=x*k;
break;
case 3:
op1='/';
answer=x/k;
break;}
break;
case 2:
op = '*';
x = m*n;
switch (op1)
{
case 0:
op1='+';
answer=x+k;
break;
case 1:
op1='-';
answer=x-k;
break;
case 2:
op1='*';
answer=x*k;
break;
case 3:
op1='/';
answer=x/k;
break;}
break;
case 3:
++n;
op = '/';
x = m / n;
switch (op1)
{
case 0:
op1='+';
answer=x+k;
break;
case 1:
op1='-';
answer=x-k;
break;
case 2:
op1='*';
answer=x*k;
break;
case 3:
op1='/';
answer=x/k;
break;}
break;
default:
break;
}

四、遇到问题

1.如何生成两个运算符式子

2.做出可以进行真分数运算的题型

3.答案不能是负数

 

解决方法:

1.用生成两个0到3的随机数

2.基础不牢,未能解决问题

3.未能解决问题

五、博文

由于自身基础不牢,让我完成这个运算程序有点难度,只做出了简单的运算,功能没有完全实现。也通过这个实验,发现自己还有很多东西要去弥补学习。没有一个好的功底,不可能做出一个好软件,还是要抓紧时间充实自己。

 

posted @ 2018-10-10 10:19  刘铖  阅读(152)  评论(1编辑  收藏  举报