一:奖金
题目描述
企业发放的奖金根据利润提成。利润低于或等于 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
数据范围
对于 100% 的数据,保证都在 int 范围内,且答案都为整数。
提示说明
用 Switch 要比用 if 的看起来更清晰。
来源/分类(难度系数:一星)
完整代码展示:
# coding=utf-8
a=int(input())
if a<=100000:
sum=a*0.1
elif 100000<a<=200000:
sum=10000+(a-100000)*0.075
elif 200000<a<=400000:
sum=10000+7500+(a-200000)*0.05
elif 400000<a<=600000:
sum=10000+7500+10000+(a-400000)*0.03
elif 600000<a<=1000000:
sum=10000+7500+10000+6000+(a-600000)*0.015
else:
sum=10000+7500+10000+6000+6000+(a-1000000)*0.01
print(int(sum))
# coding=utf-8
a=int(input())
if a<=100000:
sum=a*0.1
elif 100000<a<=200000:
sum=10000+(a-100000)*0.075
elif 200000<a<=400000:
sum=10000+7500+(a-200000)*0.05
elif 400000<a<=600000:
sum=10000+7500+10000+(a-400000)*0.03
elif 600000<a<=1000000:
sum=10000+7500+10000+6000+(a-600000)*0.015
else:
sum=10000+7500+10000+6000+6000+(a-1000000)*0.01
print(int(sum))
代码解释:
“a=int(input()) ”,导入用户的当月月利润a。
“if a<=100000:
sum=a*0.1
elif 100000<a<=200000:
sum=10000+(a-100000)*0.075
elif 200000<a<=400000:
sum=10000+7500+(a-200000)*0.05
elif 400000<a<=600000:
sum=10000+7500+10000+(a-400000)*0.03
elif 600000<a<=1000000:
sum=10000+7500+10000+6000+(a-600000)*0.015
else:
sum=10000+7500+10000+6000+6000+(a-1000000)*0.01 ”,按照题目要求将对应a的分成赋给sum。
“print(int(sum)) ”,打印sum。
运行效果展示:
二:贪心的小明
题目描述
小明是个热爱生活的孩子。他听说银行的年利率为 100% ,也就是说他存入100 元钱,一年后可以取出共计 200 元钱。
但是贪心的小明并不满足于此,他发现如果他将 100 元钱先存入半年,取出 150 元后再存入,一年可以取出共计 225 元钱。
贪心的小明想要赚取更多的钱,于是他准备在一年中取 N 次钱,问你存入 100 元钱一年后可以取出多少钱?
输入
一行一个正整数 N ,表示取钱的次数。
输出
输出存入 100 元钱一年后可以取出多少钱(答案保留 6 位小数)。
样例输入1
2
样例输出1
225.000000
提示
1≤N≤10^6
来源/分类(难度系数:一星)
循环结构
完整代码展示:
# coding=utf-8
a=int(input())
b=100
c=1
while c<a+1:
b=b*(1+1/a)
c+=1
print("{:.6f}".format(b))
# coding=utf-8
a=int(input())
b=100
c=1
while c<a+1:
b=b*(1+1/a)
c+=1
print("{:.6f}".format(b))
代码解释:
“a=int(input()) ”,导入用户取钱的次数a。
“b=100
c=1
while c<a+1:
b=b*(1+1/a)
c+=1 ”,令b为初始本金,c为循环密码子。当c<a+1时:b=b*(1+1/a),b*1即返还本金,b*(1/a)即为利润。每循环一次,c+1,直至c==a+1,跳出整个while循环。
“print("{:.6f}".format(b)) ”,打印b的最终结果,并保留6位小数。
运行效果展示:
(声明:以上内容均为原创)