7-10 最佳情侣身高差

7-10 最佳情侣身高差_第1张图片

分数 10

全屏浏览题目

切换布局

作者 陈越

单位 浙江大学

专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。

下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。

输入格式:

输入第一行给出正整数N(≤10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其中“性别”为“F”表示女性、“M”表示男性;“身高”为区间 [1.0, 3.0] 之间的实数。

输出格式:

对每一个查询,在一行中为该用户计算出其情侣的最佳身高,保留小数点后2位。

输入样例:

2
M 1.75
F 1.8

输出样例:

1.61
1.96

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

我的答案:

分析过程:

对于给定的身高,我们可以使用简单的公式来计算情侣的最佳身高。根据题目的描述:

  • 如果是男性,我们可以使用公式:女方的身高 = 男方的身高 / 1.09
  • 如果是女性,我们可以使用公式:男方的身高 = 女方的身高 * 1.09

我们只需遍历每个用户,并根据他们的性别和身高使用上述公式来计算最佳的身高。

C语言:

#include 

int main() {
    int N;
    scanf("%d", &N);

    for(int i = 0; i < N; i++) {
        char gender;
        double height, result;
        scanf(" %c %lf", &gender, &height);

        if(gender == 'M') {
            result = height / 1.09;
        } else {
            result = height * 1.09;
        }
        printf("%.2lf\n", result);
    }

    return 0;
}

C++:
 

#include 
#include 
using namespace std;

int main() {
    int N;
    cin >> N;

    for(int i = 0; i < N; i++) {
        char gender;
        double height, result;
        cin >> gender >> height;

        if(gender == 'M') {
            result = height / 1.09;
        } else {
            result = height * 1.09;
        }
        cout << fixed << setprecision(2) << result << endl;
    }

    return 0;
}

解题思路:

这个问题的解题思路很直接。我们需要按照给定的条件使用公式来计算结果。考虑到我们要保留两位小数,所以我们使用了C++的setprecision和C语言的格式化输出来实现这个要求。

这个问题可以帮助我们加强对公式计算和格式化输出的理解和应用。

7-10 最佳情侣身高差_第2张图片

你可能感兴趣的:(PTA课后练习,算法,c++,PTA)