我刚刚在大学完成了 Java 测试,我知道我回答错了一个特定的问题,希望得到一些帮助/澄清吗?
问题如下:
实施一种获取某人收入并计算税款的方法。如果该人的收入低于 7500,则税金 = 0。如果该人的收入在 7501 和 45000 之间,则税金 = 20%,减去 7500,即免税。最后,如果该人的收入高于 45001,则税 = 40%,减去 20% 范围内的收入,然后减去免税的 7500。
由于时间不多了,我只是做了一个基本的 if else 声明,显示了收入和税级,下面的例子。
public static double incomeTax(double income){
if(income <= 7500){
income = income * 0;
}
else if(income >= 7501 && income <= 45000){
income = income * 0.8;
}
else(income >= 45001){
income = income * 0.6;
}
return income;
}
我知道代码不正确,离我们很近,但在测试即将结束时,我试了一下,希望只是为 if else 语句打分。
我真的很感激这里的任何帮助。
谢谢你。
在得到很好的反馈之后,这就是我回来的结果(有很多帮助!!:])...
import java.util.Scanner;
public class TaxableIncome
{
public static void main(String[] args){
netIncome();
}
public static double netIncome() {
double income = 0;
Scanner in = new Scanner(System.in);
System.out.print("Enter income: ");
income = in.nextDouble();
System.out.println();
double tax1 = 0;
double tax2 = 0;
double totalTax = tax1 + tax2;
// high income bracket
if (income > 45000) {
double part1 = income - 45000; // part = income - 45000
tax1 += part1 * 0.4; // tax = tax + part * 0.4
System.out.println("High Tax Band - Greater than 45000: " + tax1);
}
// medium income bracket
if (income > 7500) {
double part2 = income - 7500;
tax2 += part2 * 0.2;
System.out.println("Medium Tax Band - Greater than 7500: " + tax2);
}
System.out.println("Total Tax = " + (tax1 + tax2));
// tax for low income is zero, we don't need to compute anything.
return totalTax;
}
}