四则运算出题器

一、功能

        1、本文中的四则运算出题器适用于小学阶段的学生和老师,老师只需要输入出题数量和出题难度,学生只需输入答案即可;

        2、因为针对于小学阶段,因此所给出的题目都是两位数及两位数以下的运算;

        3、老师输入出题数量和出题难度后即可出题完毕,出题器会自动改卷并给出正确答案和学生答题正确率。

二、操作流程

       1、由老师输入出题数量和出题难度;

       2、由学生输入对应题号的答案;

       3、根据老师所给的题目和学生的答案进行改卷。

三、源代码

import random

#四则运算
def szys():
    fuHao = ['', '', '×', '÷']
    i = random.randint(0, 3)
    n1 = random.randint(1, 20+20*(N-1))
    n2 = random.randint(1, 20+20*(N-1))
    if i == 0:#加法
       result  = n1 + n2
    elif i == 1:#减法
        n1, n2 = max(n1, n2), min(n1, n2)
        result  = n1 - n2
    elif i == 2:#乘法
        result  = n1 * n2
    elif i == 3:#除法
        n1, n2 = max(n1,n2), min(n1,n2)
        while n1 % n2 != 0:
            n1 = random.randint(1, 20+20*(N-1))
            n2 = random.randint(1, 20+20*(N-1))
            n1, n2 = max(n1,n2), min(n1,n2)
        result = int( n1/n2 )
    print(n1, fuHao[i], n2, '= ', end='')
    return result
 
#出题、作答、结果
def test():
    sym = ['', '', '×', '÷']
    answer = []
    result = []
    #出题
    m = 0
    print('题目如下:')
    while m <= (n-1):
        print(m+1, end='')
        result.append(szys())
        print(' ')
        m=m+1
    #作答
    m = 0
    print('进行答题:')
    while m <= (n-1):
        #print(m+1, end='、')
        j = int(input('{}、'.format(m+1)))
        answer.append(j)
        m=m+1
    #结果
    m = 0
    print('作答情况及答案:')
    right = 0
    while m<=(n-1):
        if answer[m] == result[m]:
            print(m+1,'','正确; 答案:',result[m])
            right += 1;
        else:
            print(m+1,'','错误; 答案:',result[m])
        m=m+1
    print('正确率:{:.2f}%'.format(right*100/n))

n = int(input('出题数量:'))
N = int(input('出题难度(1~5):'))
test()

四、测试运行

        1、输入出题数量和出题难度:

        2、输入对应题号的答案:

        3、出题器自动改卷:

【end】

posted @ 2021-09-22 00:00  Song-SH  阅读(281)  评论(0)    收藏  举报