Day_04作业

作业1:功能为求2的20次方

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

作业2:功能为计算1-100内有多少个整数是3或者7的倍数,但不是21的倍数

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)

作业3:求1-100之间所有数的和、平均值

# for循环
sum1 = 0
average1 = 0
for x in range(1,101):
    sum1 += x

average1 = sum1/x
print(sum1)
print(average1)

# while循环
num2 = 1
sum2 = 0
average2 = 0
while num2<=100:
    sum2+=num2
    num2+=1

average2 = sum2/(num2-1)
print(sum2)
print(average2)


5050
50.5
5050
50.5

作业4:计算1-100之间能被3整除的数的和

# for循环
sum3 = 0
for x in range(1,101):
    if x%3==0:
        sum3+=x
print(sum3)

# while循环
num4 = 1
sum4 = 0
while num4<=100:
    if num4%3==0:
        sum4+=num4
    num4+=1
print(sum4)


1683
1683

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

# for循环
sum5 = 0
for x in range(1,101):
    if x%7!=0:
        sum5+=x
print(sum5)

# while循环
num6 = 1
sum6 = 0
while num6<=100:
    if num6%7!=0:
        sum6+=num6
    num6+=1
print(sum6)


4315
4315

作业6:第number个月的兔子总共有多少

month = int(input())  #输入月份
pre_1 = 1  #当前数字的前一个数
pre_2 = 1  #当前数字的钱二个数
current = 0  #当前数
for x in range(1, month + 1):
    if x == 1 or x == 2:
        current = 1
        continue
    # 根据前两个数计算当前数
    current = pre_1 + pre_2
    # 更新前两个数
    pre_2 = pre_1
    pre_1 = current
print('第%d个月兔子对数:%d' % (month, current))

作业7:判断101-200之间的素数个数

# 取出101-200之间的所有数
import math
num1 = 0
for number in range(101, 201):
    count = 0
    # 判断取出来的number是不是素数
    for x in range(2, int(math.sqrt(number)) + 1):
        if number % x == 0:
            count += 1
            # 只要在2~number开方之间有一个能够被number整除,那这个number不是素数
            break  # 循环嵌套中的break和continue,结束的是离其最近的循环。
    # 如果2number开方一个能够被number整除的数都没有,number才是素数
    if count == 0:
        num1 += 1
        print(number)
print('101-200之间的素数个数:%d' % num1)

作业8:打印水仙花数

# 取出所有的三位数100-999
for x in range(100, 1000):
    ge_wei = x % 10
    shi_wei = x // 10 % 10
    bai_wei = x // 100
    if x == ge_wei**3 +shi_wei**3 + bai_wei**3:
        print('%d是水仙花数' % x)

作业9:求数列的第20个数的分子分母

m = 1
n = 2
for x in range(1,21):
    t=n
    n=m+n
    m=t
num = n / m
print('分子是%d'%(n))
print('分母是%d'%(m))
print(num)

作业10:求正整数的位数和逆序打印各位数字

number = int(input())
str1 = str(number)
str2 = ''
print('%d是%d位数' % (number, len(str1)))
for x in range(len(str1)):
    str2 = str2 + str1[-x-1]
    # 逆序打印
    # str2 = str1[::-1]
print(str2)

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