#有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? number = (1 ,2,3,4) count = 0 for i in number:#for i in range(1,5) for j in number: for k in number: if i !=j and i != k and j != k : count += 1 print(i ,j , k) print("一共有%s种组合"%count)
利润(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,求应发放奖金总数?
初级版
profits = input("请输入当月利润:") profit = int(profits) if profit <= 100000 : bonus = profit * 0.1 elif 100000< profit <=200000: bonus = 100000*0.1 + (profit-100000)*0.075 elif 200000 < profit <= 400000: bonus = 100000*0.1 + 100000*0.075 + (profit-200000)*0.05 elif 400000 < profit <= 600000: bonus = 100000*0.1 +100000*0.075 + 200000*0.05 + (profit-400000)*0.03 elif 600000 < profit <= 1000000: bonus = 100000*0.1 +100000*0.075 + 200000*0.05 + 200000*0.03 +(profit-600000)*0.015 elif 1000000 < profit: bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015 + (profit-1000000)*0.01 print("你应得的奖金为:",bonus)
进阶版
while True: #增加循环可多次输入 profits = input("请输入当月利润:") if profits != "q" and profits != "Q": #增加一个判断使程序可以退出并增加一个隐形的判断Q try: #抓取有可能由于输入错误导致的报错 profit = int(profits) if profit <= 100000 : bonus = profit * 0.1 elif 100000< profit <=200000: bonus = 100000*0.1 + (profit-100000)*0.075 elif 200000 < profit <= 400000: bonus = 100000*0.1 + 100000*0.075 + (profit-200000)*0.05 elif 400000 < profit <= 600000: bonus = 100000*0.1 +100000*0.075 + 200000*0.05 + (profit-400000)*0.03 elif 600000 < profit <= 1000000: bonus = 100000*0.1 +100000*0.075 + 200000*0.05 + 200000*0.03 +(profit-600000)*0.015 elif 1000000 < profit: bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015 + (profit-1000000)*0.01 print("你应得的奖金为:",bonus) print("输入 q 结束查询") except Exception : print("对不起你输入的信息有误,请输入当月利润,或输入 q 退出") else: print("结束查询") break
我数学不好,只能想一个笨办法来解决
#题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? for a in range(0,10000): b = (a+100)**0.5 #思路;如果b是一个平方数,那么它的开方应该是一个一位小数的数字,如:121开方后是11.0,如果是小数点两位,那么它不可能是一个完全开方数 q=len(str(b).split(".")[1]) #所以把b这个浮点数按小数点分开,如果小数点后面是一位,那么它包含了所以的完全平方数和可能不是的完全平方数 if q == 1: c = (a+100+168)**0.5 w=len(str(c).split(".")[1]) if w == 1: #再次筛选,那么是c完全平方数的概率也就极大增加了,到底有多大,请看结果。验证后没有错误答案, print(a)
import time while True: a = input("请输入某年某月某日,(如:2016-08-06):") if a != "q": try: c= time.strptime(a,"%Y-%m-%d") #把获取的时间转换成元组形式并获取数据 print("这是%s年的第%s天"%(a[0:4],c.tm_yday)) except Exception: print("输入有误,请重新输入,退出请输入q") else: print("已退出") break
while True: a = input("请输入三个整数,并用逗号隔开,如:2,5,4 (退出请输入 q ):") if a != "q": try: b = a.split(",") r = int(b[0]) #int也有一个好处,就是判断它是否为空或者特殊字符,是则报错 w =int(b[1]) e = int(b[2]) c=[] c.append(r) #c里的内容必须是int类型,因为b是字符串,那么b.sort排序 会把10排到5后面,因为10在b里是字符串,它没有5大 c.append(w) c.append(e) c.sort() if len(b) >3: #判断是否输入数大于三位 print("请输入三位整数,退出请输入 q ") continue print("您输入的数%s从小到大的排序为:%s ,%s ,%s"%(a,c[0],c[1],c[2])) except Exception: print("输入有误,请重新输入,退出请输入 q ") else: print("已退出") break
6.
1
原文:https://www.cnblogs.com/huiguizhe/p/12070592.html