案例
世界杯案例
需求:
世界杯案例,世界杯小组赛的比赛规则是我们的球队与其他三支球队进行比赛,然后根据总成绩(积分)确定出线资格。小组赛球队实力已知(提示用户输入各球队实力),我们通过一个数字表示。如果我们赢1局得3分,平一局得1分,输一局得0分,最终求球队总成绩。
思路:
转换人话:整体就是四个球队,比赛,每个球队的实力 -----人工输入,用数字表示。
然后,根据每个球队的实力数,判断 大小, 两两对比, 大的 + 3分,相等的 +1分, 小的 +0分。
比方:四个人身高,身高就是实力,一个人 2米,一个人1.8米,一个人1.6米。一个人1.5米。
比高低吧,高的 +3分,同样高的 +1分,最低的 +0分。(其他的也可以比体重,比钱多少之类的,随机发挥呗,万变不离其宗)
下面继续案例的解析:
首先 输入每个球队的实力:----下面数字 20 10 20 30 随便写的哈,不用管。
我们的球队实力:20
1号球队的实力:10
2号球队的实力:20
3号球队的实力:30
然后 开始一个个对比了,根据对比结果,+ 分数(3分 1分 0分)
如果:我们 > 1号球队,赢了,得3分
我们 == 2号球队,平局,得1分
我们 < 3号球队,输了,得0分
则小组赛最终结果 = 3 + 1 + 0 = 4分
其实各种案例,需求,都是根据人类现实生活中,遇到的各种情况,设计出来的,把自己代入其中,思考,行动,解决,最后就可以完成。
代码:
# 1、提示用户输入我们球队与其他三个球队的实力
a = int(input('请输入我们球队的实力值:'))
b = int(input('请输入1号球队的实力值:'))
c = int(input('请输入2号球队的实力值:'))
d = int(input('请输入3号球队的实力值:'))
# 2、开始比赛,求每次比赛的成绩
avsb = (a > b) * 3 + (a == b)
avsc = (a > c) * 3 + (a == c)
avsd = (a > d) * 3 + (a == d)
# 3、总成绩
score = avsb + avsc + avsd
# 4、输出总成绩
print(f'我们球队最终的总成绩:{score}')
图示:
注意:
知识点:布尔类型转换为整型,True => int(True) = 1,False => int(False) = 0。这是手工类型转换,在Python中,如果布尔类型参与算术运算,则会发生自动类型转换。