zoukankan      html  css  js  c++  java
  • java:根据利润表计算奖金所得

    代码实现:

    public class Hello {
    	public static void main(String srgs[]) {
                Lirun(100);
    	    Lirun2(100);
            }
    
            public static double Lirun(double lirun) {
    		/**
    		 * 输入lirun的单位为万元
    		 */
    		double sum = 0;
    		if (lirun <= 10) {
    			sum = lirun * 0.1;
    
    		} else if (lirun > 10 && lirun <= 20) {
    			sum = (lirun - 10) * 0.075 + 10 * 0.1;
    		} else if (lirun > 20 && lirun <= 40) {
    			sum = (lirun - 20) * 0.05 + (20 - 10) * 0.075 + 10 * 0.1;
    		} else if (lirun > 40 && lirun <= 60) {
    			sum = (lirun - 40) * 0.03 + (40 - 20) * 0.05 + (20 - 10) * 0.075 + 10 * 0.1;
    		} else if (lirun > 60 && lirun <= 100) {
    			sum = (lirun - 60) * 0.015 + (60 - 40) * 0.03 + (40 - 20) * 0.05 + (20 - 10) * 0.075 + 10 * 0.1;
    		} else if (lirun > 100) {
    			sum = (lirun - 100) * 0.001 + (100 - 60) * 0.015 + (60 - 40) * 0.03 + (40 - 20) * 0.05 + (20 - 10) * 0.075
    					+ 10 * 0.1;
    		}
    		System.out.println("当前利润为:" + lirun + "万元,应得奖金为:" + sum + "万元!");
    		return sum;
    	}
    
    	public static double Lirun2(double lirun) {
    		/**
    		 * 输入lirun的单位为万元 定义两个double类型的数组,分别存入利润值分段和对应的奖金比例。
    		 */
    		double sum = 0;
    		double tmp = lirun; // 定义一个临时变量
    		boolean flag = false; // 定义一个flag,用来标记是否已经找到利润值表的对应元素,然后根据这个flag进行下一个阶段的奖金值计算
    		double[] lirunArr = { 10, 20, 40, 60, 100 };
    		double[] Arrnum = { 0.1, 0.075, 0.05, 0.03, 0.015 };
    		for (int i = lirunArr.length - 1; i >= 0; i--) { // 遍历利润值
    			if (tmp > lirunArr[i]) { // 判断当前的临时变量(输入的利润值)是否大于利润值表的最大元素,目的找到输入的利润值的取值范围
    				tmp = tmp - lirunArr[i];
    				sum += tmp * Arrnum[i];
    				flag = true;
    			} else if (flag && i >= 1) { // 按照利润值表中各阶段对应的奖金比例计算奖金。
    				tmp = lirunArr[i] - lirunArr[i - 1];
    				sum += tmp * Arrnum[i];
    			} else if (i == 0) { // 理论上需要定义数组时输入一个0的元素,但是如果不定义,那就得利用i==0的特殊情况进行区别处理,以处理第二阶段数组越界的情况。
    				tmp = lirunArr[i];
    				sum += tmp * Arrnum[i];
    			}
    
    //			System.out.println("i=" + i + ";tmp=" + tmp + ";sum=" + sum);
    		}
    		System.out.println("当前利润为:" + lirun + "万元,应得奖金为:" + sum + "万元!");
    		return sum;
    	}
    }
    

      

  • 相关阅读:
    java全栈day01-03注释、关键字与标识符
    java全栈day01-02入门案例
    java全栈day01-01
    Python中list常用的10个基本方法----list的灰魔法
    python开发[第二篇]------str的7个必须掌握的方法以及五个常用方法
    Python开发【第二篇】:Python基本数据类型
    爬虫相关
    存储库-MongoDB简单的操作
    解析库-beautifulsoup模块
    拉勾网自动发送简历
  • 原文地址:https://www.cnblogs.com/songqingbo/p/10634926.html
Copyright © 2011-2022 走看看