跑分器(made in 蒟蒻)(内附代码)

#题外话:这里也能免费获取代码,不用买会员:洛谷剪贴板

#直逼正文:

最近看到这个东西……

据说它有个跑分功能,想逝逝。

但……

所以我决定,用自己编一个低端的……

#思路

        感觉跑分就是测试中央处理器的速度的,那用计算次数是不是也能达到效果?

然后伪代码就呼之欲出了:

        (没想好怎么写,计算而已)

但问题又出现了:如何知道算了多长时间?(次数/时间=计算速度)

虽然我们可以使用自编的sleep()函数等待时间,但它并不能一边等待一边计算:

void sleep(int s){
	time_t t0, t1;
	time(&t0);
	do{time(&t1);}while((t1 - t0) < s);
	return;
}

所以只能改:

void qwq(int s){
	time_t t0, t1;
	time(&t0);
	do{
        time(&t1);
        计算测试
    }while((t1 - t0) < s);
	return;
}

优化一下,成为计算测试单元:(数据肯定不是1+1,例子罢了)

while(1){
	time(&nt);tm*tc=localtime(&nt);
	if(tc->tm_sec>10)break;
	result=1+1;
	ans++;
}

再加一些有的没的,构建框架;

AC  完整代码:

#include<bits/stdc++.h>
using namespace std;
void sleep(int s){
	time_t t0, t1;
	time(&t0);
	do{time(&t1);}while((t1 - t0) < s);
	return;
}
time_t nt;
int stmin,stsec;
long long int clli[2]={9070578831396336145,152793205498439661},aa,ab,ac;
double cd[2]={34.29372994203702,95.2891023567266};
unsigned long long int ca,cb,cc;
int main(){
	cout<<"跑分器已启动"<<endl;
	system("title 跑分器");
	sleep(1);
	cout<<"正在获取当前时间……"<<endl;
	time(&nt);tm*ta=localtime(&nt);
	stmin=ta->tm_min;stsec=ta->tm_sec;
	if(stsec<55)cout<<"很抱歉,由于程序自身原因,需要进入下一分钟后才能开始测试,\n由此带来的不便请你谅解。"<<endl;
	cout<<"请等待……"<<endl;
	time(&nt);tm*tb=localtime(&nt);
	while(tb->tm_sec<59){
		time(&nt);tm*tb=localtime(&nt);
		cout<<"还剩"<<60-tb->tm_sec<<"秒\r";
	}
	cout<<endl<<"等待成功,即将开始测试……"<<endl;
	cout<<"测试分3个部分,分别是加法计算测试,乘法计算测试和除法计算测试,\n将花费30秒左右。"<<endl;
	sleep(1);
	cout<<"进入第一项:加法计算测试"<<endl;
	while(1){
		time(&nt);tm*tc=localtime(&nt);
		if(tc->tm_sec>10)break;
		aa=clli[0]+clli[1];
		ca++;
	}
	ca/=10;
	cout<<"测试完成"<<endl;
	cout<<"进入第二项:乘法计算测试"<<endl;
	while(1){
		time(&nt);tm*tc=localtime(&nt);
		if(tc->tm_sec>20)break;
		ab=clli[0]*clli[1];
		cb++;
	}
	cb/=10;
	cout<<"测试完成"<<endl;
	cout<<"进入第三项:除法计算测试"<<endl;
	while(1){
		time(&nt);tm*tc=localtime(&nt);
		if(tc->tm_sec>30)break;
		ac=cd[0]/cd[1];
		cc++;
	}
	cc/=10;
	cout<<"测试完成"<<endl;
	sleep(1);
	system("pause");
	system("cls");
	cout<<"正在计算……"<<endl;
	sleep(3);
	system("cls");
	cout<<"第一项分数:"<<ca<<endl;
	cout<<"第二项分数:"<<cb<<endl;
	cout<<"第三项分数:"<<cc<<endl;
	cout<<"最终分数:  "<<(ca+cb+cc)/3<<endl;
}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值