作业

作者: 剑眉星目cz | 来源:发表于2018-07-22 18:20 被阅读0次

    day5作业

    sum = 0
    d = 0
    a = int(input('请输入a的值:'))
    b = int(input('请输入相加数的个数:'))
    for i in range(b):
        d = d * 10 + a
        sum += d
        print(d,end=' ')
        if i != b-1:
            print('+',end=' ')
    print('=',sum)
    
    结果
    
    请输入a的值:3
    请输入相加数的个数:4
    3 + 33 + 333 + 3333 = 3702
    
    
    请输入a的值:6
    请输入相加数的个数:5
    6 + 66 + 666 + 6666 + 66666 = 74070
    
    a = int(input('请输入打印图形的数量:'))
    for b in range(1,a+1):
            print('@'*b)
            
    结果
    请输入打印图形的数量:4
    @
    @@
    @@@
    @@@@
    
    i = int(input('请输入打印图形的行数:'))
    for a in range(1,i+1):
        print(' '*(i-a),end='')
        print('@'*(2*a-1))
    
    结果
    请输入打印图形的行数:5
        @
       @@@
      @@@@@
     @@@@@@@
    @@@@@@@@@
    
    i = int(input('请输入打印图形的数目:'))
    for a in range(i):
        print('@'*(i-a))
        
    结果
    请输入打印图形的数目:4
    @@@@
    @@@
    @@
    @
    

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

    m = int(input('请输入一个正整数:'))
    n = int(input('请再输入一个正整数:'))
    i = 0
    if m > n:
        i = n
    i = m
    while  m % i != 0 or n % i != 0:
        i -= 1
    print(m,'和',n,'的最大公约数是',i)
    
    if m > n:
        i = m
    i = n
    while  i % m != 0 or i % n != 0:
        i += 1
    print(m,'和',n,'的最大公倍数是',i)
    
    结果
    请输入一个正整数:48
    请再输入一个正整数:124
    48 和 124 的最大公约数是 4
    48 和 124 的最大公倍数是 1488
    

    找出1000以内所有的完数

    for a in range(2,1000):
        i = 0
        for b in range(1,a):
            if a % b == 0:
                i += b
        if i == a:
            print(i)
            
    结果
    6
    28
    496
    

    输出9*9口诀

    for a in range(1,10):
        for b in range(1,a+1):
            print(b,'*',a,'=',b*a,end='  ')
            if a == b:
                print()
    
    结果
    1 * 1 = 1  
    1 * 2 = 2  2 * 2 = 4  
    1 * 3 = 3  2 * 3 = 6  3 * 3 = 9  
    1 * 4 = 4  2 * 4 = 8  3 * 4 = 12  4 * 4 = 16  
    1 * 5 = 5  2 * 5 = 10  3 * 5 = 15  4 * 5 = 20  5 * 5 = 25  
    1 * 6 = 6  2 * 6 = 12  3 * 6 = 18  4 * 6 = 24  5 * 6 = 30  6 * 6 = 36  
    1 * 7 = 7  2 * 7 = 14  3 * 7 = 21  4 * 7 = 28  5 * 7 = 35  6 * 7 = 42  7 * 7 = 49  
    1 * 8 = 8  2 * 8 = 16  3 * 8 = 24  4 * 8 = 32  5 * 8 = 40  6 * 8 = 48  7 * 8 = 56  8 * 8 = 64  
    1 * 9 = 9  2 * 9 = 18  3 * 9 = 27  4 * 9 = 36  5 * 9 = 45  6 * 9 = 54  7 * 9 = 63  8 * 9 = 72  9 * 9 = 81  
    
    

    一个五位数,判断它是不是回文数

    a = int(input('请输入一个五位数:'))
    if a > 9999 and a < 100000:
        if a//10000 == a%10 and a//1000%10 == a//10%10:
            print(a,'是回文数')
        else:
            print(a,'不是回文数')
    
    结果
    请输入一个五位数:12345
    12345 不是回文数
    
    请输入一个五位数:12521
    12521 是回文数
    

    打印菱形

    i = int(input('请输入打印菱形的数目:'))
    for a in range (-i+1,i):
        if a <= 0:
            print(' '*(-a),end='')
            print('@'*((2*i-1)+2*a))
        else :
            print(' '*a,end='')
            print('@'*((2*i-1)-2*a))
    
    结果
    请输入打印菱形的数目:6
         @
        @@@
       @@@@@
      @@@@@@@
     @@@@@@@@@
    @@@@@@@@@@@
     @@@@@@@@@
      @@@@@@@
       @@@@@
        @@@
         @
    

    输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数

    i = input('请输入字符:')
    a = len(i)
    s = 0
    n = 0
    d = 0
    for b in range(a):
        if ord(i[b]) >= 65 and ord(i[b]) <= 90:
            s +=1
        if ord(i[b]) >= 97 and ord(i[b]) <= 122:
            s += 1
        if ord(i[b]) >= 48 and ord(i[b]) <= 57:
            n +=1
        if ord(i[b]) == 32:
            d += 1
    print('字符中含有英文字母的个数是',s)
    print('字符中含有数字的个数是',n)
    print('字符中含有空格的个数是',d)
    
    结果
    请输入字符:chen ZhUo   123
    字符中含有英文字母的个数是 8
    字符中含有数字的个数是 3
    字符中含有空格的个数是 4
    

    列表作业

    list1 = [56, 78, 93, 52, 60, 39, 45]
    

    求列表中心元素

    a = len(list1)
    index = int(a/2)
    if a % 2 == 0:
        print(list1[index-1:index+1])
    else:
        print([list1[index]]))
    
    结果
    [52]
    

    求列表元素和

    a = 0
    for item in list1:
        a += item
    print(a)
    
    结果
    423
    

    输出所有奇数下标元素

    a = len(list1)
    b = []
    for index in range(a):
        if index % 2 != 0:
            b.append(list1[index])
    print(b)
    
    结果
    [78, 52, 39]
    

    输出值为奇数的元素

    b = []
    for item in list1:
        if item % 2 != 0:
            b.append(item)
    print(b)
    
    结果
    [93, 39, 45]
    

    将所有元素乘以二

    b = []
    for item in list1:
        item *= 2
        b.append(item)
    print(b)
    
    结果
    [112, 156, 186, 104, 120, 78, 90]
    

    将所有元素加到第一个元素中

    b = []
    for i in list1:
        b.append(i)
    list1[0] = b
    print(list1)
    
    结果
    [[56, 78, 93, 52, 60, 39, 45], 78, 93, 52, 60, 39, 45]
    

    将奇数位置元素存到b列表中,将偶数元素存到c列表中

    list1 = [56, 78, 93, 52, 60, 39, 45]
    a = len(list1)
    b = []
    for index in range(a):
        if index % 2 != 0:
            b.append(list1[index])
    print('b列表',b)
    c = []
    for item in list1:
        if item % 2 == 0:
            c.append(item)
    print('c列表',c)
    
    结果
    b列表 [78, 52, 39]
    c列表 [56, 78, 52, 60]
    

    将a列表的前5个元素复制到b列表中

    a = [56, 78, 93, 52, 60, 39, 45]
    b = []
    for item in range(5):
        b.append(a[item])
    print('a列表',a)
    print('b列表',b)
    
    结果
    a列表 [56, 78, 93, 52, 60, 39, 45]
    b列表 [56, 78, 93, 52, 60]
    

    有一个长度10的列表,列表内有10个不重复的数字,要求按从大到小排序

    str1 = [12, 36, 25, 17, 19, 50, 94, 61, 37, 65]
    print(len(str1))
    str1.sort()
    print(str1[::-1])
    
    结果
    10
    [94, 65, 61, 50, 37, 36, 25, 19, 17, 12]
    

    有一个长度是10的列表,要求删除某一个位置的元素

    str1 = [12, 36, 25, 17, 19, 50, 94, 61, 37, 65]
    b = len(str1)
    while b-1 != 0:
        for i in range(10):
            b = len(str1)
            print('请输入下标 0  - ',b-1,'的数字')
            a = int(input('>>>'))
            if a >= 0 and a < b:
                del str1[a]
                print(str1)
            else:
                break
    
    结果
    10
    [94, 65, 61, 50, 37, 36, 25, 19, 17, 12]
    请输入下标 0  -  9 的数字
    >>>5
    [12, 36, 25, 17, 19, 94, 61, 37, 65]
    请输入下标 0  -  8 的数字
    >>>6
    

    有一个长度是10的列表,按递增排列,用户输入一个数,插入适当的位置。

    str1 = [12, 17, 19, 25, 36, 37, 50, 61, 65, 94]
    print(str1)
    while True:
        c = len(str1)
        b = int(input('请输入一个数:'))
        for i in range(c-1):
            if b <= str1[i]:
                str1.insert(i, b)
                print(str1)
                break
            if b >= str1[c-1]:
                str1.append(b)
                print(str1)
                break
    
    结果
    [12, 17, 19, 25, 36, 37, 50, 61, 65, 94]
    请输入一个数:56
    [12, 17, 19, 25, 36, 37, 50, 56, 61, 65, 94]
    请输入一个数:100
    [12, 17, 19, 25, 36, 37, 50, 56, 61, 65, 94, 100]
    请输入一个数:11
    [11, 12, 17, 19, 25, 36, 37, 50, 56, 61, 65, 94, 100]
    请输入一个数:39
    

    把a列表的第三到第六之间的元素删除

    a = [12, 36, 25, 17, 19, 50, 94, 61, 37, 65]
    for i in range(5,3,-1):
        del a[i]
    print(a)
    
    结果
    [12, 36, 25, 17, 94, 61, 37, 65]
    

    已知a列表,b列表,定义一个c列表,要求c包含a,b数组中的数据且无重复值

    a = [12, 36, 25, 17, 19, 50, 94, 61, 37, 65]
    b = [17, 20, 38, 36, 88, 37, 75, 81, 64, 61]
    c = a + b
    print(c)
    c.sort()
    print(c)
    for f in range(15):
        if c[f] == c[f+1]:
            del c[f]
    print(c)
    
    结果
    [12, 36, 25, 17, 19, 50, 94, 61, 37, 65, 17, 20, 38, 36, 88, 37, 75, 81, 64, 61]
    [12, 17, 17, 19, 20, 25, 36, 36, 37, 37, 38, 50, 61, 61, 64, 65, 75, 81, 88, 94]
    [12, 17, 19, 20, 25, 36, 37, 38, 50, 61, 64, 65, 75, 81, 88, 94]
    

    相关文章

      网友评论

          本文标题:作业

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