小学数学速算math_game_V1.0
这两天在学习Python,昨天儿子问我能不能给他做一个做数学题的小程序。
我想刚好可以练习一下学过的变量,还可以免去买数学题的麻烦。
以下是代码。
每天进步一点,离梦想更近。
1 import random 2 3 total_right = 0#全局变量,总的答对题目 4 total_wrong = 0#全局变量,总的答错题目 5 6 7 def random_num(mini_num, max_num): 8 '''生成随机数,限定最大数和最小数''' 9 num = random.randint(mini_num, max_num) 10 #print(num) 11 return num 12 13 # 14 def calculate(): 15 '''开始出题''' 16 global total_right,total_wrong 17 #小学一年级,所以设定10以内的加法 18 num1 = random_num(0, 5) 19 num2 = random_num(0, 5) 20 #print("%d + %d = "%(num1,num2)) 21 #获取输入的答案 22 user_answer = input("输入z退出程序\n%d + %d = "%(num1,num2)) 23 #计算正确答案 24 true_answer = num1 + num2 25 #print(user_answer) 26 if user_answer == 'z':#如果输入 z 则退出程序 27 print('已经退出程序,下次继续加油哦') 28 exit() 29 elif int(user_answer) == true_answer: 30 total_right = total_right + 1#算对了就累积在正确题里边 31 right_rate = total_right/(total_right + total_wrong)*100 32 information = '你真棒,回答正确。\n目前回答正确%s道题\n目前回答错误%s道题\n目前正确率为%d%s\n'%(total_right,total_wrong,int(right_rate),'%') 35 print('*'*50+'\n'+information+'*'*50+'\n')36 37 else: 38 total_wrong = total_wrong + 1#算错了就累积在正确题里边 39 right_rate = total_right/(total_right + total_wrong)*100 40 information = '很可惜,回答错误。\n目前回答正确%s道题\n目前回答错误%s道题\n目前正确率为%d%s\n'%(total_right,total_wrong,int(right_rate),'%') 43 print('*'*50+'\n'+information+'*'*50+'\n') 44 45 def main(): 46 '''主程序''' 47 48 while True:#用一个死循环重复做题 49 calculate() 50 51 if __name__ == '__main__': 52 main()
posted on 2018-10-25 14:54 Aking_Huang 阅读(153) 评论(0) 编辑 收藏 举报