全班有10个人,班级里有3个人竞选班长。剩下的7个人每个人只能投票选一人。请你编写一个统计选票的程序。输入7个投票,输出最后3个竞选者的得票结果。
时间: 2024-10-20 21:16:39 浏览: 38
这是一个简单的计数排序问题,在Python中可以使用字典(或列表)来模拟投票过程。下面是一个简单的实现示例:
```python
def count_votes():
candidates = ['A', 'B', 'C'] # 假设候选人是A、B、C
votes = {} # 初始化一个字典记录每个候选人的票数
for _ in range(7): # 接受7次投票
vote = input("请输入第{}位投票者选择的候选人(A/B/C):".format(_+1))
if vote in votes:
votes[vote] += 1
else:
votes[vote] = 1 # 如果是新候选人,则添加并初始化票数为1
# 对候选人按照得票数从高到低排序
sorted_candidates = sorted(votes.items(), key=lambda x: x[1], reverse=True)
print("竞选结果如下(得票数最多到最少):")
for candidate, votes_count in sorted_candidates[:3]:
print(f"{candidate}: {votes_count} 票")
count_votes()
```
在这个程序中,用户会依次输入他们的选择,程序会统计每名候选人的票数,并在结束后显示得票最多的前三名。
阅读全文