骑车与走路

总时间限制:
1000ms
内存限制:
65536kB
描述
在北大校园里,没有自行车,上课办事会很不方便.但实际上,并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间.假设找到自行车,开锁并骑上自行车的时间为27秒;停车锁车的时间为23秒;步行每秒行走1.2米,骑车每秒行走3.0米.请判断走不同的距离去办事,是骑车快还是走路快.
输入
第一行为待处理的数据的数量n
其后每一行整数为一次办事要行走的距离,单位为米.
输出
对应每个整数,如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All".
样例输入
4
50
90
120
180
样例输出
Walk
Walk
Bike
Bike

#include <iostream>
using namespace std;
int main (){
	int n , i ; //需要办理的事情
	float walk ,bike ,Distance ; //申明走路、骑车、办事的距离
	cin >> n ;
	for( i = 0; i < n ; i++){
		cin >> Distance;
		walk = Distance / 1.2;
		bike = Distance/3.0 + 27 + 23 ;
		if( walk > bike)
			cout << "Bike"<< endl;
		else if ( bike > walk)
			cout << "Walk" << endl;
		else if ( bike == walk)
			cout << "All" << endl;
		}
		return 0 ;
	}

解题思路:很简单,我就不说了,除出来的数进行对比就行了。

这里有一个地方需要大家注意的是,我们在申明变量的时候,不要去使用double,因为这样双精度浮点数会保留小数点后多位,感谢郝助教。

例如:浮点数你输入3最后储存的结果可能变成了2.9999999或者3.00000001,其他的地方就没什么可以说的了。

posted @ 2014-10-30 11:32  Mr.smith  阅读(3608)  评论(0编辑  收藏  举报