【发布时间】:2015-06-17 19:56:44
【问题描述】:
我正在编写一个程序,该程序根据一个人的收入查找税款。到目前为止,我遇到的问题是一些数字没有四舍五入到小数点后两位并继续前进,我不知道如何从所有数字中获取最大值。
这是我必须做的:
不超过 750 美元收入的 1%
$750-$2500 $7.5 加上超过 $750 金额的 2%
$2500-$5000 $82.5 加上超过 $2500 金额的 4%
$5000-$8000 $142.50 加上超过 $5000 金额的 5%
超过 $8000 $230.00 加上超过 $8000 金额的 %6
编写一个名为 IncomeTax.java 的程序。
生成(1-15)范围内的随机人数;
要求用户输入每个人的应纳税所得额,然后
显示应缴税款;
- 在屏幕上显示税收的最大值。
这是我的代码:
Scanner console=new Scanner(System.in);
double tax=0;
double income=0;
Random rand=new Random();
int randomNumber=rand.nextInt(14)+1;
for(int i=1;i<=randomNumber;i++){
System.out.println("Person: "+i);
System.out.println("Please enter income: ");
double n=console.nextDouble();
if(n<750){
n=n*.01;
System.out.println("Tax due: $"+n);
}else if(n<2500){
n=0+7.5+(n*.02);
System.out.println("Tax due: $"+n);
}else if(n<5000){
n=0+82.5+(n*.04);
System.out.println("Tax due: $"+n);
}else if(n<8000){
n=0+142.50+(n*.05);
System.out.println("Tax due: $"+n);
}else if(n>8000){
n=0+230+(n*.06);
System.out.println("Tax due: $"+n);
}
【问题讨论】:
-
自己做作业
-
如果你不实现数组或列表,你会发现很难完成这样的任务
-
您想要计算出的“应缴税款”的最大值吗?然后将
n的最大值存储在 if/else 块之后的max变量中。 -
“如何解决小数位不四舍五入到小数点后两位的问题。” 通过在 Stack Overflow 上搜索。已经有几种解决方案。
-
跟踪最大值的最简单方法是创建一个变量来存储您迄今为止记录的最大税收值。然后每次计算新的税值时,将其与当前的“最大值”进行比较,如果更大,则保存新值。