2019-03-07作业

读程序,总结程序功能

1.

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

赋值numbers为1;
for循环语句:i的值是(0,20),取值20次,所以进行for循环进行20次:
当循环每进行一次numbers就乘以一次2;
输出结果为:每循环一次,numbers重新定义一次赋值(乘以2),第一次循环
numbers = numbers * 2 = 1 * 2 = 2 * * 1 = 2(第1次循环)
numbers = numbers * 2 = 2 * *1 * 2 = 2 * * 2 = 4(第2次循环)
numbers = numbers * 2 = 2 * * 2 * 2 = 2 * * 3 = 8(第3次循环)
......
......
......
numbers = numbers * 2 = 2 * *19 * 2 = 2 * * 20(第20次循环)
所以最终输出结果为:numbers = 2 * * 20
功能:求1乘以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;
whlie循环语句:条件满足num的值小于等于100时循环,每循环一次num的赋值重新赋值(在原来的基础上加1)
if条件语句:当满足num除以3或者除以7等于0且num除以21不等于0的条件时,summation重新赋值(在原来赋值的基础上加1);不满足时进入下一个循环
功能:求100以内能被3或者7整除但是不能被21整除的数有多少个

编程实现(for和while各写⼀遍):

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

a = 0
for b in range(1,101):
    a += b
print('和:',a,'平均数:',a/100)

a = 0
b = 1
while 0 < b <= 100:
    a += b
    b += 1
print('和:',a,'平均值:',a/100) 

2. 计算1-100之间能3整除的数的和

a = 0
for i in range(101):
    if i%3 == 0:
        a += i
print(a)        

a = 0
i = 1
while 0 < i <=100:
    if i%3 == 0:
        a += i
    i += 1
print(a)

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

a = 0
for i in range(101):
    if i%7 != 0:
        a += i
print(a)    

a = 0
i = 1
while 0 < i <=100:
    if i%7 != 0:
        a += i
    i += 1
print(a)

稍微困难

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

你可能感兴趣的:(2019-03-07作业)