专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×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; } }