【蓝桥杯算法题】用java遍写税收计算
- 题目:劳务报酬税收计算:输入 m ,输出税后收入。如果 m <=800,不扣税, 如果800< m <=4000.则 m 减去800后的金额扣除20%所得税。如果 m >4000,则 m 乘0.8后扣除20%所得税。
- 解释:
- 总结:
题目:劳务报酬税收计算:输入 m ,输出税后收入。如果 m <=800,不扣税, 如果800< m <=4000.则 m 减去800后的金额扣除20%所得税。如果 m >4000,则 m 乘0.8后扣除20%所得税。
package com.abaili.zhihuan;
import java.util.Scanner;
public class TaxCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入劳务报酬金额:");
double m = scanner.nextDouble();
double taxRate = 0.2; // 税率为20%
double tax = 0.0; // 初始化税收
if (m > 800 && m <= 4000) {
// 扣除800后的金额扣除20%所得税
double taxableAmount = m - 800;
tax = taxableAmount * taxRate;
} else if (m > 4000) {
// 将m乘以0.8后扣除20%所得税
double taxableAmount = m * 0.8;
tax = taxableAmount * taxRate;
}
double afterTaxIncome = m - tax; // 税后收入
System.out.println("税后收入为:" + afterTaxIncome);
}
}
解释:
- package com.abaili.zhihuan;:定义一个Java包,它的名称是"com.abaili.zhihuan"。
- import java.util.Scanner;:导入Java标准库中的Scanner类,该类用于从控制台读取用户输入。
- public class TaxCalculator { … }:定义一个名为TaxCalculator的公共类。
- public static void main(String[] args) { … }:定义一个静态的主函数,它接受一个字符串数组作为参数。
- Scanner scanner = new Scanner(System.in);:创建一个Scanner对象,用于从控制台读取用户输入。
- double m = scanner.nextDouble();:使用Scanner对象,从控制台读取一个双精度浮点数。
- double taxRate = 0.2;:定义一个名为taxRate的双精度浮点数,其初始值为0.2。
- double tax = 0.0;:定义一个名为tax的双精度浮点数,其初始值为0.0。
- if (m > 800 && m <= 4000) { … } else if (m > 4000) { … }:使用条件语句来确定应该如何计算税收。
- double afterTaxIncome = m - tax;:计算税后收入。
- System.out.println(“税后收入为:” + afterTaxIncome);:将计算出的税后收入输出到控制台。
总结:
这段代码是一个简单的税务计算器。它通过从控制台读取用户输入来计算劳务报酬的税后收入。程序中定义了一个Scanner对象,用于读取用户输入。然后程序要求用户输入劳务报酬金额,接下来根据不同的情况进行计算:如果劳务报酬金额大于800元且不超过4000元,则扣除800元后的金额再扣除20%的所得税;如果劳务报酬金额超过4000元,则先将金额乘以0.8后再扣除20%的所得税。最后,程序将计算出的税后收入输出给用户。