美文网首页
day6-作业

day6-作业

作者: xdxh | 来源:发表于2018-09-30 15:59 被阅读0次
    1.控制台输入年龄,根据年龄输出不同的提示(例如:老年人,青壮年,成年人,未成年,儿童)

    代码

    age = int(input('请输入年龄:'))
    if age < 12:
        print('儿童')
    elif age < 18:
        print('未成年')
    elif age < 25:
        print('成年人')
    elif age < 40:
        print('青壮年')
    else:
        print('老年人')
    

    测试结果

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

    代码

    n = 5
    product = 1
    for x in range(5):
        product *= n
        n -= 1
    print('product=',product)
    

    测试结果

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

    代码

    sum = 0
    for num in range(1,21):
        product = 1
        while num > 0:
            product *= num
            num -= 1
        sum += product
    print('sum=',sum)
    

    测试结果

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

    代码

    sum = 0
    for num in range(1,21):
        product = 1
        while num > 0:
            product *= 1/num
            num -= 1 
        sum += product
    print(sum)
    

    测试结果

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

    代码

    sum = 0
    num = int(input('请输入一个数:'))
    
    while num >= 0:
        if num > 0:
            while num > 0:
                sum += num
                num -= 1
        else:
            break
        num = int(input('请输入一个数:'))
    print('累加结果=',sum)
    

    测试结果

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

    代码

    number = 0
    sum = 0
    n = int(input('请输入a的值(1~9):'))
    for num in range(1,n+1):
        number += n* 10 ** (num-1)
        sum += number
    print('sum=',sum)
    

    测试结果

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

    代码

    max = 0
    middle = 0
    min = 0
    
    x = int(input('请输入第1个数:'))
    y = int(input('请输入第2个数:'))
    z = int(input('请输入第3个数:'))
    
    max = x 
    min = x
    if max < y :
        max = y
        if max < z:
            max = z
    elif max < z:
        max = z
    
    if min > y :
        min = y
        if min > z:
            min = z
    elif min > z:
        min = z
    
    if x != min and x != max:
        middle = x
    elif y != min and y != max:
        middle = y
    else:
        middle = z
    
    print(min,middle,max,sep = ',')
    

    测试结果

    7.PNG
    8.控制台输出三角形

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

    代码

    # n = 5时             n = 4
    # *****               ****
    # ****                ***
    # ***                 **
    # **                  *
    # *
    
    n = int(input('请输入n的值:'))
    while n > 0:
        print('*' * n)
        n -= 1
    

    测试结果

    8-a.PNG

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

    代码

    # n = 5               n = 7
    #   *                    *
    #  ***                  ***
    # *****                *****
    #                     *******
                        
    m = 1
    n = int(input('请输入n的值(n为奇数):'))
    while m <= n:
        print(('*' * m).center(2*n))
        m += 2
    
    

    测试结果

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

    代码

    for i in range(1,10):
        for j in range(1,i+1):
                print(i,'*',j,'=',i*j,sep='',end=' ')
        print('\n')
    

    测试结果

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

    代码

    for big_horse in range(0,101):
        for middle_horse in range(0,101):
            for small_horse in range(0,101):
                if big_horse*3 + middle_horse*2 + small_horse*0.5 ==100 and big_horse+middle_horse+small_horse ==100:
                    print('大马',big_horse,'匹,中马',middle_horse,'匹,小马',small_horse,'匹',sep='')
    

    测试结果

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

    代码

    for cock in range(0,101):
        for hen in range(0,101):
            for chick in range(0,101):
                if cock*5 + hen*3 + chick*1/3 == 100 and cock + hen + chick ==100 :
                    print('公鸡',cock,'只,母鸡',hen,'只,雏鸡',chick,'只',sep='')
    

    测试结果

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

    代码

    count = 0
    for shampoo in range(0,7):
        for soap in range(0,51):
            for toothbrush in range(0,21):
                if shampoo*15 + soap*2 + toothbrush*5 ==100:
                    count +=1
                    print('洗发水',shampoo,'瓶,香皂',soap,'块,牙刷',toothbrush,'把',sep='')
    print('共有',count,'种购买方法',sep='')
    

    测试结果

    3.PNG

    相关文章

      网友评论

          本文标题:day6-作业

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