最新python基础100练习题.doc

最新python基础100练习题.doc

ID:60216764

大小:141.50 KB

页数:40页

时间:2020-12-04

最新python基础100练习题.doc_第1页
最新python基础100练习题.doc_第2页
最新python基础100练习题.doc_第3页
最新python基础100练习题.doc_第4页
最新python基础100练习题.doc_第5页
资源描述:

《最新python基础100练习题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、__________________________________________________实例001:数字组合题目有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?程序分析遍历全部可能,把有重复的剃掉。total=0foriinrange(1,5):forjinrange(1,5):forkinrange(1,5):if((i!=j)and(j!=k)and(k!=i)):print(i,j,k)total+=1print(total)12345678简便方法用itertools中的permutations即可。impor

2、titertoolssum2=0a=[1,2,3,4]foriinitertools.permutations(a,3):print(i)sum2+=1print(sum2)12345678实例002:“个税计算”题目企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于1

3、00万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?程序分析分区间计算即可。profit=int(input('Showmethemoney:'))bonus=0thresholds=[100000,100000,200000,200000,400000]rates=[0.1,0.075,0.05,0.03,0.015,0.01]foriinrange(len(thresholds)):ifprofit<=thresholds[i]:bonus+=profit*rates[i]profit=0breakelse:bonus+=th

4、resholds[i]*rates[i]profit-=thresholds[i]bonus+=profit*rates[-1]print(bonus)1234567891011121314收集于网络,如有侵权请联系管理员删除__________________________________________________实例003:完全平方数题目一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?程序分析因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:n=0while(n+1)*

5、*2-n*n<=168:n+=1print(n+1)----------85123456789思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。结合起来:n=0while(n+1)**2-n*n<=168:n+=1foriinrange((n+1)**2):ifi**0.5==int(i**0.5)and(i+168)**0.5==int((i+168)**0.5):print(i-100)1234567实例004:这天第几天题目输入某年某月某

6、日,判断这一天是这一年的第几天?程序分析特殊情况,闰年时需考虑二月多加一天:defisLeapYear(y):return(y%400==0or(y%4==0andy%100!=0))DofM=[0,31,28,31,30,31,30,31,31,30,31,30]res=0year=int(input('Year:'))month=int(input('Month:'))day=int(input('day:'))ifisLeapYear(year):DofM[2]+=1foriinrange(month):res+=DofM[i]print(res+day)

7、12345678910111213收集于网络,如有侵权请联系管理员删除__________________________________________________实例005:三数排序题目输入三个整数x,y,z,请把这三个数由小到大输出。程序分析练练手就随便找个排序算法实现一下,偷懒就直接调函数。raw=[]foriinrange(3):x=int(input('int%d:'%(i)))raw.append(x)foriinrange(len(raw)):forjinrange(i,len(raw)):ifraw[i]>raw[j]:raw[i],raw

8、[j]=raw[j],r

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。