L1-031. 到底是不是太胖了

本程序通过输入一组人员的身高和体重数据(单位分别为厘米和市斤),计算并判断每个人的体型是否标准、偏瘦还是过胖。计算依据为:标准体重等于(身高-100)×0.9×2(转换市斤单位)。根据实际体重与标准体重的偏差百分比,输出相应的体型评价。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

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

输入格式:

输入第一行给出一个正整数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!

代码:

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		double[][] s = new double[n][2];
		for (int i = 0; i < n; i++) {
			for (int j = 0; j < 2; j++) {
				s[i][j] = sc.nextDouble();
			}
		}
		for (int i = 0; i < n; i++) {
			double a = (s[i][0] - 100) * 0.9 * 2;
			if (Math.abs(s[i][1] - a) < a * 0.1) {
				System.out.println("You are wan mei!");
			} else if (s[i][1] <= a * 0.9) {
				System.out.println("You are tai shou le!");
			} else {
				System.out.println("You are tai pang le!");
			}
		}
	}
}