美文网首页
day5作业

day5作业

作者: 13147abc | 来源:发表于2018-10-19 21:12 被阅读0次

    2.计算5的阶乘 5!的结果是

    sum1 = 1
    for i in range(1,6):
        sum1 *= i
    print(sum1)
    - 结果为120
    

    3.求1+2!+3!+...+20!的和 1.程序分析:此程序只是把累加变成了累乘。

    total = 0
    for x in range(1,21):
        sum1 = 1
        for i in range(1,x+1):
            sum1 *= i
        total += sum1
    print(total)
    - 结果为2561327494111820313
    

    4.计算 1+1/2!+1/3!+1/4!+...1/20!=?

    total = 0
    for x in range(1,21):
        sum1 = 1
        for i in range(1,x+1):
            sum1 *= 1/i
        total += sum1
    print(total)
    - 结果为1.7182818284590455
    

    5.循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。

    sum1 = 0
    while True:
        num = float(input('请输入一个大于0的数字,输入0结束: '))
        if not num:
            break
        sum1 += num
    
    print(sum1)
    

    6.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。

    n = int(input('请输入相加数的个数:'))
    a = int(input('请输入a的值: '))
    sum1 = 0
    for i in range(1,n+1):
        digit = (n+1-i)*a*10**(i-1)
        sum1 += digit
    print(sum1)
    

    7.输入三个整数x,y,z,请把这三个数由小到大输出。

    x = int(input('请输入整数x: '))
    y = int(input('请输入整数y: '))
    z = int(input('请输入整数z: '))
    num_list = [x,y,z]
    num_list.sort()
    for i in range(3):
        print(num_list[i])
    

    8.控制台输出三角形

    a.根据n的值的不同,输出相应的形状
    n = 5时 n = 4

    *****               ****
    ****                ***
    ***                 **
    **                  *
    *
    

    n = int(input('请输入行数: '))
    for i in range(n):
    str1 = ''*(n-i)
    print(str1)

    b.根据n的值的不同,输出相应的形状(n为奇数)
    n = 5 n = 7

      *                    *
     ***                  ***
    *****                *****
                        *******
    n = int(input('请输入一个奇数: '))
    seq = int((n+1)/2)
    for i in range(1,seq+1):
        str1 = '*'*(2*i-1)
        print(str1)
    

    9.输出9*9口诀。 1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。

    for i in range(1,10):
        for j in range(1,i+1):
            product = i * j
            print('%d × %d = %d' % (i,j,product),end='  ')
        print('\n')
    

    10.这是经典的"百马百担"问题,有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担,问有大,中,小马各几匹?

    x = 0
    while x <= 100:
        x += 1
        y = 0
        while y <= 100:
            y += 1
            if (5*x + 3*y) == 100:
                z = 4*x + 2*y
                print(x,y,z)
    

    11.我国古代数学家张邱建在《算经》中出了一道“百钱买百鸡”的问题,题意是这样的: 5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。

    x = 0
    while x <= 100:
        x += 1
        y = 0
        while y <= 100:
            y += 1
            if 7*x + 4*y == 100:
                z = 6*x + 3*y
                print('公鸡:%d, 母鸡:%d,雏鸡:%d' % (x,y,z))
    

    12.小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元整好花掉,可如有哪些购买结合?

    x = 0
    while 15*x <= 100:
        y = 0
        while 15*x + 2*y <= 100:
            z = 0
            while 15*x + 2*y + 5*z <= 100:
                if 15*x + 2*y + 5*z == 100:
                    print(x,y,z)
                z += 1
            y += 1
        x += 1
    
    

    相关文章

      网友评论

          本文标题:day5作业

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