蓝桥杯-每日刷题-026

奖金提成

一、题目要求

  • 题目描述
    企业发放的奖金根据利润提成。
    利润I低于100000元的奖金可提10%;
    利润高于100000元,低于200000元的(100000 200000 40000 600000 I>1000000元的部分按1%提成。
    从键盘输入当月利润I,求应发奖金总数。
  • 输入格式
    输入有若干行,每行一个实数I,表示企业利润。
  • 输出格式
    对应输出可提取的奖金,结果保留整数。
  • 输入样例
    8000
    200000
    1000000
  • 输出样例
    800
    17500
    39500

二、完整代码

#include 
enum Lirun
{
    one = 100000,
    two = 200000,
    three = 400000,
    four = 600000,
    five = 1000000
};
int main()
{
    int i,sum;
    Lirun l;
    while (std::cin >> i)
    {
        if (i <= one)
            sum = 0.1 * i;
        if (i > one && i <= two)
            sum = 0.1 * one + 0.075 * (i - one);
        if (i > two && i <= three)
            sum = 0.1 * one + 0.075 * (two - one) + 0.05 * (i - two);
        if (i > three && i <= four)
            sum = 0.1 * one + 0.075 * (two - one) + 0.05 * (three - two) + 0.03 * (i - three);
        if (i > four && i <= five)
            sum = 0.1 * one + 0.075 * (two - one) + 0.05 * (three - two) + 0.03 * (four - three)+0.015*(i-four);
        if(i>five)
            sum = 0.1 * one + 0.075 * (two - one) + 0.05 * (three - two) + 0.03 * (four - three) + 0.015 * (five - four)+0.01*(i-five);
        std::cout << sum << std::endl;
    }
}

三、解法解释

因为今天刚学习了枚举,所以就趁热使用一下,其余的也都很基础。

你可能感兴趣的:(蓝桥杯,算法,职场和发展)