*TQC+ 程序语言 Python 3 _ 409 得票数计算 *
说明: 某次选举有两位候选人,分别是No.1: Nami、No.2: Chopper。
请撰写一程序,输入五张选票,输入值如为1即表示针对1号候选人投票;
输入值如为2即表示针对2号候选人投票,如输入其他值则视为废票。
每次投完後需印出目前每位候选人的得票数,最後印出最高票者为当选人;
如最终计算有相同的最高票数者或无法选出最高票者,显示
【=> No one won the election.】。
-------------------------------
输入与输出会交杂如下,输出的部份以粗体字表示(程序执行状况撷图)
2
Total votes of No.1: Nami = 0
Total votes of No.2: Chopper = 1
Total null votes = 0
1
Total votes of No.1: Nami = 1
Total votes of No.2: Chopper = 1
Total null votes = 0
8
Total votes of No.1: Nami = 1
Total votes of No.2: Chopper = 1
Total null votes = 1
2
Total votes of No.1: Nami = 1
Total votes of No.2: Chopper = 2
Total null votes = 1
2
Total votes of No.1: Nami = 1
Total votes of No.2: Chopper = 3
Total null votes = 1 => No.2 Chopper won the election.
python解题一: 考试上机作答没问题,但现实状况不符。
nami_vote = 0
chopper_vote = 0
null_vote = 0
for i in range(5): #for 回圈。五次投票
vote = int(input())
if vote == 1:
nami_vote += 1
elif vote == 2:
chopper_vote += 1
else:
null_vote += 1
print('Total votes of No.1: Nami = ', nami_vote)
print('Total votes of No.2: Chopper = ', chopper_vote)
print('Total null votes = ', null_vote)
if nami_vote > chopper_vote:
print('=> No.1 Nami won the election.')
elif chopper_vote > nami_vote:
print('=> No.2 Chopper won the election.')
else:
print('=> No one won the election.')
#这种方法在废票多於前两位候选人会出现,bug 。错判 某位候选人照样胜出。
null 3
nami 2
chopper 1. 判定: nami胜出的谬误
**解法二:**
nami,chop,null= 0,0,0
for i in range(5):
vote = int(input())
if vote == 1: nami +=1
elif vote == 1: chop +=1
elif: null +=1
print("Total vote of No.1: Nami =",nami)
print("Total vote of No.2: Chopper =",chop)
print("Total nul votes =" ,null)
if null >= nami and null >=chop or nami == chop: #先界定各种废票
print("=> No one won the election.")
elif nami> chop:
print("=> No.1 Nami won the election.")
else:
print("=> No.2 Chopper won the election.")
** 解法三:**
nami,chop,null =0,0,0
for i in range(5):
vote = input()
if vote == "1":nami +=1
elif vote =="2": chop +=1 #把 投票变成字串,确定头1or2有效,其他写错的不会生效。
elif: null += 1
print("Total vote of No.1: Nami =",nami)
print("Total vote of No.2: Chopper =",chop)
print("Total nul votes =" ,null)
if null >= nami and null >=chop or nami == chop:
print("=> No one won the election.")
elif nami> chop:
print("=> No.1 Nami won the election.")
else:
print("=> No.2 Chopper won the election.")
>>: Day03 - 随意玩之 API 讯息内文以及 Sign
embed 连结格式: Podcast - https://open.spotify.com/em...
现在我们的资料库已经就绪了,我们赶快来透过 .NET Web API 操作资料库吧! 现在写 .NE...
[Day6] Ajax Type Ahead 输入框筛选器制作 需要用到的技巧与练习目标 fetch...
jQuery 在大多数的专案中都不可或缺,在没有 Livewire 之前要修改画面都要靠它来手动更改...
一个 控制目标(control objectives) 是一个“描述的是要实现作为实施控制的结果声明...