专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09=(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。
下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。
输入格式:
输入第一行给出正整数N(<=10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其中“性别”为“F”表示女性、“M”表示男性;“身高”为区间 [1.0, 3.0] 之间的实数。
输出格式:
对每一个查询,在一行中为该用户计算出其情侣的最佳身高,保留小数点后2位。
输入样例:2 M 1.75 F 1.8输出样例:
1.61 1.96
这道题其实挺水的,但是为了以后找对象可能用得到,所以就收藏下了。
#include<cstdio>
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int n;
char c;
double a;
cin>>n;
while(n--)
{
cin>>c>>a;
if(c=='F')
{
cout<<setiosflags(ios::fixed)<<setprecision(2)<<a*1.09;
/*
这里如果加上“setiosflags(ios::fixed)”代表保留小数点后多少位,如果不加则是保留多少位(包括小数点前的数)
setiosflags(ios::fixed)是指以固定的浮点显示,
当setiosflags(ios::fixed)和serprecision(n)两个一起用时就表示保留n位小数输出。
这里还要注意,每次输出只要设置一次就行了,因为这两个的作用范围是后续对象,
而不是仅对后一个对象起作用。
如果是cout<<fixed<<setprecision(2),这个表示仅对后一个对象起作用。
这里因为cout语句后面只有一个对象,所以体现不出来,如果有多个对象就能体现出来了。
*/
}
else if(c=='M')
{
cout<<setiosflags(ios::fixed)<<setprecision(2)<<a/1.09;
}
if(n)
cout<<endl;
}
}