1826 - 课后习题5.8

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

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

题目输入

一个整数,当月利润。

题目输出

一个整数,奖金。

输入/输出样例

输入格式

900

输出格式

90

C语言解答

#include<stdio.h>
int main()
{
    int  a,r;
    scanf("%d",&a);

    if(a<=100000)
        r=0.1*a;
     else if(100000<a<=200000)
        r=0.075*(a-100000)+100000*0.1;
      else if(200000<a<=400000)
        r=0.05*(a-200000)+100000*(0.1+0.075);
    else if(400000<a<=600000)
        r=0.03*(a-400000)+100000*(0.1+0.075)+200000*0.05;
    else if(600000<a<=1000000)
        r=0.015*(a-600000)+100000*(0.1+0.075)+200000*0.05+200000*0.03;
    else if(a>1000000)
        r=0.01*(a-1000000)+100000*(0.1+0.075)+200000*(0.05+0.03)+400000*0.015;
   printf("%d",r);
return 0;
}

C++解答

#include<bits/stdc++.h>
using namespace std;
double a,sum;
int main()
{
	cin>>a;
	if(a<=100000)
	    sum=a/10;
	else
	{
		if(a<=200000)
		    sum=10000+(a-100000)/100*7.5;
		else
		{
			if(a<=400000)
			    sum=17500+(a-200000)/100*5;
			else
			{
				if(a<=600000)
				    sum=27500+(a-400000)/100*3;
				else
				{
					if(a<=1000000)
					    sum=33500+(a-600000)/100*1.5;
					else
					    sum=39500+(a-1000000)/100;
				}
			}
		}
	}
	cout<<sum;
	
	return 0;
}