美文网首页
作业004:列表基础2

作业004:列表基础2

作者: yydafx | 来源:发表于2019-11-18 23:36 被阅读0次
    1.一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?
    count = 0
    a = (8848130 / 0.08)
    # print(a)
    while True:
        if a // 2 != 0:
            count += 1
            a = a // 2 + a % 2
            # print(a, end=' ')
        elif a // 2 == 0:
            break
    print('对折%d次'%count)
    

    第1题运行结果

    对折27次
    
    2. 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
    a, b = 1, 1
    num = int(input('请输入月份:'))
    if num == 1 or num == 2:
        print('兔子总数为:', 2)
    else:
        for _ in range(num-3):
            a, b = b, a + b
        print('兔子总数为:', (a+b)*2)
    

    第2题运行结果

    请输入月份:7
    兔子总数为: 26
    
    3. 将一个正整数分解质因数。例如:输入90,打印出90=2x3x3x5。
    4. 输入两个正整数m和n,求其最大公约数和最小公倍数。 程序分析:利用辗除法。
    m = int(input('请输入任意正整数:'))
    n = int(input('请输入任意正整数:'))
    x, y = m, n
    while True:
        if m < n:
            m, n = n, m
        if m % n != 0:
            m, n = n, m % n
        else:
            print('最大公约数为:',n)
            print('最小公倍数为:', int(x*y/n))
            break
    
    

    第4题运行演示

    请输入任意正整数:24
    请输入任意正整数:64
    最大公约数为: 8
    最小公倍数为: 192
    
    5. 一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3. 编程 找出1000以内的所有完数
    for i in range(2, 1000):
        num = 0
        for j in range(1, i):
            if i % j == 0:
                # print(i, j, end='')
                num += j
        if i == num:
            print(i, end=', ')
    

    第5题运行结果

    6, 28, 496, 
    
    6.输入某年某月某日,判断这一天是这一年的第几天? 程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
    7. 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。求输入的四位整数加密后的值
    nums = int(input('请输入任意四位整数:'))
    a1 = int(nums // 1000 + 5) % 10
    a2 = int(nums % 1000 // 100 + 5) % 10
    a3 = int(nums % 100 // 10 + 5) % 10
    a4 = int(nums % 10 + 5) % 10
    a1, a2, a3, a4 = a4, a3, a2, a1
    x = '%d%d%d%d' % (a1, a2, a3, a4)
    print(x)
    

    第7题运行演示

    请输入任意四位整数:6799
    4421
    
    8. 获取第n个丑数。 什么是丑数: 因子只包含2,3,5的数
    '''
    6 =1* 2*3  -> 丑数
    2 = 1*2  -> 丑数
    7 = 1*7 -> 不是丑数
    1, 2, 3, 4, 5, 6, 8,9,10, 12 ….
    '''
    

    相关文章

      网友评论

          本文标题:作业004:列表基础2

          本文链接:https://www.haomeiwen.com/subject/nzngbctx.html