小学四则运算编程实践
1.代码展示
import sys
import random
import fractions
#for i in range(0,len(sys.argv)):
#print(i,sys.argv[i])
#a = open('C:\\Users\\徐铭泽\\Desktop\\ANSWER.txt', 'w')
#a = open('C:\\Users\\徐铭泽\\Desktop\\ANSWER.txt')
K = int(sys.argv[2])
a5= 1
c = int(sys.argv[4])
Q = []
jianyan = set()
jianyan1 = 0
ANSWER1 = []
while K >= (a5):
#a = open('C:\\Users\\徐铭泽\\Desktop\\ANSWER.txt')
#生成四则运算题目
d = str()
yun_suan_fu = ['+','-']
for i1 in range(4):
a = random.choice(yun_suan_fu)
b = str(random.randrange(1,c))
d = d+b+a
f = str()
f1 = str()
F = int()
#出现真分数
for i2 in range(2):
a1 = random.randrange(1,c)
a2 = random.randrange(1,c)
F += fractions.Fraction(min(a1,a2),max(a1,a2))
a3 = str(max(a1,a2))
a4 = str(min(a1,a2))
#f += '+' + a4+'/'+a3
f1 += '+' +a4+'÷'+a3
#d0 = d[0:7] + f
d1 = d[0:7] + f1
F1 = list(str(F))
if ('/') in F1:
F2 = F1.index('/')
Y = F1[0:F2]
D = F1[(F2+1):(len(F1))]
Y = int(''.join(Y))
D = int(''.join(D))
if Y > D :
shang = Y // D
yu = Y % D
else:
shang = 0
yu = Y
a7 = str(random.randrange(1,c))
a8 = str(random.randrange(1,c))
e = '+' + a7 +'*'+ a8
e1 = '+' + a7 +'x'+ a8
e0 = d[0:7] + e
e2 = d1 + e1
A = str(eval(e0) + shang) + '\'' + ('%s' %yu) + '/' + ('%s' %D)
if eval(e0) > 0:
#a = open('C:\\Users\\徐铭泽\\Desktop\\QUESTION.txt','w')
a5 = a5 + 1
a6 = a5 - 1
#print("第 %s 题:" %a6,e0,"= ? ","答案是:",A)
b1 = ('第 %s 题: ' %a6) + ('%s' %e2) + ' = ' + '\n'
b2 = ('第 %s 题的' %a6) + ('答案是: %s' %A) + '\n'
Q.append(b1)
ANSWER1.append(b2)
#print(b1)
#a.write(b1)
if A in jianyan:
jianyan1 = jianyan1 + 1
print(A)
jianyan.add(A)
#a.close()
#print(Q)
Q = ''.join(Q)
#print(Q)
print(jianyan)
print(jianyan1)
ANSWER1 = ''.
2.代码实现效果