java 装睡问题

描述

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

输入

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

输出

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


针对这道题,我先采用简单的方式,具体代码如下:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sca=new Scanner(System.in);
        int n= sca.nextInt();
        for(int i=0;i<n;i++){
             String name= sca.next();
             int R= sca.nextInt();
             int P= sca.nextInt();
             if(15<R||R<20 || 50<P||P<70){
                System.out.println(name);
              }
         }
    }
}

运行结果如下:

 我们会发现,name对应的值全部输出了,不符合题意。那我们就可以思考数组的形式,代码如下:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        String name[] = new String[n];
        int R[] = new int[n];//R表示呼吸频率
        int P[] = new int [n];//P表示脉搏
        for(int i=0;i<n;i++) {
            name[i] = sc.next();
            R[i] = sc.nextInt();
            P[i] = sc.nextInt();
        }
        for(int k =0;k<n;k++) {
            if(R[k]<15||R[k]>20||P[k]<50||P[k]>70) {
                System.out.println(name[k]);
            }
        }
    }
}

我只是一个小白,有什么不妥之处,请指正。谢谢

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值