You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python乘法挑战中实现计分系统与成功率统计

乘法挑战项目:计分系统与成功率统计实现

原代码问题

你的代码中score = 0被放在循环内部,每道题都会重置分数,导致最终只能得到0或1的结果,无法累计正确答题数。

修改后的完整代码

from random import randint

tableRevision1 = int(input("Quelle première table de multiplication réviser ? :"))
tableRevision2 = int(input("Quelle deuxième table de multiplication réviser ? :"))
nombreQuestions = int(input("Combien de questions ? : "))

print("Révision des tables de", tableRevision1, "à", tableRevision2, "-", "Nombre de questions :", nombreQuestions)

# 初始化分数在循环外部,避免每次重置
score = 0

for _ in range(nombreQuestions):
    multi = randint(tableRevision1, tableRevision2)
    multi2 = randint(1, 10)
    question = f"{multi} x {multi2} = "
    reponse = int(input(question))
    
    if reponse == multi * multi2:
        print("Bien joué !")
        score += 1
    else:
        print("Loupé ! La bonne réponse est :", multi * multi2)

# 计算成功率
taux_reussite = (score / nombreQuestions) * 100

print(f"Votre score est : {score}/{nombreQuestions}")
print(f"Taux de réussite : {taux_reussite:.1f}%")

修改说明

  • 将score = 0移到for循环之前,确保分数可以累计每道题的正确次数。
  • 用_代替循环变量nombreQuestions(避免和总题数变量重名,代码更规范)。
  • 使用f-string格式化字符串,让代码更简洁易读。
  • 新增成功率计算,用正确答题数除以总题数再乘以100,保留1位小数输出。

内容的提问来源于stack exchange,提问作者Zarixz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 01:20:36