小学四则运算编程实践

只是初步实现了两个数的乘除加减

运行截图

代码

#coding=utf-8
import random

# 生成算式
que=[]
ans=[]
def m(a):
    for i in range(a):
        fuhao=random.choice('+''-''x''/')
        if fuhao == '+':
            a1 = random.randint(0,10)
            a2 = random.randint(0,10)
            que.append(str(a1)+'+'+str(a2)+'=')
            ans.append(a1 + a2)
        elif fuhao == '-':
            a1 = random.randint(0,10)
            a2 = random.randint(0,10)
            if a1 < a2:
                p = a1
                a1 = a2
                a2 = p
            que.append(str(a1)+'-'+str(a2)+'=')
            ans.append(a1 - a2)
        elif fuhao == '×':
            a1 = random.randint(0,10)
            a2 = random.randint(0,10)
            que.append(str(a1),'×',str(a2),'=')
            ans.append(a1 * a2)
        else:
            a1 = random.randint(0,10)
            a2 = random.randint(1,10)
            que.append(str(a1)+'/'+str(a2)+'=')
            if a1 > a2:
                c=a1//a2
                d=a1-c*a2
                ans.append(str(c)+' '+str(d)+'/'+str(a2))
            elif a1 == 0:
                ans.append(str(0))
            else:
                ans.append(str(a1)+'/'+str(a2))
            
a =int(input("写出你需要多少道题:"))
m(a)
print(que)
f = open("Exercises.txt",'w')
g = open("Answers.txt",'w')
for i in range(a):
    question=que[i]
    answer=str(ans[i])
    f.write("第""%d""个问题:"%(i+1))
    f.write(question)
    g.write(answer)
    f.write('\n')
    g.write('\n')
f.close()
g.close()
open("你的答案.txt",'w')
print('请输入你的答案在 你的文件。txt 中')
i =input('写完输入 :1')
if i == '1':
    q=open('你的答案.txt')
    g=open('Answers.txt')
    x=list(q)
    y=list(g)
    print(x,y)
    cuorect =0
    false=0
    ansr=[]
    fule=[]
    for i in range(a):
        if x[i]==y[i]:
            cuorect+=1
            ansr.append(i+1)
        else:
            false=+1
            fule.append(i+1)
    G=open('Grade.txt','w')
    G.write('Correct:')
    G.write(str(cuorect))
    G.write(str(ansr))
    G.write('\n')
    G.write('Wrong:')
    G.write(str(false))
    G.write(str(fule))
    G.close()