L1-031 到底是不是太胖了(Java)

发布时间:2024年01月17日

据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。真实体重与标准体重误差在10%以内都是完美身材(即 | 真实体重 ? 标准体重 | < 标准体重×10%)。已知 1 公斤等于 2 市斤。现给定一群人的身高和实际体重,请你告诉他们是否太胖或太瘦了。

输入格式:

输入第一行给出一个正整数N(≤ 20)。随后N行,每行给出两个整数,分别是一个人的身高H(120 < H < 200;单位:厘米)和真实体重W(50 < W ≤ 300;单位:市斤),其间以空格分隔。

输出格式:

为每个人输出一行结论:如果是完美身材,输出You are wan mei!;如果太胖了,输出You are tai pang le!;否则输出You are tai shou le!。

输入样例:

3
169 136
150 81
178 155

输出样例:

You are wan mei!
You are tai shou le!
You are tai pang le!

解题思路

  1. 计算出标准体重:身高(单位:厘米)减去100、再乘以0.9所得到的公斤数,还需乘以2 得到斤数。
  2. 完美身材: | 真实体重 ? 标准体重 | < 标准体重×10%
  3. 肥胖身材:真实体重 > 标准体重
  4. 瘦弱身材:真实体重 < 标准体重

解题过程中遇到的问题

暂无

代码

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int N = scanner.nextInt(); // 读取人数

        for (int i = 0; i < N; i++) {
            int height = scanner.nextInt(); // 身高
            int weight = scanner.nextInt(); // 实际体重(市斤)

            double standardWeight = (height - 100) * 0.9 * 2; // 计算标准体重(市斤)
            double tolerance = standardWeight * 0.1; // 计算误差范围

            if (Math.abs(weight - standardWeight) < tolerance) {
                System.out.println("You are wan mei!");
            } else if (weight > standardWeight) {
                System.out.println("You are tai pang le!");
            } else {
                System.out.println("You are tai shou le!");
            }
        }
    }
}
文章来源:https://blog.csdn.net/Gracener/article/details/135661309
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。