python实现1000以内加减法计算,输出
- 格式:docx
- 大小:20.38 KB
- 文档页数:4
1 / 4
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
import random
from os.path import basename
def main():
“““ 1000以内加减法计算,输出答案“““
_help()
smallnum=100#取数范围[
bignum=1000#取数范围]
ans=[]
#生成算式个数,默认12个
if len(sys.argv)>1:
if sys.argv[1].isdigit():
cal_num=int(sys.argv[1])
else:
cal_num=12
#输出算式
i=0
while i res = onecal(smallnum,bignum) 2 / 4 print res[0]+““, ans.append(““.join(res)+“ “) i=i+1 if i%4==0: print “\n\n\n\n\n“ print “\n\n“ #输出答案 i=0 while i print ans[i], i=i+1 if i%4==0: print ““ def _help(): if len(sys.argv)>1: if sys.argv[1]==“-h“ or sys.argv[1]==“--h“ or not sys.argv[1].isdigit(): print “usage : “+basename(sys.argv[0])+“ [count]“ sys.exit() def onecal(smallnum,bignum): “““生成一条算式和计算结果“““ operator=[“-“,“+“,“-“,“+“,“-“,“+“] 3 / 4 cals=[] while True: num1=random.randint(smallnum,bignum) num2=random.randint(smallnum,bignum) num3=random.randint(smallnum,bignum) operator1=random.choice(operator) operator2=random.choice(operator) if operator1==“+“: res1=num1+num2 else: res1=num1-num2 if operator2==“+“: res2=res1+num3 else: res2=res1-num3 if res1>=0 and res1<=bignum and res2>=0 and res2<=bignum: out_str=str(num1)+operator1+str(num2)+operator2+str(num3)+“=“res_str=out_str+str(res2) cals=[out_str,str(res2)] return cals if __name__ == “__main__“: main() 4 / 4