noi 1.5 24 正常血压

2023-03-07,,

描述

监护室每小时测量一次病人的血压,若收缩压在90 - 140之间并且舒张压在60 - 90之间(包含端点值)则称之为正常,现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数。

输入

第一行为一个正整数n,n < 100
其后有n行,每行2个正整数,分别为一次测量的收缩压和舒张压,中间以一个空格分隔。

输出

输出仅一行,血压连续正常的最长小时数。

样例输入

4

100 80

90 50

120 60

140 90

样例输出

2

题意

输入一个接下来要测几个小时的血压,在这几个小时内,如果血压的高压(收缩压)在90 - 140以及低压(舒张压)在60 - 90为正常血压,要求知道对多有几个小时是在正常血压范围内的。

思路

首先我们先设一个n来表示接下来有几个小时是要测血压的,就代表要循环n个小时,就是n次,然后我们再设一个h表示高血压,然后再设一个l表示低血压,然后设一个c表示现在有几个连续的小时是在正常血压范围内的,进行判断,如果h与l都是正常血压我们就可以c加1,然后设一个cm来记录最多有几个小时是正常血压,然后进行判断,c如果大于cm就代表现在连续的正常血压是时间大于已经记录的正常时间的最长时间,最后输出cm。

1.cm在开始要等于0。

2.c在开始也要等于0。

代码实现

#include<iostream>
using namespace std;
int main (){
	int n,h,l,c=0,cm=0;
cin>>n;//输入接下来要测几个小时的血压
for(int i=1;i<=n;i++){//循环输入的数就是要循环的次数
cin>>h>>l;//输入高压和低压
if(h>=90 && h<=140 && l>=60 && l<=90){//判断是否在正常血压范围内
            c++;//现在正常血压的最长时间加一个小时
            if(c>cm){//判断现在正常血压的时间是否比已存入的最多正常血压的时间多,如果多,已存入的正常血压最多时间换为现在正常血压的的时间
              cm=c;
            }
           }
         else{//如果不是正常血压直接清零现在正常血压的最长时间。
            c=0;
          }
     }
     cout<<cm;//输出最长血压的时间
    return 0;
}

noi 1.5 24 正常血压的相关教程结束。

《noi 1.5 24 正常血压.doc》

下载本文的Word格式文档,以方便收藏与打印。