分享

【Go语言入门100题】031 到底是不是太胖了 (10 分) Go语言|Golang

 小生凡一 2021-11-30

【题解】【PTA团体程序设计天梯赛】

L1-031 到底是不是太胖了 (10 分) Go语言|Golang

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

输入格式:

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

输出格式:

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

输入样例1:

3
169 136
150 81
178 155

结尾无空行

输出样例1:

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

结尾无空行

思路:

按照题目要求进行判断分类就好了~

代码如下:

可以利用函数math.Abs来取绝对值~

package main

import (
"fmt"
"math"
)

func main() {
var num int
_,_=fmt.Scan(&num)
var resultList []string
for i:=0;i<num;i++{
var tall,weight float64
_,_=fmt.Scan(&tall,&weight)
w := (tall-100)*0.9*2
if  math.Abs(weight-w) < w*0.1 { // 如果绝对值比这个小
resultList = append(resultList, "You are wan mei!")
} else if weight-w >= w*0.1 {  // 如果比这个大的话就是太胖了~
resultList = append(resultList, "You are tai pang le!" )
} else {  // 剩余的情况就是瘦的了
resultList = append(resultList, "You are tai shou le!")
}
}
for i:=0;i<len(resultList);i++{  // 用列表去存,然后输出控制空格
if i==0 {
fmt.Printf("%s",resultList[i])
}else{
fmt.Printf("\n%s",resultList[i])
}
}
}

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章