【题目描述】
某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照0-18、19-35、36-60、61以上(含61)四个年龄段统计的患病人数占总患病人数的比例。
【输入】
共2行,第一行为过往病人的数目n(0<n≤100),第二行为每个病人患病时的年龄。
【输出】
按照0-18、19-35、36-60、61以上(含61)四个年龄段输出该段患病人数占总患病人数的比例,以百分比的形式输出,精确到小数点后两位。每个年龄段占一行,共四行。
【输入样例】
10
1 11 21 31 41 51 61 71 81 91
【输出样例】
20.00%
20.00%
20.00%
40.00%
【源代码】
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int n;
cin >> n;
int patients[100] = {};
double sum_1 = 0;
double sum_2 = 0;
double sum_3 = 0;
double sum_4 = 0;
for (int i = 0; i < n; i++)
{
cin >> patients[i];
if ((0 <= patients[i]) && (patients[i] <= 18))
{
sum_1 += 1;
}
else if ((19 <= patients[i]) && (patients[i] <= 35))
{
sum_2 += 1;
}
else if ((36 <= patients[i]) && (patients[i] <= 60))
{
sum_3 += 1;
}
else if (61 <= patients[i])
{
sum_4 += 1;
}
}
cout << setiosflags(ios::fixed) << setprecision(2);
cout << sum_1 * 100.0 / n << "%"<< endl;
cout << setiosflags(ios::fixed) << setprecision(2);
cout << sum_2 * 100.0 / n << "%" << endl;
cout << setiosflags(ios::fixed) << setprecision(2);
cout << sum_3 * 100.0 / n << "%" << endl;
cout << setiosflags(ios::fixed) << setprecision(2);
cout << sum_4 * 100.0 / n << "%" << endl;
return 0;
}