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)