预览加载中,请您耐心等待几秒...
1/2
2/2

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

python编程案例教程课后答案-Python编程练习题学习汇总实例⼀:数学计算简述:这⾥有四个数字,分别是:1、2、3、4提问:能组成多少个互不相同且⽆重复数字的三位数?各是多少?Python解题思路分析:可填在百位、⼗位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满⾜条件的排列。(for循环)代码实现:1list=[]#定义⼀个空的列表⽤来存储⽣产的数字2foriinrange(1,5):#定义百位数3forjinrange(1,5):#定义⼗位数4forkinrange(1,5):#定义个位数5ifi!=jandj!=kandi!=k:6num=i*100+j*10+k7print(num)8list.append(num)#将⽣成的数字加⼊到list列表中9result_num=len(list)#统计列表中元素的个数10print("可以组合的个数为%d"%(result_num))实例1实例⼆:关于数轴和长整型数据类型的练习简述:企业发放的奖⾦根据利润提成。利润(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,求应发放奖⾦总数?Python解题思路分析:请利⽤数轴来分界及定位。并要注意定义时需要把奖⾦定义成长整型的数据类型。代码实现:1profit=int(input("请输⼊您的净利润:"))2arr=[1000000,600000,400000,200000,100000,0]3Money_rate=[0.01,0.015,0.03,0.05,0.075,0.1]4bonus=05foriinrange(0,6):6ifprofit>arr[i]:#判断净利润的范围7bonus+=(profit-arr[i])*Money_rate[i]#奖⾦的计算8print((profit-arr[i])*Money_rate[i])9profit=arr[i]#重新复制净利润,进⾏低阶段判断10print(bonus)ViewCode实例三:平⽅数的操作练习简述:⼀个整数,它加上100和加上268后都是⼀个完全平⽅数提问:请问该数是多少?Python解题思路分析:在10000以内判断,将该数加上100后再开⽅,加上268后再开⽅,如果开⽅后的结果满⾜如下条件,即是结果。说明:sqrt()⽅法返回数字x的平⽅根,sqrt()是不能直接访问的,需要导⼊math模块,通过静态对象调⽤该⽅法importmathforiinrange(10000):x=int(math.sqrt(i+100))y=int(math.sqrt(i+268))ifx*x==i+100andy*y==i+268:print(i)ViewCode实例四:⽇期计算,编程练习简述:要求输⼊某年某⽉某⽇提问:求判断输⼊⽇期是当年中的第⼏天?Python解题思路分析:我们就以3⽉5⽇这⼀天为例。⾸先把前两个⽉的加起来,然后再加上5天即本年的第⼏天。这⾥有⼀种特殊的情况,就是闰⽉,遇到这种情况且输⼊⽉份⼤于2时需考虑多加⼀天。如果不是很明⽩,可以看下边的python源码。year=int(input("请输⼊年份:"))month=int(input("请输⼊⽉份:"))day=int(input("请输⼊天:"))months=(0,31,59,90,120,151,181,212,243,273,304,334)#按⽉份统计该⽉份前的天数if0<month<=12:sum=months[month-1]else:print("⽇期输⼊错误!")sum+=daya=0#定义⼀个中间变量if(year%400==0)or((year%4==0)and(year%100!=0)):#判断年份是否是闰年a=1if(a==1)and(month>2):sum+=1print("今天是第%s天"%sum)ViewCode持续更新中……