『题解』UVa online judge UVA11984 A Change in Thermal Unit
题目大意
给定摄氏温度 \(C\) 与增长的华氏温度 \(d\),求温度增长后的温度为多少摄氏度,结果保留两位小数。摄氏温度转换华氏温度公式为:
\[F=\dfrac{9}{5}C+32
\]
多组数据。
思路
我们先来考虑将华氏度 \(d\) 转化为摄氏度,这样好计算一些。可以由摄氏度到华氏度的转换公式推导出华氏度到摄氏度的公式:
\[C=\dfrac{5}{9}(F-32)
\]
但是很容易发现,当 \(d\) 低于 \(32\) 时,转换后变成了一个负数,所以这种方法不可取。
那么我们就要考虑将 \(C\) 转换为华氏度:
\[(\dfrac{9}{5}C+32)^{\circ}F
\]
这样一来,就得到了华氏温度,再加上 \(d\),就是最终结果了。但是还需要将结果转换成摄氏度,于是得到计算公式:
代码
#include <iostream>
using namespace std;
int t;
double c,d;
int main(){
cin >> t;
for(int i=1; i<=t; i++){
cin >> c >> d;
printf("Case %d: %.2lf\n",i,c+d*5.0/9.0); // 直接套公式
}
return 0;
}