Java 年龄与疾病

某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照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%

import java.math.BigInteger;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.Scanner;
import java.util.concurrent.CountDownLatch;
public class Main {
    public static void main(String[] args) {
        int n;
        double x=0,y=0,z=0,p=0;
        int a[]=new int [102];
        Scanner scanner=new Scanner(System.in);
        n=scanner.nextInt();
        for(int i=0;i<n;i++)
        {
            a[i]=scanner.nextInt();
        }
        for(int i=0;i<n;i++)
        {
            if(a[i]>=0 && a[i]<=18)
                x++;
            if(a[i]>=19 && a[i]<=35)
                y++;
            if(a[i]>=36 && a[i]<=60)
                z++;
            if(a[i]>=61)
                p++;
        }
        x=x/n;
        y=y/n;
        z=z/n;
        p=p/n;
        NumberFormat nf=NumberFormat.getPercentInstance(); 
        nf.setMinimumFractionDigits(2); 
        System.out.println(nf.format(x));
        System.out.println(nf.format(y));
        System.out.println(nf.format(z));
        System.out.println(nf.format(p));
    }
}

猜你喜欢

转载自blog.csdn.net/qq_41611106/article/details/80314514