【良心出品】python基础100练习题.doc

上传人:大米 文档编号:556597181 上传时间:2022-09-26 格式:DOC 页数:39 大小:39.20KB
返回 下载 相关 举报
【良心出品】python基础100练习题.doc_第1页
第1页 / 共39页
【良心出品】python基础100练习题.doc_第2页
第2页 / 共39页
【良心出品】python基础100练习题.doc_第3页
第3页 / 共39页
【良心出品】python基础100练习题.doc_第4页
第4页 / 共39页
【良心出品】python基础100练习题.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《【良心出品】python基础100练习题.doc》由会员分享,可在线阅读,更多相关《【良心出品】python基础100练习题.doc(39页珍藏版)》请在金锄头文库上搜索。

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

2、tations(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%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?程序分析 分区间计算即可。profit

3、=int(input(Show me the money: )bonus=0thresholds=100000,100000,200000,200000,400000rates=0.1,0.075,0.05,0.03,0.015,0.01for i in range(len(thresholds): if profit=thresholdsi: bonus+=profit*ratesi profit=0 break else: bonus+=thresholdsi*ratesi profit-=thresholdsibonus+=profit*rates-1print(bonus)123456

4、7891011121314实例003:完全平方数题目 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?程序分析 因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:n=0while (n+1)*2-n*n=168: n+=1print(n+1)-85123456789思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。结合起来:n=0while (n+1)*2-n*nrawj: rawi,rawj=

5、rawj,rawiprint(raw)raw2=for i in range(3): x=int(input(int%d: %(i) raw2.append(x)print(sorted(raw2)123456789101112131415161718实例006:斐波那契数列题目 斐波那契数列。程序分析 斐波那契数列(Fibonacci sequence),从1,1开始,后面每一项等于前面两项之和。图方便就递归实现,图性能就用循环。# 递归实现def Fib(n): return 1 if n=2 else Fib(n-1)+Fib(n-2)print(Fib(int(input() # 朴素

6、实现target=int(input()res=0a,b=1,1for i in range(target-1): a,b=b,a+bprint(a)12345678910111213实例007:copy题目 将一个列表的数据复制到另一个列表中。程序分析 使用列表:,拿不准可以调用copy模块。import copya = 1,2,3,4,a,bb = a# 赋值c = a:# 浅拷贝d = copy.copy(a)# 浅拷贝e = copy.deepcopy(a)# 深拷贝a.append(5)a4.append(c)print(a=,a)print(b=,b)print(c=,c)prin

7、t(d=,d)print(e=,e)= RESTART: F:PyWorkspacePython100100examples007.py =a= 1, 2, 3, 4, a, b, c, 5b= 1, 2, 3, 4, a, b, c, 5c= 1, 2, 3, 4, a, b, cd= 1, 2, 3, 4, a, b, ce= 1, 2, 3, 4, a, b1234567891011121314151617181920212223实例008:九九乘法表题目 输出 9*9 乘法口诀表。程序分析 分行与列考虑,共9行9列,i控制行,j控制列。for i in range(1,10): for

8、 j in range(1,i+1): print(%d*%d=%2ld %(i,j,i*j),end=) print()1234实例009:暂停一秒输出题目 暂停一秒输出。程序分析 使用 time 模块的 sleep() 函数。import timefor i in range(4): print(str(int(time.time()-2:) time.sleep(1)1234实例010:给人看的时间题目 暂停一秒输出,并格式化当前时间。程序分析 同009.import timefor i in range(4): print(time.strftime(%Y-%m-%d %H:%M:%S

9、,time.localtime(time.time() time.sleep(1)12345实例011:养兔子题目 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?程序分析 我认为原文的解法有点扯,没有考虑3个月成熟的问题,人家还是婴儿怎么生孩子?考虑到三个月成熟,可以构建四个数据,其中:一月兔每个月长大成为二月兔,二月兔变三月兔,三月兔变成年兔,成年兔(包括新成熟的三月兔)生等量的一月兔。month=int(input(繁殖几个月?: )month_1=1month_2=0month_3=0month_eld

10、er=0for i in range(month): month_1,month_2,month_3,month_elder=month_elder+month_3,month_1,month_2,month_elder+month_3 print(第%d个月共%(i+1),month_1+month_2+month_3+month_elder,对兔子) print(其中1月兔:,month_1) print(其中2月兔:,month_2) print(其中3月兔:,month_3) print(其中成年兔:,month_elder)123456789101112实例012:100到200的素

11、数题目 判断101-200之间有多少个素数,并输出所有素数。程序分析 判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 用else可以进一步简化代码.import mathfor i in range(100,200): flag=0 for j in range(2,round(math.sqrt(i)+1): if i%j=0: flag=1 break if flag: continue print(i)print(nSimplify the code with elsen)for i in range(100,200): for j in range(2,round(math.sqrt(i)+1): if i%j=0: break else: print(i)123456789101112131415161718192021实例013:所有水仙花数题目 打印出所有的水

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 商业计划书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号