最近也是因为自家娃手头上的算术题做完了,还没来得及补充弹药,就想着说在网上找一些网友们的分享,20以内、50以内或者100以内的加减法都可以,毕竟不是知网上那些高端论文,总觉着会有很多免费的文档可以下载吧,打印一些便可。谁知现实比想象残酷很多,不知道是因为自己的搜索水平不行,还是因为网友们的知识付费意识太强,基本上的文档下载都是需要付费的,除非自己手动抄写。也不是说这样做不对,只是觉得我们的学术门槛能不能设的再高一点,哈哈哈!没办法,总不能真用手一题题抄下来,主要是有些题目的质量真的不咋滴。
就在眉头紧锁的那一刻,突然想到自己不是在学Python吗,此时不用更待何时,于是乎敲出了下面的代码:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import random
def count(num_range, amount):
formulas = ''
count_temp = 0
while True:
a = random.randrange(1, num_range)
b = random.randrange(2, num_range + 1)
c = b - a
if c > 0:
frm = str(a+1) + ' + ' + str(abs(c)) + ' = ' + str(b) + ' - ' + str(a) + ' = '\
+ str(abs(c)+1) + ' + ' + str(b) + ' = ' + str(b) + ' - ' + str(abs(c)) + ' = \n'
formulas += frm
count_temp += 1
print(frm)
elif c < 0:
frm = str(a+1) + ' + ' + str(abs(c)) + ' = ' + str(a) + ' - ' + str(b) + ' = '\
+ str(abs(c)+1) + ' + ' + str(b) + ' = ' + str(a) + ' - ' + str(abs(c)) + ' = \n'
formulas += frm
count_temp += 1
print(frm)
if count_temp >= amount:
break
return formulas
def main():
num_range, amount = 20, 25
q = count(num_range, amount)
frm_title = '%d以内加减法算术题%d道.txt' % (num_range, amount*4)
with open(frm_title, 'w') as f:
f.write(q)
f.close()
if __name__ == '__main__':
main()
怎么说,还是花了点时间的,基本能满足想要的需求,num_range, amount = 20, 25
可以自定义是多少以内的加减法,还有题目的数量,先用着,后续有新的想法再优化。