day5 作业(分支和循环)
2018-12-28 本文已影响0人
_最美不是下雨天_
1.读程序,总结程序的功能:
numbers=1
for i in range(0,20):
numbers*=2#numbers=numbers*2
print(numbers)
功能:求2的20次方
2.
summation=0
num=1
while num<=100:
if (num%3==0 or num%7==0) and num%21!=0:
summation += 1
num+=1
print(summation)
功能:求100以内能被3或者7整除,但是不能被21整除的数的个数
3.求1到100之间所有数的和、平均值
sum1=0
for i in range(1,101):
sum1+=i
average1=sum1/100
print(sum1,average1)#使用for循环
num1=1
sum2=0
while num1<101:
sum2+=num1
num1+=1
average2=sum2/100
print(sum2,average2)#while方法
4.计算1-100之间能3整除的数的和
sum1=0
for i in range(1,101):
if i%3==0:
sum1+=i
print(sum1)#使用for循环
num1=1
sum2=0
while num1<101:
if num1%3==0:
sum2+=num1
num1+=1
print(sum2)#while方法
5.计算1-100之间不不能被7整除的数的和
sum1=0
for i in range(1,101):
if i%7!=0:
sum1+=i
print(sum1)#使用for循环
num1=1
sum2=0
while num1<101:
if num1%7!=0:
sum2+=num1
num1+=1
print(sum2)#while方法
6.求斐波那契数列中第n个数的值:1,1,2,3,5,8,13,21,34....
num2=int(input('请输入您需要求的位置'))
num3=0
sum3=1
i=0
#list1=[]
while i<=num2-2:
num3,sum3=sum3,num3+sum3
# list1.append(sum3)
i+=1
print(sum3)
#print(list1[num2-2])
7.判断101-200之间有多少个素数,并输出所有素数。判断素数的方法:用一个数分别除2到sqrt(这个数),如果能被整除,则表明此数不不是素数,反之是素数
count=0
for i in range(101,201):
for n in range(2,int(i/2)):
if i%n==0:
break
else:
print(i)
count+=1
print('总个数为:',count)
8.打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153是
一个水仙花数,因为153 = 1^3 + 5^3 + 3^3
num=100
while num<1000:
a=num//100
b=num//10%10
c=num%10
if num==a**3+b**3+c**3:
print(num)
num+=1
# 输出所有三位水仙花数
9.有一分数序列列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列列的第20个分数分子:上一个分数的分子加分母 分母: 上一个分数的分子 fz = 2 fm = 1 fz+fm / fz
fz=1
fm=1
i=0
while i<20:
fz,fm=fz+fm,fz
i+=1
print(fz)
10.给一个正整数,要求:1、求它是几位数 2.逆序打印出各位数字
num2=input('请输入一个正整数:')
print(len(num2),num2[::-1])