java代码实现企业发放的奖金根据利润提成问题

原创 2017年07月06日 11:11:15

题目:

企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?

程序分析:

请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。

代码部分:

import java.io.*;
public class Prog12{
    public static void main(String[] args){
        System.out.print("请输入当前利润:");
        long profit = Long.parseLong(key_Input());
        System.out.println("应发奖金:"+bonus(profit));
    }
    //接受从键盘输入的内容
    private static String key_Input(){
        String str = null;
        BufferedReader bufIn = new BufferedReader(new InputStreamReader(System.in));
        try{
            str = bufIn.readLine();
        }catch(IOException e){
            e.printStackTrace();
        }finally{
            try{
                bufIn.close();
            }catch(IOException e){
                e.printStackTrace();
            }
        }
        return str;
    }
    //计算奖金
    private static long bonus(long profit){
        long prize = 0;
        long profit_sub = profit;
        if(profit>1000000){
            profit = profit_sub-1000000;
            profit_sub = 1000000;
            prize += profit*0.01;
        }
        if(profit>600000){
            profit = profit_sub-600000;
            profit_sub = 600000;
            prize += profit*0.015; 
        }
        if(profit>400000){
            profit = profit_sub-400000;
            profit_sub = 400000;
            prize += profit*0.03;
        }
        if(profit>200000){
            profit = profit_sub-200000;
            profit_sub = 200000;
            prize += prize*0.05;
        }
        if(profit>100000){
            profit = profit_sub-100000;
            profit_sub = 100000;
            prize += profit*0.075;
        }
        prize += profit_sub*0.1;
        return prize;
    }
}

运行结果:

请输入当前利润:10000
应发奖金:1000
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

谭浩强教授版《C程序设计》(第二版)P105 5.8企业发放的奖金根据利润提成(if)

谭浩强教授版《C程序设计》(第二版)P105 5.8企业发放的奖金根据利润提成。 利润I低于或等于10万元的,奖金可提10%;200000高于20万元的部分5%提成;400000I>1000000时...

【笔试】12、企业发放的奖金根据利润提成。

/** * 题目:企业发放的奖金根据利润提成。 * 利润(I)低于或等于10万元时,奖金可提10%; * 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的...

企业发放的奖金根据利润提成。

import java.util.Scanner; /*企业发放的奖金根据利润提成。 * 利润(I)低于或等于10万元时,奖金可提10%; * 利润高于10万元,低于20万元时,低于10...

企业发放的奖金根据利润提成

案例:企业发放的奖金根据利润提成。

自己用java代码实现的:“约瑟夫”问题

约瑟夫问题是个有名的问题: N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的人的序号为5,4,6,2,3。最后剩下1号。 代码如...

约瑟夫环问题 java代码实现(高效率)

问题来历编辑 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决...

java代码实现文件上传到linux服务器及问题汇总及解决(亲测可行)

近段时间java代码向服务器上传文件的代码。可是屡试不行。很是郁闷。最终还是完成了。自己也总结了许多上传中的错误及解决分析,都是自己自己总结的,若有什么理解错误,欢迎大家留下宝贵意见,还有很多不懂得大...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)