用c++监护室每小时测量一次病人的血压,若收缩压在90-140之间并且舒张压在60-90之间(包含端点值)则称之为正常,现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数。 输入描述 第一行为一个正整数n(n<100),其后有n行,每行2个正整数,分别为一次测量的收缩压和舒张压。 输出描述 输出仅一行,血压连续正常的最长小时数
时间: 2024-02-15 19:04:49 浏览: 45
以下是 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int max_len = 0; // 记录最长连续正常小时数
int cur_len = 0; // 记录当前连续正常小时数
while (n--) {
int s, d;
cin >> s >> d;
if (s >= 90 && s <= 140 && d >= 60 && d <= 90) { // 检查血压是否正常
cur_len++;
max_len = max(max_len, cur_len);
} else {
cur_len = 0; // 重新开始计数
}
}
cout << max_len << endl;
return 0;
}
```
思路与 Python3 代码实现类似,区别在于 C++ 的输入和输出方式不同。在 C++ 中,需要先通过 `cin` 读入数据,再通过 `cout` 输出结果。
相关问题
C++实现监护室每小时测量一次病人的血压,若收缩压在90-140之间并且舒张压在60-90之间(包含端点值)则称之为正常,现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数。【输入】第一行为一个正整数n(n<100),其后有n行,每行2个正整数,分别为一次测量的收缩压和舒张压。【输出】输出仅一行,血压连续正常的最长小时数。 输入样例: 6 90 60 100 80 95 55 100 88 120 80 100 80 输出样例: 3
可以使用C++编写一个程序来解决这个问题。首先,我们需要读取输入数据并进行处理。然后,我们需要计算连续正常血压的最长小时数。最后,我们将结果输出。
下面是一个示例代码,实现了上述功能:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
vector<pair<int, int>> measurements;
for (int i = 0; i < n; i++) {
int systolic, diastolic;
cin >> systolic >> diastolic;
measurements.push_back(make_pair(systolic, diastolic));
}
int maxHours = 0;
int currentHours = 0;
for (int i = 0; i < n; i++) {
if (measurements[i].first >= 90 && measurements[i].first <= 140 &&
measurements[i].second >= 60 && measurements[i].second <= 90) {
currentHours++;
} else {
maxHours = max(maxHours, currentHours);
currentHours = 0;
}
}
maxHours = max(maxHours, currentHours);
cout << maxHours << endl;
return 0;
}
```
你可以将上述代码保存为一个名为`blood_pressure.cpp`的文件,并使用C++编译器进行编译运行。
输入样例:
```
6
90 60
100 80
95 55
100 88
120 80
100 80
```
输出样例:
```
3
```
这个程序会正确读取输入数据,并计算出连续正常血压的最长小时数,并将结果输出。
现给出某单位多名职工测量的血压值,输出血压正常的人数。若收缩压在90 - 140之间并且舒张压在60 - 90之间(包含端点值)则称之为正常。 【输入描述】 第一行为一个正整数n,n < 100 其后有n行,每行2个正整数,分别为一名职工测量的收缩压和舒张压,中间以一个空格分隔。 【输出描述】 血压正常的人数。 【输入样例】 4 100 80 90 50 120 60 140 90 【输出样例】 3
这是一道简单的模拟题,按照题目描述模拟即可。具体实现可以使用 C++ 或 Python 等语言来实现,以下是 Python 版本的示例代码:
```python
n = int(input())
cnt = 0
for i in range(n):
sys, dia = map(int, input().split())
if 90 <= sys <= 140 and 60 <= dia <= 90:
cnt += 1
print(cnt)
```
以上代码中,首先读入职工人数 `n`,然后循环读入每个职工的收缩压 `sys` 和舒张压 `dia`,如果两个值都在正常范围内,则正常人数 `cnt` 加 1。最后输出正常人数即可。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)