实验四 循环结构
【实验目的】
1.掌握For语句和while循环语句的使用。 2.掌握循环的规则及其执行过程。
3.掌握如何控制循环条件,防止死循环或不循环。
【实验内容】
1.编写程序,找出7的倍数中十位数为2的所有3位数。 x=100 或: while x<1000: x=100 y=x/100 while x<1000: a=(x-100*y)/10 if x%7==0 and x//10%10==2: z=x-100*y-10*a print x if (10*y+a-2*z)%7==0 and a==2: x+=1 print x 或: x+=1 for x in range(100,1000): else: if x%7==0 and x//10%10==2: x+=1 print x
2.编写程序用Print语句输出2000年至2500年间的所有闰年,要求每行输出8个。 y=2001 count=0 flag=True while flag:
if y%4==0 and y%100!=0 or y%400==0: if count%8==0: print print y, y+=1 count+=1 else:
y+=1 if y==2500: flag=False
3.编写程序解决爱因斯坦台阶问题:有人走一台阶,若以每步走两级则最后剩下一级;若每步走三级则剩两级;若每步走四级则剩三级;若每步走五级则剩四级;若每步走六级则剩五级;若每步走七级则刚好不剩。问台阶至少共有多少级? L=[]
for x in range(0,1000):
if x%2==1 and x%3==2 and x%4==3 and x%5==4 and x%6==5 and x%7==0: L.append(x) print min(L)
至少共有119级
4.我国有13亿人口,如果按人口年增长0.8%计算,多少年后将达到26亿? n=13 y=0
while n<26: y+=1
n=n*(1+0.008) print y
(87年)
5.编程计算1!+2!+3!+...+10!的结果。 i=0 或: sum=0 sum=0 fac=1 fac=1 while i<10: for i in range(1,11): i=i+1 fac=fac*i fac=fac*i sum=sum+fac sum=sum+fac print sum print sum (4037913)
6.编写程序判断一个数是否是素数(质数)。(最简便的方法) n=input(\"Enter a number:\") if n<2:
print False if n==2:
print True
for i in range(2,n): #for虽然是循环,但也有条件的性质 if n%i==0: print False
break #一定要break else:
print True
7.编程实现猜数字游戏。(最简便的方法) import random
n=random.randint(1,100) while True:
g=input(\"Enter a number:\") if g==n:
print \"Bingo!\" break if g print \"Too big.\" 因篇幅问题不能全部显示,请点此查看更多更全内容