郑州航空工业管理学院


私信TA

用户名:2007940630

访问量:302

签 名:

等  级
排  名 58661
经  验 232
参赛次数 0
文章发表 1
年  龄 0
在职情况 学生
学  校 郑州航空工业管理学院
专  业

  自我简介:

解题思路:    使用if语句判断区间从而选择相应比例计算。

注意事项:   此题不是单纯的直接乘以对应百分比,要根据奖金不同部分乘以百分比再进行累加, 注意判断次序,从低到高,每次使用一个“<”即可,这样可以避免使用“&&”,以便简化程序,提高速度。
参考代码:

import java.util.Scanner;

public class Main {
   public static void main(String[] args) {
       Scanner sc=new Scanner(System.in);
       int i=sc.nextInt();
       if (i <= 100000) {//①    利润低于或等于100000元时
           i = (int) (i * 0.1);
       } else if (i <= 200000) {//②    如果运行到该判断,说明上一个if已经隐含判断出利润i高于100000元,所以只需要判断是否小于等于200000元,                                                                       //当然你也可以用 100000 < i && i <= 200000进行判断,不过显然 100000 < i 成立,这个时候还要看后面的 i <= 200000

           i = (int)((100000 * 0.1) + (i - 100000) * 0.075);
       } else if (i <= 400000) {//③    200000<i≤400000时,思想参考上条注释,下同
           i = (int)((100000 * 0.1) + 100000 * 0.075 + (i - 200000) * 0.05);
       } else if (i <= 600000) {//④    400000<i≤600000元时
           i = (int)((100000 * 0.1) + 100000 * 0.075 + 200000 * 0.05 + (i - 400000) * 0.03);
       } else if (i <= 1000000) {//⑤    600000<i≤1000000时
           i = (int)((100000 * 0.1) + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + (i - 600000) * 0.015);
       } else {
           i = (int)((100000 * 0.1) + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015 + (i - 1000000) * 0.01);
       }
       System.out.println(i);

   }
}

 

0.0分

0 人评分

  评论区

  • «
  • »