美文网首页
Day5作业

Day5作业

作者: zhazhaK丶 | 来源:发表于2018-07-22 14:31 被阅读0次

    1. 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

    num = '5'
    sum1 = 0
    x = int(input('请输入相加的次数'))
    for x in range(1,x + 1):
      n = num
      num *= x
      sum1 += int(num)
      num = n
    print(sum1)
    运行结果:
    请输入相加的次数5
    61725
    

    2.打印图形1

    @
    @@
    @@@
    @@@@

    num = 0
    while num < 5:
        x = '@' * num
        print(x,end='\n')
        num += 1
    
    num = 0
    while num < 6:
        x = '@' * num
        print(x,end='\n')
        num += 1
    

    3. 打印图形2

    #    @
    #   @@@
    #  @@@@@
    # @@@@@@@
    
    for a in range(1,5):
        for x in range(1,5 - a):
            print(end=' ')
        for y in range(1,2 * a):
            print('@',end='')
        print('')
    

    4. 打印图形3

    n = 3
    @@@
    @@
    @

    n = 3
    while n > 0:
        x = '@' * n
        print(x,end='\n')
        n -= 1
    

    5. 输⼊两个正整数m和n,求其最大公约数和最小公倍数

    m = int(input('请输入第一个整数:'))
    n = int(input('请输入第二个整数:'))
    if m > n:
        for a in range(1, n + 1):
            if m % a == 0 and n % a ==0:
                x = a
        print('最大公约数是%d' % x)
    else:
        for a in range(1, m + 1):
            if m % a == 0 and n % a ==0:
                x = a
        print('最大公约数是%d' % x)
    
    for a in range(1,m * n + 1):
        if a % m == 0 and a % n == 0:
            print('最小公倍数是%d' % a)
            break
    

    6. 一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.编程找出1000以内的所有完数

    sum1 = 0
    for a in range(1,1001):
        for b in range(1,a):
            if a % b == 0:
                sum1 += b
        if sum1 == a:
            print(sum1)
    

    7. 输出9*9口诀

    for x in range(1,10):
        for y in range(1,x+1):
            n = x * y
            print('%d*%d=%d' % (x,y,n),end=' ')
        print()
    

    1. 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

    num = int(input('请输入一个5位数:'))
    if num // 10000 == num % 10 and num // 1000 % 10 == num // 10 % 10:
        print('%d是一个回文数!' % num)
    else:
        print('%d不是一个回文数,请重新输入!' % num)
    

    2. 打印图形(菱形)

    # n = 4
    #    @
    #   @@@
    #  @@@@@
    # @@@@@@@
    #  @@@@@
    #   @@@
    #    @
    
    n = 4
    for a in range(1,n + 1):
        for x in range(1,n-a+1):
            print(end=' ')
        for y in range(1,2*a):
            print('@',end='')
        print('')
    for a in range(n-1):
        for x in range(a + 1):
            print(end=' ')
        for y in range(5 - 2 * a):
            print('@',end='')
        print('')
    

    3. 输入一行字符,分别统计出其中英文字⺟、空格、数字和其它字符的个数。

    str1 = input('请输入一行字符')
    letters = 0
    space = 0
    digit = 0
    others = 0
    for x in str1[:]:
        if x.isalpha():
            letters += 1
        elif x.isspace():
            space += 1
        elif x.isdigit():
            digit += 1
        else:
            others += 1
    print('字母有%d个,空格有%d个,数字有%d个,其他有%d个' % (letters,space,digit,others))
    

    相关文章

      网友评论

          本文标题:Day5作业

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