一、实验思路
大部分沿用四则运算2的思路和代码。添加了输入答案和判断正误的程序
二、实验代码
//数值范围 1
//避免重复
//是否有乘除法 1
//加减有无负数 1
//除法有无余数 1
//输出格式控制 1
#include<iostream.h>
#include<stdlib.h>
int main()
{
int num,fanwei,mul,fushu,yushu,num1;
int a[100],b[100],c[4],temp,i,j,k;
int d1=0,d2=0;//统计做对或者做错题数目
double sum;
cout<<"请输入题目数量:";
cin>>num;
cout<<"请输入题目中数值范围:";
cin>>fanwei;
cout<<"是否有乘除法(1表示有,其余表示没有):";
cin>>mul;
cout<<"是否允许减法结果为负数(1表示允许,其余表示不允许):";
cin>>fushu;
cout<<"除法结果有无余数(1表示允许,其余表示不允许):";
cin>>yushu;
cout<<"一行输出几道题目(不大于6道):";
cin>>k;
while(k<=0||k>6)
{
cout<<"注意输入要求:";
cin>>k;
}
for(i=0;i<num;i++) //进行 题目数量 次循环
{
a[i]=rand()%fanwei; //控制数值范围
b[i]=rand()%fanwei;
if(mul==1) //控制有无乘除法
c[4]=rand()%4; //根据c[4]的值随机出现四则运算
else
c[4]=rand()%2;
if(c[4]==0)
{
cout<<a[i]<<"+"<<b[i]<<"=";
}
if(c[4]==1)
{
if(fushu != 1)
{
temp=a[i];
a[i]=b[i];
b[i]=temp;
cout<<a[i]<<"+"<<b[i]<<"=";
cin>>sum;
if(sum==a[i]+b[i])
{
cout<<"回答正确"<<endl;
d1++;
}
else
{
cout<<"回答错误"<<endl;
d2++;
}
}
else
{
cout<<a[i]<<"-"<<b[i]<<"=";
cin>>sum;
if(sum==a[i]-b[i])
{
cout<<"回答正确"<<endl;
d1++;
}
else
{
cout<<"回答错误"<<endl;
d2++;
}
}
}
if(c[4]==2)
{
while((yushu != 1)&&(a[i]%b[i] != 0));
{
a[i]=rand()%fanwei;
}
cout<<a[i]<<"/"<<b[i]<<"=";
cin>>sum;
if(sum==a[i]/b[i])
{
cout<<"回答正确"<<endl;
d1++;
}
else
{
cout<<"回答错误"<<endl;
d2++;
}
}
if(c[4]==3)
{
cout<<a[i]<<"*"<<b[i]<<"=";
cin>>sum;
if(sum==a[i]*b[i])
{
cout<<"回答正确"<<endl;
d1++;
}
else
{
cout<<"回答错误"<<endl;
d2++;
}
}
if((i+1)%k==0)
cout<<endl;
for(j=0;j<i;j++) //判断题目是否重复,若重复则a[i]++
if(a[j]==a[i]&&b[j]==b[i]&&c[j]==c[i])
a[i]++;
}
cout<<"做对题数目:"<<d1<<endl;
cout<<"做错题数目:"<<d2<<endl;
return 0;
}
三、实验结果截图
四、错误分析
由于没有余数,所以就出现第二道直接舍弃余数的答案;
解决了上次实验如果要求一样出的题目一样的问题;
对本次实验缺少思路,把题目想的太难,自己根本实现不了,然后在听了别人的建议后,在原先的基础上改了些许就实现了老师的要求,在以后的实验中要开拓思路,不能束缚自己的思想。
五、本周时间安排
五
周活动总结表
姓名:岳竞一 日期:2015.3.22
日期 任务 |
听课 |
编写程序 |
阅读课本 |
准备考试 |
|
|
日总计 |
周一 |
200 |
|
|
|
|
|
200 |
周二 |
300 |
|
|
|
|
|
300 |
周三 |
200 |
30 |
|
|
|
|
230 |
周四 |
200 |
|
|
|
|
|
200 |
周五 |
200 |
50 |
|
|
|
|
250 |
周六 |
|
50 |
|
|
|
|
50 |
总计 |
1100 |
130 |
1230 |
时间记录表:
学生 岳竞一 日期 2015.3.22
教师 王建民 课程 PSP
日期 |
开始时间 |
结束时间 |
中断时间 |
净时间 |
活动 |
备注 |
3.18 |
14:50 |
15:20 |
|
30 |
编程 |
|
3.20 |
15:10 |
16:00 |
|
50 |
编程 |
|
3.21 |
20:00 |
20:50 |
50 |
编程 |
|
缺陷记录表
学生 岳竞一
日期 2015.3.22
教员 王建民
缺陷记录表 |
解决过程 |
解决办法 |
思路 |
百度类似题型,问同学 |
就原先基础,增加部分变量 |
除法中余数直接舍去 |
没完成 |