【Go语言入门150题】 L1-047 装睡 (10 分) Go语言 | Golang

342 阅读1分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

本文已参与 「掘力星计划」 ,赢取创作大礼包,挑战创作激励金

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

L1-047 装睡 (10 分) Go语言 | Golang

你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-70次。下面给定一系列人的呼吸频率与脉搏,请你找出他们中间有可能在装睡的人,即至少一项指标不在正常范围内的人。

输入格式:

输入在第一行给出一个正整数N(≤10)。随后N行,每行给出一个人的名字(仅由英文字母组成的、长度不超过3个字符的串)、其呼吸频率和脉搏(均为不超过100的正整数)。

输出格式:

按照输入顺序检查每个人,如果其至少一项指标不在正常范围内,则输出其名字,每个名字占一行。

输入样例1:

4
Amy 15 70
Tom 14 60
Joe 18 50
Zoe 21 71

结尾无空行

输出样例1:

Tom
Zoe

结尾无空行

思路:

简单的选择语句,把符合条件的存在数组里面就好了,然后再进行输出,输出注意换行。

代码如下:

package main

import "fmt"

func main() {
	var n int
	var result []string
	_,_=fmt.Scan(&n)
	for i:=0;i<n;i++{
		var name string
		var num1,num2 int
		_,_ = fmt.Scan(&name,&num1,&num2)
		if num1>20 || num1<15 || num2>70 || num2<50 {
			result = append(result, name)
		}
	}
	for i:=0;i<len(result) ; i++ {
		if i == 0 {
			fmt.Printf("%s",result[i])
		}else{
			fmt.Printf("\n%s",result[i])
		}
	}
}