| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 608 人关注过本帖
标题:[求助]关于加法测验算分的问题
只看楼主 加入收藏
bleach1983
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2006-5-22
收藏
 问题点数:0 回复次数:4 
[求助]关于加法测验算分的问题

这是写的加法小程序。当算错时,继续算,直到算正确为止才能做下一题。
但我想统计一下命中率,我试过自己改 ,有误差。

#include<iostream.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int x,//加数
y,//被加数
z,//正确结果
n,//测试者输入的结果
count1=0,//对正确结果的统计
count=0;//对所有结果的统计
float A;//得分点

srand(time(NULL));
x=rand()%100;
y=rand()%100;
z=x+y;

do
{
cout<<x<<" + "<<y<<" = ?"<<endl;
cout<<"Please intput answer: ";
cin>>n;
count++;//在这里统计测试者输入的次数,但我想应该统计理论结果的次数,即题目的数量,找不到边~~

if(n==z)
{
x=rand()%100;
y=rand()%100;
z=x+y;
//我在这里这么做是为了在算正确后可以随机产生新的题目
cout<<"Great,you got it!"<<endl;
count1++;//统计正确结果的次数
}

else
if((n!=z)&&((n=cin.get())!=EOF))
cout<<"Oh,you must check it!"<<endl;
}while((n=cin.get())!=EOF);
A=100*count1/count;
cout<<"You got "<<A<<" points."<<endl;
}
搜索更多相关主题的帖子: 加法 
2006-06-01 11:31
gototheworld
Rank: 1
等 级:新手上路
帖 子:218
专家分:0
注 册:2006-3-24
收藏
得分:0 

#include<iostream.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int x,//加数
y,//被加数
z,//正确结果
n,//测试者输入的结果
count1=0,//对正确结果的统计
count=0;//对所有结果的统计
float A;//得分点

srand(time(NULL));
x=rand()%100;
y=rand()%100;
z=x+y;

do
{
cout<<x<<" + "<<y<<" = ?"<<endl;
cout<<"Please intput answer: ";
cin>>n;
count++;//在这里统计测试者输入的次数,但我想应该统计理论结果的次数,即题目的数量,找不到边~~

if(n==z)
{
x=rand()%100;
y=rand()%100;
z=x+y; //我在这里这么做是为了在算正确后可以随机产生新的题目
cout<<"Great,you got it!"<<endl;
count1++;//统计正确结果的次数
}

else
cout<<"Oh,you must check it!"<<endl;
}while((n=cin.get())!=EOF);
A=(float)100*count1/count;//需要类型转换一下
cout<<"You got "<<A<<" points."<<endl;
return 0;}


路漫漫其修远兮 吾将上下而求索
2006-06-01 12:37
bleach1983
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2006-5-22
收藏
得分:0 
2楼的,我试过了,参数类型的问题还好,只是COUNT在这里计数我觉得自己做得不妥
~~能有人帮我看看吗

动感超人~~动感光波~~HOHO~~小白,你也是男孩子,所以你也要努力~~
2006-06-01 13:20
gototheworld
Rank: 1
等 级:新手上路
帖 子:218
专家分:0
注 册:2006-3-24
收藏
得分:0 

那你告诉我如下的测试:
33 + 58 = ?
Please intput answer: 91
Great,you got it!
71 + 88 = ?
Please intput answer: 159
Great,you got it!
17 + 60 = ?
Please intput answer: 77
Great,you got it!
73 + 40 = ?
Please intput answer: ^Z
Oh,you must check it!
You got 75 points.
请按任意键继续. . .
你认为结果应该是什么?


路漫漫其修远兮 吾将上下而求索
2006-06-01 14:27
bleach1983
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2006-5-22
收藏
得分:0 

呵呵,我刚才自己改了下~~没问题了,谢谢啦~~


动感超人~~动感光波~~HOHO~~小白,你也是男孩子,所以你也要努力~~
2006-06-01 16:06
快速回复:[求助]关于加法测验算分的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.073664 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved