Назначение налогов с использованием Java - PullRequest
0 голосов
/ 22 сентября 2019

У меня есть задание, в котором мне нужно составить массив и распределить налог в соответствии с их доходами и в группе. Я делал это раньше, не используя массив, но это выглядит довольно сложно, так что если кто-нибудь сможет мне помочь и предоставить мнепонимание было бы очень полезно ...

Имя, возраст, налогооблагаемый доход, налоговая и налоговая группы должны храниться в массиве ArrayList (индекс 0 для налогоплательщика 1 и индекс N-1 для налогоплательщика N).Минимальный и максимальный возраст, который может быть сохранен, составляет 18 и 64 года. Минимальный и максимальный налогооблагаемый доход, который может быть сохранен, составляет 1 и 999000 долларов США.Проверка минимальных и максимальных значений должна быть сделана во время чтения возраста и налогооблагаемого дохода.Ваше приложение должно отобразить и выполнить меню со следующими параметрами.Оператор switch должен использоваться для выполнения следующих пунктов меню.1. Прочитать, проверить и сохранить данные для N налогоплательщиков 2. Рассчитать и сохранить налоговую и налоговую группу для всех налогоплательщиков 3. Показать всех налогоплательщиков 4. Показать имя и возраст всех налогоплательщиков из налоговой группы 1 5. Найти налогоплательщика по возрасту 6Сортировка и отображение налогоплательщиков 7. Выход из приложения

    double income,tax;
    double group1=0, group2=0, group3=0, group4=0, group5=0; //counter variables to count the number of groups
    double highest_tax=0,lowest_tax=0;
    for(int x=1; x<=N; x++) {
    System.out.println("Enter the taxable income for employee:" + x);
    Scanner sa = new Scanner(System.in);
    income= sa.nextDouble();
    if (income<=18200){
        tax=0;
        System.out.printf("The tax for employee %d is %.2f \n", x, tax);
        group1++;  //counter variable increments everytime the conditional is run
    }
    else if(income>18000 && income<37000){
        tax= (income-18200)*0.19;   //formula to determine the tax according to the question
        System.out.printf("The tax for employee %d is %.2f \n", x, tax);
        group2++;
    }
    else if(income>37000 && income<87000){
        tax= 3572 +((income-37000)*0.325);
        System.out.printf("The tax for employee %d is %.2f \n", x, tax);
        group3++;
    }
    else if (income>87001 && income<180000 ){
         tax =19822 +((income-87000)*0.37);
         System.out.printf("The tax for employee %d is %.2f \n", x, tax);
         group4++;
    }
    else {
        tax= 54097+ ((income-180000)*0.45);
        System.out.printf("The tax for employee %d is %.2f \n", x, tax);
        group5++;
    }   

    if(tax>highest_tax)  // the formula to determine highest and lowest tax
        highest_tax = tax;
    if(tax==lowest_tax)
        lowest_tax = tax;
    }

    System.out.printf("\n The highest tax %.2f \n", highest_tax);
    System.out.println("\n The lowest tax is:" + lowest_tax);
    System.out.println(" \n Number of People in Group 1 are : " +group1);
    System.out.println(" \n Number of People in Group 5 are : " +group5);   
    if(group1>group5)   //highest number of employees among group 1 and group 5
        System.out.println("Tax group with the highest number of employees: 1 \n");
    if(group1<=group5)
        System.out.println("Tax group with the highest number of employees: 5 \n");

    }
}
...