A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

题目:企业发放的奖金根据利润提成。利润(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. import java.io.*;
  2. public class Test{
  3.         public static void main(String[] args){
  4.                 System.out.print("请输入当前利润:");
  5.                 long profit = Long.parseLong(key_Input());
  6.                 System.out.println("应发奖金:"+bonus(profit));
  7.         }
  8.         //接受从键盘输入的内容
  9.         private static String key_Input(){
  10.                 String str = null;
  11.                 BufferedReader bufIn = new BufferedReader(new InputStreamReader(System.in));
  12.                 try{
  13.                         str = bufIn.readLine();
  14.                 }catch(IOException e){
  15.                         e.printStackTrace();
  16.                 }finally{
  17.                         try{
  18.                                 bufIn.close();
  19.                         }catch(IOException e){
  20.                                 e.printStackTrace();
  21.                         }
  22.                 }
  23.                 return str;
  24.         }
  25.         //计算奖金
  26.         private static long bonus(long profit){
  27.                 long prize = 0;
  28.                 long profit_sub = profit;
  29.                 if(profit>1000000){
  30.                         profit = profit_sub-1000000;
  31.                         profit_sub = 1000000;
  32.                         prize += profit*0.01;
  33.                 }
  34.                 if(profit>600000){
  35.                         profit = profit_sub-600000;
  36.                         profit_sub = 600000;
  37.                         prize += profit*0.015;
  38.                 }
  39.                 if(profit>400000){
  40.                         profit = profit_sub-400000;
  41.                         profit_sub = 400000;
  42.                         prize += profit*0.03;
  43.                 }
  44.                 if(profit>200000){
  45.                         profit = profit_sub-200000;
  46.                         profit_sub = 200000;
  47.                         prize += prize*0.05;
  48.                 }
  49.                 if(profit>100000){
  50.                         profit = profit_sub-100000;
  51.                         profit_sub = 100000;
  52.                         prize += profit*0.075;
  53.                 }
  54.                 prize += profit_sub*0.1;
  55.                 return prize;
  56.         }
  57. }
复制代码



1 个回复

倒序浏览
你到底想干嘛?问题有了,代码也有了,这到底是在干嘛?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马