李昊泽


私信TA

用户名:thomans

访问量:2744

签 名:

等  级
排  名 5599
经  验 1519
参赛次数 1
文章发表 5
年  龄 13
在职情况 学生
学  校 龙江龙山中学
专  业

  自我简介:

TA的其他文章

解题思路:原题:

企业发放的奖金根据利润提成。利润低于或等于100000元的,奖金可提10%;
利润高于100000元,低于200000元(100000<I≤200000)时,低于100000元的部分按10%提成,高于100000元的部分,可提成 7.5%;
200000<I≤400000时,低于200000元部分仍按上述办法提成,(下同),高于200000元的部分按5%提成;
400000<I≤600000元时,高于400000元的部分按3%提成;

600000<I≤1000000时,高于600000元的部分按1.5%提成;
I>1000000时,超过1000000元的部分按1%提成。从键盘输入当月利润I,求应发奖金总数。


我们题目所中,可看出奖金是按照利润所发的。我们可以使用if分支语句来使用。要得到利润,我们要看清题目。

我们可以假设一个x;

首先,题目说“利润低于或等于100000,奖金可提10%”,那么我们可以计算:x<=x*0.1(10%)

接下来我们可以再看“利润高于100000元,低于200000元(100000<x<=200000),低于100000的部分按10%提成,高于100000元的部分,可提成7.5%",可计算成100000*0.1+(x-100000)*0.075;则可以以上面的理解延续下去(详细看代码)

注意事项:

不能了解题目表面的理解,要深沉的了解题目意思,最好记录一下草稿,先算结果

计算比较复杂,需要耐心
参考代码:

#include<iostream>

using namespace std;


int main()

{

    int x;

    cin>>x;

    if(x<=100000)

    {

        cout<<x*0.1;

    }

    else if(x>100000&&x<=200000)

    {

        cout<<100000*0.1+(x-100000)*0.075;

    }

    else if(x>200000&&x<=400000)

    {

        cout<<100000*0.1+100000*0.075+(x-200000)*0.05;//因为是大于200000,那么我们要先算出100000的10%和另一个100000的7.5%

    }

    else if(x>400000&&x<=600000)

    {

        cout<<100000*0.1+100000*0.075+200000*0.05+(x-400000)*0.03;//因为是大于400000,以上面的200000为例后,减去还另一个200000*5%

    }

    else if(x>600000&&x<=1000000)

    {

        cout<<100000*0.1+100000*0.075+200000*0.05+200000*0.03+(x-600000)*0.015;//以此类推,那么还是剩下200000*5%,另一个200000*3%

    }

    else

    {

        cout<<100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(x-1000000)*0.01;

    }//以此类推,那么减去后还剩400000,乘以1.5%,再减去(x-1000000)*1%由此得出结果

    return 0;

}

//本人代码已过,可放心使用哟

 

0.0分

8 人评分

  评论区

  • «
  • »