Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

A program may execute the same computations repeatedly. The program below repeatedly asks the user to enter an annual salary, stopping when the user enters

A program may execute the same computations repeatedly.
The program below repeatedly asks the user to enter an annual salary, stopping when the user enters 0 or less. For each annual salary, the program determines the tax rate and computes the tax to pay.
Run the program below with annual salaries of 40000,90000, and then 0.
Modify the program to use a while loop inside the given while loop. The new inner loop should repeatedly ask the user to enter a salary deduction, stopping when the user enters a 0 or less. The deductions are summed and then subtracted from the annual income, giving an adjusted gross income. The tax rate is then calculated from the adjusted gross income.
Run the program with the following input: 40000,7000,2000,0, and 0. Note that the 7000 and 2000 are deductions.
Note: The calculation is inaccurate to how taxes are formally assessed and is a simplification for educational purposes only.
import java.util.Scanner;
public class IncomeTax {
public static void main (String [] args){
Scanner scnr = new Scanner(System.in);
final String SALARY_PROMPT ="
Enter annual salary (0 to exit): ";
int annualSalary;
int deduction;
int totalDeductions;
double taxRate;
int taxToPay;
System.out.println(SALARY_PROMPT);
annualSalary = scnr.nextInt();
while (annualSalary >0){
// FIXME: Add a while loop to gather deductions. Use the variables
// deduction and totalDeduction for deduction handling.
// End the inner while loop when a deduction <=0 is entered.
// Determine the tax rate from the annual salary
if (annualSalary <=20000){
taxRate =0.10; //0.10 is 10% written as a decimal
}
else if (annualSalary <=50000){
taxRate =0.20;
}
else if (annualSalary <=100000){
taxRate =0.30;
}
else {
taxRate =0.40;
}
taxToPay =(int)(annualSalary * taxRate); // Truncate tax to an integer amount
System.out.println("Annual salary: "+ annualSalary);
System.out.println("Tax rate: "+ taxRate);
System.out.println("Tax to pay: "+ taxToPay);
// Get the next annual salary
System.out.println(SALARY_PROMPT);
annualSalary = scnr.nextInt();
}
}
}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

Identify barriers to group and team creativity.

Answered: 1 week ago

Question

How is the NDAA used to shape defense policies indirectly?

Answered: 1 week ago

Question

1. Identify and control your anxieties

Answered: 1 week ago