距离问题——算法

距离问题

问题描述

两辆汽车在同一地点,同时,沿同一方向前进。

一辆车的速度为60 km/h,另一辆车的速度为90 km/h。

显然,快车与慢车的距离会不断拉开,每过一个小时(60分钟),两车的距离就拉开30公里。

现在,告诉你两车之间的距离为L公里,请你求出两车已经行驶了多长时间?

输入格式

输入包含一个整数L,表示两车之间的距离。

输出格式

输出格式为“X minutos”,其中X为已经行驶的时间,单位为分钟。

数据范围

1≤L≤1091≤L≤109

输入样例:

30

输出样例:

60 minutos

问题分析

将常用的数学计算,用代码实现。

A车 60 km/h

B车 90 km/h

同时从一个方向开出,计算同一时间位置的差距,即是路程的差
在这里插入图片描述
所以时间h可以采用该方法,而这是得到的小时,转换分钟乘60即可

代码实现

#include <iostream>
#include <bits/stdc++.h>
using namespace std;  

int main(){
	int s;//表示分钟与路程差值
	cin>>s;
	cout<< fixed << setprecision(0)<<s*2<<" minutos";//s/(90-30)*60=s*2
	return 0;
}

运行结果

30
60 minutos
--------------------------------
Process exited after 2.183 seconds with return value 0
请按任意键继续. . .

总结

此处有一个问题是精度的控制以及超过一定位数后,输出将自动采用科学计数法输出,在此使用了fixed将其不以科学计数法输出,并用etprecision(0)使其固定精度格式为0,即是控制小数点后面的位数为0个

对于s*2的问题是对于算数的一个简化得来的表达式

发布了59 篇原创文章 · 获赞 5 · 访问量 5066

猜你喜欢

转载自blog.csdn.net/qq_38496329/article/details/104056487