鱼C论坛

 找回密码
 立即注册
楼主: 不二如是

[每日一练] 算法2 ◉‿◉ 企业梯度利润提成

[复制链接]
发表于 2018-6-14 21:48:13 | 显示全部楼层
企业发放的奖金根据利润提成。
利润 (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% 提成
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-25 19:16:47 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-1 16:22:17 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-7-3 10:54:36 | 显示全部楼层
import java.util.Scanner;

public class test2 {
        public static void main(String[] args) {
                System.out.println("please enter a num:");
                Scanner sc = new Scanner(System.in);
                double profit = sc.nextDouble();
                double reward = getReward(profit);
                System.out.println("reward:" + reward);
        }

        static double getReward(double profit) {
                double reward = 0.0;
                if (profit <= 10) {
                        reward = profit * 0.1;
                } else if (profit < 20) {
                        reward = 10 * 0.1 + (profit - 10) * 0.075;
                } else if (profit < 40) {
                        reward = 10 * 0.1 + 10 * 0.075 + (profit - 20) * 0.05;
                } else if (profit < 60) {
                        reward = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + (profit - 40) * 0.03;
                } else if (profit < 100) {
                        reward = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + 20 * 0.03 + (profit - 60) * 0.015;
                } else {
                        reward = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + 20 * 0.03 + 40 * 0.015 + (profit - 100) * 0.01;
                }
                return reward;
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-3 22:23:09 | 显示全部楼层
想看看大神的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-11 14:18:54 | 显示全部楼层
buhuiya
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-26 08:31:24 From FishC Mobile | 显示全部楼层
666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-8-5 21:58:04 | 显示全部楼层
JavaScript
来个递归
<script>
    var array1 = [100000, 100000, 200000, 200000, 400000, 0];
    var array2 = [.1, .075, .05, .03, .015, .01];
    function calc(n, index, result)
    {
        //当 利润 <= 10W 直接计算, 不递归
        if (n <= array1[index]){
            result += n * array2[index];
            return result;
        }else{
            //如果超过一百万, 直接计算超出部分并退出
            if (index == 5){
                return result + (n * array2[index]);
            }
            //
            n -= array1[index];
            if (n <= array1[index]){
                result += n * array2[index];
                return result;
            }
            else {
                result += array1[index] * array2[index];
            }
            return calc(n, ++index, result)
        }
    }
    window.onload = function (){
        var i = prompt("输入利润: ")
        if (! i){
            alert("大哥, 输入数字, 阿拉伯那种~");
            return;
        }
        console.log(calc(i, 0, 0));
    };
</script>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-5 22:00:44 | 显示全部楼层
还是不二的算法好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-10 14:05:37 From FishC Mobile | 显示全部楼层
学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-12 11:31:48 | 显示全部楼层
本帖最后由 木Muk 于 2018-8-12 12:49 编辑

来个麻烦的
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>企业梯度利润提成</title>
    <script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
  </head>
  <body ng-app="app">
    <br />
    <center ng-controller="cal">
      <label>请输入当月利润: <input type="text" ng-model="profit" />万元</label>
      <p>发放奖金总数为: {{ bonus() }}万元</p>
    </center>
  </body>
  <script type="text/javascript">
    var app = angular.module('app', []);
    app.controller('cal', function($scope) {
      $scope.bonus = function() {
        if (Number($scope.profit) <= 10) {
          return String(Number($scope.profit)*0.1);
        } else if (Number($scope.profit) > 10 && Number($scope.profit) <= 20) {
          return String((Number($scope.profit) - 10) * 0.075 + 10 * 0.1);
        } else if (Number($scope.profit) > 20 && Number($scope.profit) <= 40) {
          return String((Number($scope.profit) - 20) * 0.05 + 10 * 0.075 + 10 * 0.1);
        } else if (Number($scope.profit) > 40 && Number($scope.profit) <= 60) {
          return String((Number($scope.profit) - 40) * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1);
        } else if (Number($scope.profit) > 60 && Number($scope.profit) <= 100) {
          return String((Number($scope.profit) - 60) * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1);
        } else {
          return String((Number($scope.profit) - 100) * 0.01 + 40 * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1);
        }
      }
    });
  </script>
</html>

确实有点重复,不过复制粘贴挺方便的
改一下吧
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>企业梯度利润提成</title>
    <script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
  </head>
  <body ng-app="app">
    <br />
    <center ng-controller="cal">
      <label>请输入当月利润: <input type="text" ng-model="profit" />万元</label>
      <p>发放奖金总数为: {{ bonus() }}万元</p>
    </center>
  </body>
  <script type="text/javascript">
    var app = angular.module('app', []);
    app.controller('cal', function($scope) {
      $scope.bonus = function() {
        var profit = Number($scope.profit);
        if (profit <= 10) {
          return String(profit*0.1);
        } else if (profit > 10 && profit <= 20) {
          return String((profit - 10) * 0.075 + 10 * 0.1);
        } else if (profit > 20 && profit <= 40) {
          return String((profit - 20) * 0.05 + 10 * 0.075 + 10 * 0.1);
        } else if (profit > 40 && profit <= 60) {
          return String((profit - 40) * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1);
        } else if (profit > 60 && profit <= 100) {
          return String((profit - 60) * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1);
        } else {
          return String((profit - 100) * 0.01 + 40 * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1);
        }
      }
    });
  </script>
</html>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-12 12:51:45 | 显示全部楼层
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>企业梯度利润提成</title>
    <script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
  </head>
  <body ng-app="app">
    <br />
    <center ng-controller="cal">
      <label>请输入当月利润: <input type="text" ng-model="profit" />万元</label>
      <p>发放奖金总数为: {{ bonus() }}万元</p>
    </center>
  </body>
  <script type="text/javascript">
    var app = angular.module('app', []);
    app.controller('cal', function($scope) {
      $scope.bonus = function() {
        var bonus = 0;
        var profit = Number($scope.profit);
        if(profit > 100) {
          bonus += (profit-100) * 0.01;
          profit = 100;
        }
        if(profit > 60) {
          bonus += (profit-60) * 0.015;
          profit = 60;
        }
        if(profit > 40) {
          bonus += (profit-40) * 0.03;
          profit = 40;
        }
        if(profit > 20) {
          bonus += (profit-20) * 0.05;
          profit = 20;
        }
        if(profit > 10) {
          bonus += (profit-10) * 0.075;
          profit = 10;
        }
        if(profit <= 10) {
          bonus += profit * 0.1;
        }
        return String(bonus);
      }
    });
  </script>
</html>

说好的输入呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2018-8-21 18:02:15 | 显示全部楼层
lllllllllllllllllllllllllllllllllllllllllllllllllllll
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-22 22:22:04 | 显示全部楼层
看看

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-8-28 10:17:40 | 显示全部楼层
键盘输入函数怎么写哟
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-7 18:50:48 | 显示全部楼层
65654
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-20 16:11:47 | 显示全部楼层
<!DOCTYPE html>
<html>
<head>
        <title>2</title>
        <meta charset="utf-8">
</head>
<body>
        <input type="text" name="利润" id="monly"><input type="button" name="计算奖金" value="计算奖金" onclick="jishu()">
        <p id="op"></p>
        <script type="text/javascript">
                var monnum=0
                function jishu(){
                        monnum=0
                        var mon=document.getElementById("monly").value;
                        var op=document.getElementById("op")
                        monly(mon)
                        op.innerHTML="你的奖金是:"+monnum
                }
                function monly(m){
                        // i表示剩余的钱// 将计算的奖金放入monnum
                        var i
                        if (m>100*10000){
                                i=100*10000
                                m=m-100*10000;
                                monnum+=m*0.01;}
                        else if (m>60*10000 && m<100*10000) {
                                i=60*10000
                                m=m-60*10000;
                                monnum+=m*0.015;}
                        else if (m>40*10000 && m<60*10000) {
                                i=40*10000
                                m=m-40*10000;
                                monnum+=m*0.03;}
                        else if (m>20*10000 && m<40*10000) {
                                i=20*10000
                                m=m-20*10000;
                                monnum+=m*0.05;}
                        else if (m>10*10000 && m<20*10000) {
                                i=10*10000
                                m=m-10*10000;
                                monnum+=m*0.075;}
                        else {
                                m=m-10*10000;
                                monnum+=m*0.10;}
                        if(i>10*10000){
                                monly(i)
                        }
                        
                }
        </script>
</body>
</html>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-21 10:26:05 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-9-23 10:18:30 | 显示全部楼层
emm
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-9-23 20:29:01 | 显示全部楼层
支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-21 22:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表