day4作业

1,读程序,总结程序的功能:

numbers=1 
for i in range(0,20): 
 numbers*=2 
print(numbers) 

定义一个变量number为1,用for循环让number*=2做20次循环

比如1 * 2 * 2 * 2 ....

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)

定义两个变量summation为0和num=1,用while循环条件为num<=100,做循环,当num整除3,或者整除7,并且不能整除21,summation加1

,否则不加,退出判断,执行num加1 赋值给num 最后输出summation的值,只有满足判断条件时,summation才加1并赋值给summation。

3,1. 求1到100之间所有数的和、平均值

n = 0
for i in range(1,101):
    n = n+i
print('和为:',n)
print('平均值为:',n/100)

print('------------------------------------------------')

g = 0
z = 0
while g <= 100 :
    z = g + z
    g +=1
print('和为:',z)
print('平均值为:',z/100)

4,计算1-100之间能3整除的数的和

n = 0
for i in range(3,101,3):
    print(i)
    n = n+i
print('和为:',n)

g = 1
z = 0
while g <= 100 :
    if g % 3 == 0:
        z = g + z
    g +=1
print('和为:',z)

5,计算1-100之间不能被7整除的数的和

n = 0
for i in range(1,101,):
    if i % 7 != 0:
        print(i)
        n = n+i
print('和为:',n)

g = 1
z = 0
while g <= 100 :
    if g % 7 != 0:
        z = g + z
    g +=1
print('和为:',z)

5,求斐波那契数列中第n个数的值:1,1,2,3,5,8,13,21,34....

num = 0
b = 0
a = 0
c = 1
z = int(input('请输入你想要的数:'))
while num < (z+1)//3:
    a=b+c
    b=a+c
    c=a+b
    num +=1
if (z-1)%3 ==1:
    print(a)
elif (z-1)%3 ==2:
    print(b)
else:
    print(c)

6,判断101-200之间有多少个素数,并输出所有素数。判断素数的方法:用这个数分别除2到sqrt(这个
数),如果能被整除,则表明此数不是素数,反之是素数

d=0
m=0
h=0
for i in range(101,201):
    for z in range(2,i):
        if i%z ==0:
            m +=1
    if m > 0:
        print(i,'不是素数')
    else:
        print(i,'为素数')
        h +=1
    d=0
    m=0
print('有',h,'个素数')

7,有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的第20个分数
分子:上一个分数的分子加分母 分母: 上一个分数的分子 fz = 2 fm = 1 fz+fm / fz

f = 0
g = 1
h = 0
z = int(input('请输入你想要的数:'))
while num < (z+2)//3:
    a=b+c
    b=a+c
    c=a+b
    num +=1
while h < (z+2)//3:
    d=f+g
    f=d+g
    g=d+f
    h +=1
if (z+2)%3 ==0:
    print(a,'/',d)
elif (z+2)%3 ==1:
    print(b,'/',f)
else:
    print(c,'/',g)

8,给一个正整数,要求:1、求它是个位数 2.逆序打印出各位数字

num = int(input('请输入一个正整数:'))
n = 1
while num//(10**n) != 0 :
    n +=1
print(num,'是一个',n,'位数')

num1= str(num)
for i in num1:
    print(i)

你可能感兴趣的:(day4作业)