Java重写《C经典100题》 --02
【程序2】
题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。
2.程序源代码:
1 /*本文转自博客:www.cnblogs.com/java-100 2 【程序2】 3 题目:企业发放的奖金根据利润提成。 4 利润(I)低于或等于10万元时,奖金可提10%; 5 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%; 6 20万到40万之间时,高于20万元的部分,可提成5%; 7 40万到60万之间时,高于40万元的部分,可提成3%; 8 60万到100万之间时,高于60万元的部分,可提成1.5%; 9 高于100万元时,超过100万元的部分按1%提成。 10 从键盘输入当月利润I,求应发放奖金总数? 11 程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 12 */ 13 14 import java.util.Scanner; 15 16 public class Java02 { 17 18 public static void main(String[] args) { 19 System.out.print("请输入企业今年的利润(元):"); 20 Scanner scanner = new Scanner(System.in); 21 int profit = scanner.nextInt(); 22 scanner.close(); 23 double bonus; 24 double profit10 = 10 * 0.1; 25 double profit20 = profit10 + (20 - 10) * 0.075; 26 double profit40 = profit20 + (40 - 20) * 0.05; 27 double profit60 = profit40 + (60 - 40) * 0.03; 28 double profit100 = profit60 + (100 - 60) * 0.015; 29 if (profit <= 100000) { 30 bonus = profit * 0.1; 31 } else if (profit <= 200000) { 32 bonus = (profit - profit10) * 0.075 + profit10; 33 } else if (profit <= 400000) { 34 bonus = (profit - profit20) * 0.05 + profit20; 35 } else if (profit <= 600000) { 36 bonus = (profit - profit40) * 0.03 + profit40; 37 } else if (profit <= 1000000) { 38 bonus = (profit - profit60) * 0.015 + profit60; 39 } else { 40 bonus = (profit - profit100) * 0.01 + profit100; 41 } 42 System.out.print("应发奖金(元):" + (int) bonus); 43 } 44 }

浙公网安备 33010602011771号