当前位置: 首页 > web >正文

乘法口诀练习神器

请你利用python语言开发一个“乘法口诀练习神器”,主要辅助小学生练习乘法口诀,主要功能如下:

1. 能够随机循环出10道题,可以是乘法或者是除法。如果是乘法,确保两个因数都是1-9之间的整数;如果是除法,确保除数和商都是1-9之间的整数,确保一定能够整除。

2.答完题后,程序能够给予反馈。

    对10道题:Perfect;

    对8或9道题:A

    对6或7道题:B;

    低于6道题:C

3. 用户看到反馈之后,可以做出以下选择:

    A.退出。退出程序。

    B.查看错题答案。逐一显示做错的题目,并显示正确答案。

    C.错题重做。逐一呈现做错的题目。

    当然,程序应该具有能够记录错误的题目的功能。

    提示:for循环、while循环、random模块、列表list(append、切片)

#参考程序
import random
import time
r=0
f=0
time0=time.asctime()
time1=time.time()
print('***************************************')
print('*             乘法口诀练习             *')
print('***************************************')
print(time0)
list=[]
ansList=[]
wrongQueList=[]
wrongQueAns=[]
for i in range(1,11):a=random.randint(1,9)b=random.randint(1,9)c=a*bx=random.randint(1,2)if x%2==1:ansList.append(str(c))exp=str(a)+"*"+str(b)+"="ans=input(str(i)+". "+exp)if int(ans)==c:r=r+1else:f=f+1wrongQueList.append(exp)wrongQueAns.append(str(c))elif x%2==0:ansList.append(str(a))exp=str(c)+"/"+str(b)+"="ans=input(str(i)+". "+exp)if int(ans)==a:r=r+1else:f=f+1wrongQueList.append(exp)wrongQueAns.append(str(a))            print("答对了"+str(r)+"道题,答错了"+str(f)+"道题。")
time2=time.time()
print("用时"+str(int(100*(time2-time1))/100)+"秒")if r==10: print("Perfect!")
elif 10>r>=8:print("等级A")
elif 8>r>=6:print("等级B")
elif 6>r>=4:print("等级C")
elif 4>r>=0:print("等级D")cntWrong=f
while True:if r==10:breakif cntWrong==0:print("Perfect!")breakwrQuLst=[]wrQuAns=[]cntWrong=0choice=input("请做出你的选择:A.退出;B.查看错题答案;C.错题重做:")if choice in ['A','a']:breakif choice in ['B','b']:for i in range(len(wrongQueList)):print(wrongQueList[i]+wrongQueAns[i])breakif choice in ['C','c']:for i in range(len(wrongQueList)):userAns=input(wrongQueList[i])if userAns!=wrongQueAns[i]:wrQuLst.append(wrongQueList[i])wrQuAns.append(wrongQueAns[i])cntWrong=cntWrong+1wrongQueList=wrQuLst[:]wrongQueAns=wrQuAns[:]

http://www.xdnf.cn/news/6439.html

相关文章:

  • 富文本编辑器:链接功能
  • 基于 Python Requests + Pytest + Allure 构建接口自动化测试框架的最优实践
  • 编程日志5.8
  • 【测试】测试分类
  • WebRTC 通话原理:从协商到通信
  • Intellij报错:the file size(3.47M) exceeds configured limit (2.56MB)
  • websocket入门详解
  • 第28周——InceptionV1实现猴痘识别
  • 鸿蒙OSUniApp实现个性化的搜索框与搜索历史记录#三方框架 #Uniapp
  • STM32单片机内存分配详细讲解
  • Android Studio中Gradle 7.0上下项目配置及镜像修改
  • 游戏引擎学习第280天:精简化的流式实体sim
  • 毕设设计 | 管理系统图例
  • ET EntityRef EntityWeakRef 类分析
  • 基于EFISH-SCB-RK3576/SAIL-RK3576的消防机器人控制器技术方案‌
  • VSTO(C#)Excel开发进阶2:操作图片 改变大小 滚动到可视区
  • 产品更新丨谷云科技 iPaaS 集成平台 V7.5 版本发布
  • [特殊字符] 苍穹外卖项目中的 WebSocket 实战:实现来单与催单提醒功能
  • Parsec解决PnP连接失败的问题
  • 星巴克中国要卖在高点
  • sqli-labs靶场第七关——文件导出注入
  • ISP中拖影问题的处理
  • 嵌入式学习笔记DAY21(双向链表、Makefile)
  • C++11(2)
  • MySQL DBA数据运维管理经验分享:新手入门快速提升效率的新工具与技巧
  • 基于AH1101芯片的5V升18.6V LED恒流背光供电方案设计
  • 【免费分享】虚拟机VM(适用于 Windows)17.6.3
  • 【优化算法】协方差矩阵自适应进化策略(Covariance Matrix Adaptation Evolution Strategy,CMA-ES)
  • 35页AI应用PPT《DeepSeek如何赋能职场应用》DeepSeek本地化部署与应用案例合集
  • React19源码系列之 Diff算法