python-实验5循环结构(2).doc_第1页
python-实验5循环结构(2).doc_第2页
python-实验5循环结构(2).doc_第3页
python-实验5循环结构(2).doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

此文档收集于网络,仅供学习与交流,如有侵权请联系网站删除实验五 循环结构(续)【实验目的】 1掌握range()函数的使用2. 掌握For语句的使用。3掌握循环嵌套的使用。4掌握一些常用的算法(求素数、穷举法、求和与乘积、递推法)。【实验内容】 0000000001、 填空(1) 在命令行中显示1 到10的数字 range(1,11) 。(2) 在命令行中显示 1到10的所有偶数 range(2,11,2) 。(3) 显示所有的大写字符。for i in range(65,91) :print chr(i) (4) 显示1-100能被3整除的数,并且每5个数打印一行。i=0 记录能被3整除的个数for j in range(1,101):if j%3=0:print j,i+=1if i%5=0:print2、输出斐波那契级数1、1、2、3、5、8、13,此级数项的规律是:前两项的值各为1,从第3项起,每一项是前2项的和。(要求一行输出6项)。(1) 当某项的数值大于或等于30000时结束。(2) 求前100项之和。学习资料(2)a=1b=1sum=2i=2 #计数while True: i+=1 #计数:第i次 c=a+b a=b b=c sum+=c if i=100: #完成第100次求和后退出循环 breakprint sum(1)a=1b=1print a,b,i=2 #计数while True:i+=1 #计数:第i次 c=a+b a=b b=c if c=30000: break print c, if i%6=0: print(1)1 1 2 3 5 813 21 34 55 89 144233 377 610 987 1597 25844181 6765 10946 17711 28657(2)9273726921930789991753、编写程序,输入一个数,判断该数是否为完数。例如6是一个完数,因为6=1+2+3。x=input(Enter an integer:)i=1while True: x=x-i i+=1 if x=i: print A perfect number. break if xi: print Not a perfect number. break4、完成程序,使之能在窗体上显示有规律的图形。for i in range(1,10): print (format(2*i-1)*str(i),17)x=*for i in range(1,8): if i4: print (format(15-2*i)*x,7)*号题变式:x=raw_input(Enter a character:)c=input(Enter the linage(an odd number):)d=str(c+1)for i in range(1,c+1): if ic/2+1: print (format(2*c+1-2*i)*x,+d)5、 编写程序,显示所有的水仙花数。(难点,嵌套循环)(1)最优法:for i in range(100,1000): c=i%10 #个位数 b=i/10%10 #十位数 a=i/10/10 #百位数 if i=a*3+b*3+c*3: print i(2)for i in range(1,10): for j in range(0,10): for k in range(0,10): if 100*i+10*j+k=i*3+j*3+k*3: print i*3+j*3+k*3(3)for i in range(100,1000): a=i/100 b=(i-100*a)/10 c=i-100*a-10*b if i=a*3+b*3+c*3: print i6、编程实现求11000中所有的素数并打印,要求每行打印10个元素。c=0for x in range(1,1000): if x=1: continue for i in range(2,x): if x%i=0: break else: print x, c+=1 if c%10=0: print7、输入一系列数字,并求和与求平均数.要求:(1)可以进行多次输入,并以“.“作为输入结束的标志。 (2)有容错功能,当输入非数字时,提示错误,并可以等待进行下一次的输入 (3)输入完成后可以进行求和与求平均数,并打印。c=0sum=0while True: x=raw_input(Enter:) while str.isdigit(x)=False and x!=.: x=raw_input(Error.Please enter a number:) if x=.: break sum=sum+float(x) c+=1ave=sum/cprint sum=%d%sum,average=%d%ave8、猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。程序分析:采取逆向思维的方法,从后往前推断。i=0y=1while True: i=i+1 y=(y+1)*2 if i=10: flag=False breakprint y附加:兔子问题古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?sum=2m=i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论