当前位置: 首页 > 工具软件 > Punch > 使用案例 >

Python——第四天的Gut Punch

锺离韬
2023-12-01

这一章将回顾一下上一章的作业:

'''1、将0-100所有3的倍数相加'''
i = 0
sum = 0
while i <= 100:
    if i % 3 == 0:
        print(i)
        sum += i
    i += 1
print(sum)

运行结果:

0
3
6
9
12
15
18
21
24
27
30
33
36
39
42
45
48
51
54
57
60
63
66
69
72
75
78
81
84
87
90
93
96
99
1683

进程已结束,退出代码0
'''2、将0-100所有3的倍数相加 含有3的 相加'''

i = 0
sum = 0
while i <= 100:
    if (i % 3 == 0) or ( i % 10 == 3) or ( i // 10 == 3):
        print(i)
        sum += i
    i += 1
print(sum)

运行结果:

0
3
6
9
12
13
15
18
21
23
24
27
30
31
32
33
34
35
36
37
38
39
42
43
45
48
51
53
54
57
60
63
66
69
72
73
75
78
81
83
84
87
90
93
96
99
2178

进程已结束,退出代码0
'''
3、奇数排序思想:先判断十位数上的大小,再排个位数上的大小
46,37,42
37,46,42
37,42,46
'''

a = 46
b = 37
c = 42
a10 = a // 10
b10 = b // 10
c10 = c // 10
print(a10, b10, c10)

if a10 > b10 and a10 > c10:
    print(f"最大的数就是a:{a}")
elif b10 > c10 and b10 > a10:
    print(f"最大的数就是b:{b}")
elif c10 > a10 and c10 > b10:
    print(f"最大的数就是c:{c}")
elif a10 == b10:
    if (a % 10) > (b % 10):
        print("a大于b")
    elif (a % 10) == (b % 10):
        print("a等于b")
    else:
        print("a小于b")
elif a10 == c10:
    if (a % 10) > (c % 10):
        print("a大于c")
    elif (a % 10) == (c % 10):
        print("a等于c")
    else:
        print("a小于c")
elif b10 == c10:
    if (b % 10) > (c % 10):
        print("b大于c")
    elif (b % 10) == (c % 10):
        print("b等于c")
    else:
        print("b小于c")

运行结果:

4 3 4
a大于c

进程已结束,退出代码0
'''
4、归并排序
a = 46, b = 37, c = 42, d = 39
把ab放在一组,把cd放在一组
ab选出较大,cd选出较大值,然后 再把ac放在一起比较,选出谁是最大打印出来
同样的方法选出最小打印出来
'''
a = 46
b = 237
c = 142
d = 99

# a比b大 b被淘汰
if a > b:
    # c比d大
    if c > d:
        # bd被淘汰 直接比较a和c的大小
        if a > c:
            print("a最大")
        elif a == c:
            print("ac相等,且最大")
        else:
            print("c最大")

    elif c == d:
        if a > c:
            print("a最大")
        elif a == c:
            print("acd相等,且最大")
        else:
            print("cd最大")

    # c小于d c被淘汰
    else:
        if a > d:
            print("a最大")
        elif a == d:
            print("ad相等,且最大")
        else:
            print("d最大")

elif a == b:
    # c比d大
    if c > d:
        # bd被淘汰 直接比较a和c的大小
        if a > c:
            print("ab最大")
        elif a == c:
            print("abc相等,且最大")
        else:
            print("c最大")

    elif c == d:
        if a > c:
            print("ab最大")
        elif a == c:
            print("abcd相等,且最大")
        else:
            print("cd最大")

    # c小于d c被淘汰
    else:
        if a > d:
            print("ab最大")
        elif a == d:
            print("abd相等,且最大")
        else:
            print("d最大")

# b大于a   a被淘汰
else:
    # c比d大
    if c > d:
        # bd被淘汰 直接比较a和c的大小
        if b > c:
            print("b最大")
        elif b == c:
            print("bc相等,且最大")
        else:
            print("c最大")

    elif c == d:
        if b > c:
            print("b最大")
        elif b == c:
            print("bcd相等,且最大")
        else:
            print("cd最大")

    # c小于d c被淘汰
    else:
        if b > d:
            print("b最大")
        elif b == d:
            print("bd相等,且最大")
        else:
            print("d最大")

运行结果:

b最大

进程已结束,退出代码0

Gut Punch:
“这个名字的意思是‘由内脏(Gut)制成的混合饮料(Punch)’,但是同时也描述了饮用时的感受(重击腹部)。”

 类似资料: