# 【程序1】
# # 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
#程序分析:组成所有的排列,然后去除不满足条件的排列。使用count计数,将每次的循环排列的结果放在list列表中,最后统一打印出来
count=0
list=[]
for a in range(1,5):
for b in range(1,5):
for c in range(1,5):
if(a!=b) and (b!=c)and(c!=a):
count=count+1
list.append(a+b*10+c*100)
print("总数是",count)
print("可以组成的不重复数据是:",list)
print(len(list))
# 例2:题目:企业发放的奖金根据利润提成。利润(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%提成,从键盘输入当月利润I,求应发放奖金总数?
#方法一.使用if 以及while,使用 try except捕获错误,若输入字符非数字,会把错误抛出来,
isYoN='Y'
while isYoN=='Y':
try:
profit=float(input("请输入当月利润(单位万元):"))
except ValueError as e:
print("报错,输入值非数字:",e)
print(type(profit))
if profit<=10:
bonus=0.1*profit
elif 10<profit<=20:
bonus=10*0.1+(profit-10)*0.075
elif 20<profit<=40:
bonus=10*0.1+10*0.075+(profit-20)*0.05
elif 40<profit<=60:
bonus=10*0.1+10*0.075+20*0.05+(profit-40)*0.03
elif 60<profit<=100:
bonus=10*0.1+10*0.075+20*0.05+20