美文网首页
day5作业

day5作业

作者: 上邪5415 | 来源:发表于2018-08-25 09:37 被阅读0次

    1.控制台输入年龄,根据年龄输出不同的提示(例如:老年人,青壮年,成年人,未成年,儿童)

    age = int(input('请输入你的年龄:'))
    if age > 60:
        print('老年人')
    elif age >= 30:
        print('青壮年')
    elif age >= 18:
        print('成年人')
    elif age >= 14:
        print('未成年')
    else:
        print('儿童')
    

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

    n = 1
    for x in range(1,6):
      n *=x
    print(n)
    

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

    sum = 0
    for x in range(1,21):
        n=1
        for y in range(1,x+1):
            n *= y
        sum += n
    print(sum)
    

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

    sum = 0
    for x in range(1,4):
        n=1
        for y in range(1,x+1):
            n *= y
        sum += 1/n
    print(sum)
    

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

    sum=0
    while True:
        n = int(input('请输入一个数字:'))
        if not n:
            break
        sum+=n
    print(sum)
    

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

    n=int(input('请输入相加个数:'))
    a=int(input('请输入数字a:'))
    sum=0 
    for x in range(1,n+1):
        sum+=str(a)*x
    print(sum)
    

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

    x = int (input('请输入x的值:'))
    y = int (input('请输入y的值:'))
    z = int (input('请输入z的值:'))
    if x >= y:
        if x>= z and z>=y:
            print('x,y,z从小到大的顺序为:',y,z,x)
        elif x>= z and z<=y:
            print('x,y,z从小到大的顺序为:',z,y,x)
        else:
            print('x,y,z从小到大的顺序为:',y,x,z)
    else:
        if y>= z and x>=z:
            print('x,y,z从小到大的顺序为:',z,x,y)
        elif y>= z and x<=z:
            print('x,y,z从小到大的顺序为:',x,z,y)
        else:
            print('x,y,z从小到大的顺序为:',x,y,z)
    

    8.控制台输出三角形


    控制台输出三角形
     a.左对齐:
    n = int(input('请输入n的大小'))
    if n>=1:
        for x in range(1,n+1):
            print('*'*(n+1-x))
    else:
        print('输入的n=%d不满足要求'%(n))
    b.居中:
    n = int(input('请输入n的大小:'))
    if n>=1 and n % 2:
        for x in range(1,n+1,2):
            str1='*'*x
            print(str1.center(n,' '))
    else:
        print('输入的n=%d不满足要求'%(n))
    

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


    九九乘法表
    n=int(input('请输入乘法表的行列数:'))
    if n>=1:
        for i in range(1,n+1):
            for j in range(1,i+1):
                print("%d*%d=%d"%(i,j,i*j),end="|")
                if j==i:
                    print(' ')
    else:
        print('不满足条件')
    

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

    for x in range(0,101):
        for y in range(0,101-x):
            z=100-x-y
            if 3*x+2*y+0.5*z==100:
                print('大马%d匹,中马%d匹,小马%d匹'%(x,y,z))
    

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

        for y in range(0,101-x):
            z=100-x-y
            if 5*x+3*y+z==100:
                print('公鸡数量为%d只,母鸡数量为%d只,雏鸡数量为%d'%(x,y,z))
    
    

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

    for a in range(0,7):
        for b in range (0,int((100-15*a)/2+1)):
            c=int((100-15*a-2*b)/5)
            if 15*a+2*b+5*c==100:
                print('洗发水有%d个,香皂有%d个,牙刷有%d个'%(a,b,c))
    

    相关文章

      网友评论

          本文标题:day5作业

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