**-2

作者: 憧憬001 | 来源:发表于2018-11-10 15:10 被阅读0次
    1.控制台输入年龄,根据年龄输出不同的提示

    (例如:老年人,青壮年,成年人,未成年,儿童)

    while True:
        try:
            age = int(input("请输入年龄"))
            if 0 < age < 10:
                print("儿童")
            elif age < 18:
                print("未成年")
            elif age < 25:
                print("成年人")
            elif age < 40:
                print("青壮年")
            elif 60 <= age < 200:
                print("老年人")
            elif age > 200:
                print("神仙")   
        except:
            print("请输入正整数")
    
    2.计算5的阶乘 5!的结果是
    num = 5
    result = 1
    for i in range(1,num +1 ):
        result *= i
    print(result)
    
    >>>>
    120
    
    3.求1+2!+3!+...+20!的和

    程序分析:此程序只是把累加变成了累乘

    sum1 = 0   # 存储和
    for i in range(1, 21):
        result = 1   # 储存阶乘
        for j in range(i):
            result *= j+1
        sum1 += result
    print(sum1)
    
    >>>>
    2561327494111820313
    
    4.计算 1+1/2!+1/3!+1/4!+...1/20!=?
    sum1 = 0   # 存储和
    for i in range(1, 21):
        result = 1   # 储存阶乘
        result1 = 1  # 储存1/阶乘
        for j in range(i):
            result *= j+1
            result1 = 1 / result
        sum1 += result1
    print(sum1)
    
    >>>>
    1.7182818284590455
    
    5.循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果
    sum1 = 0
    while True:
        try:
            num = float(input("请输入大于0的数字"))
            if num > 0:
                sum1 += num
            elif num < 0:
                print("您输入的数字小于0,请重新输入")
            else:
                print(sum1)
                break
    
        except:
            print("您输入的不是数字,请重新输入")
    
    >>>>
    请输入大于0的数字9
    请输入大于0的数字2
    请输入大于0的数字5
    请输入大于0的数字-5
    您输入的数字小于0,请重新输入
    请输入大于0的数字python
    您输入的不是数字,请重新输入
    请输入大于0的数字1
    请输入大于0的数字0
    17.0
    
    6.求s=a+aa+aaa+aaaa+aa...a的值,

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

    a = float(input("请输入一个数字"))
    s = 0
    a1 = a
    num = int(input("请输入需要几个数相加"))
    for i in range(num):
        if num == 1:
            print(a)
        else:
            print(a)
        s += a
        a = a*10 + a1
    print(s)
    
    >>>>
    请输入一个数字2
    请输入需要几个数相加4
    2.0
    22.0
    222.0
    2222.0
    2468.0
    
    7.输入三个整数x,y,z,请把这三个数由小到大输出
    x = int(input("请输入第一个整数"))
    y = int(input("请输入第二个整数"))
    z = int(input("请输入第三个整数"))
    # 方法1
    if x < y and x < z:
        if y < z:
            print(x, y, z)
        else:
            print(x, z, y)
    elif y < x and y < z:
        if x < z:
            print(y, x, z)
        else:
            print(y, z, x)
    elif z < x and z < y:
        if x < y:
            print(z, x, y)
        else:
            print(z, y, x)
    
    
    # 方法2 需要用到列表
    list1 = [x, y, z]
    max_num = list1.index(max(list1))
    min_num = list1.index(min(list1))
    num1 = 0
    for i in range(3):
        if min(list1)< list1[i] < max(list1):
            num1 = i
    print(list1[min_num], list1[num1], list1[max_num])
    
    >>>>
    请输入第一个整数9
    请输入第二个整数5
    请输入第三个整数7
    5 7 9
    5 7 9
    
    8.控制台输出三角形
    n = int(input("请输入一个正整数"))
    i = 0
    while i < n:
        print("*"*(n-i))
        i += 1
    
    
    n = int(input("请输入一个正整数"))
    i = 0
    while i <= n:
        if i & 1 == 1:
            str1 = "*"*i
            print(str1.center(n, " "))
        i += 1
    
    >>>>
    请输入一个正整数5
    *****
    ****
    ***
    **
    *
    请输入一个正整数5
      *  
     *** 
    *****
    
    9.输出9*9口诀。 1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列
    # 方法1 while循环
    i = 1
    while i <= 9:
        j = 1
        while j <= i:
            print("%d*%d=%d " % (j, i, i*j), end="\t")
            j += 1
        i += 1
        print()   # 一行打印完换行
    
    # 方法2 for循环
    for i in range(1,10):
        for j in range(1,i+1):
            print("%d*%d=%d " % (j, i, i*j), end="\t")
        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  
    
    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 
    
    10.这是经典的"百马百担"问题,有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担,问有大,中,小马各几匹?
    # 根据数学知识可得:① 3x + 2y + 0.5z = 100
    #                 ② x  +  y  +  z  =100
    #                由一二可得 5x + 3y = 100
    for x in range(0, 100):
        for y in range(0, 100):
            if 5*x + 3*y == 100:
                z = 100 - x - y
                print("大马有%d匹,中马有%d匹,小马有%d匹" % (x, y, z))
                
    
    >>>>
    大马有2匹,中马有30匹,小马有68匹
    大马有5匹,中马有25匹,小马有70匹
    大马有8匹,中马有20匹,小马有72匹
    大马有11匹,中马有15匹,小马有74匹
    大马有14匹,中马有10匹,小马有76匹
    大马有17匹,中马有5匹,小马有78匹
    大马有20匹,中马有0匹,小马有80匹
    
    11.我国古代数学家张邱建在《算经》中出了一道“百钱买百鸡”的问题,题意是这样的: 5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。
    # 总想说点什么
    for x in range(0, 100):
        for y in range(0, 100):
            if 14*x + 8*y == 100:
                z = 100 - x - y
                print("公鸡有%d只,母鸡有%d只,雏鸡有%d只" % (x, y, z))
                
    
    >>>>
    公鸡有2只,母鸡有9只,雏鸡有89只
    公鸡有6只,母鸡有2只,雏鸡有92只
    
    12.小明单位发了100元的购物卡,

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

    for x in range(0, 100):
        for y in range(0, 100):
            for z in range(0, 100):
                if 15*x + 2*y + 5*z == 100:
                    print("洗发水有%d瓶,香皂有%d个,牙刷有%d个" % (x, y, z))
                    
    
    >>>>
    洗发水有0瓶,香皂有0个,牙刷有20个
    洗发水有0瓶,香皂有5个,牙刷有18个
    洗发水有0瓶,香皂有10个,牙刷有16个
    洗发水有0瓶,香皂有15个,牙刷有14个
    洗发水有0瓶,香皂有20个,牙刷有12个
    洗发水有0瓶,香皂有25个,牙刷有10个
    洗发水有0瓶,香皂有30个,牙刷有8个
    洗发水有0瓶,香皂有35个,牙刷有6个
    洗发水有0瓶,香皂有40个,牙刷有4个
    洗发水有0瓶,香皂有45个,牙刷有2个
    洗发水有0瓶,香皂有50个,牙刷有0个
    洗发水有1瓶,香皂有0个,牙刷有17个
    洗发水有1瓶,香皂有5个,牙刷有15个
    洗发水有1瓶,香皂有10个,牙刷有13个
    洗发水有1瓶,香皂有15个,牙刷有11个
    洗发水有1瓶,香皂有20个,牙刷有9个
    洗发水有1瓶,香皂有25个,牙刷有7个
    洗发水有1瓶,香皂有30个,牙刷有5个
    洗发水有1瓶,香皂有35个,牙刷有3个
    洗发水有1瓶,香皂有40个,牙刷有1个
    洗发水有2瓶,香皂有0个,牙刷有14个
    洗发水有2瓶,香皂有5个,牙刷有12个
    洗发水有2瓶,香皂有10个,牙刷有10个
    洗发水有2瓶,香皂有15个,牙刷有8个
    洗发水有2瓶,香皂有20个,牙刷有6个
    洗发水有2瓶,香皂有25个,牙刷有4个
    洗发水有2瓶,香皂有30个,牙刷有2个
    洗发水有2瓶,香皂有35个,牙刷有0个
    洗发水有3瓶,香皂有0个,牙刷有11个
    洗发水有3瓶,香皂有5个,牙刷有9个
    洗发水有3瓶,香皂有10个,牙刷有7个
    洗发水有3瓶,香皂有15个,牙刷有5个
    洗发水有3瓶,香皂有20个,牙刷有3个
    洗发水有3瓶,香皂有25个,牙刷有1个
    洗发水有4瓶,香皂有0个,牙刷有8个
    洗发水有4瓶,香皂有5个,牙刷有6个
    洗发水有4瓶,香皂有10个,牙刷有4个
    洗发水有4瓶,香皂有15个,牙刷有2个
    洗发水有4瓶,香皂有20个,牙刷有0个
    洗发水有5瓶,香皂有0个,牙刷有5个
    洗发水有5瓶,香皂有5个,牙刷有3个
    洗发水有5瓶,香皂有10个,牙刷有1个
    洗发水有6瓶,香皂有0个,牙刷有2个
    洗发水有6瓶,香皂有5个,牙刷有0个
    

    相关文章

      网友评论

          本文标题:**-2

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