Java教程

实现一个自动生成小学四则运算题目的命令行程序

本文主要是介绍实现一个自动生成小学四则运算题目的命令行程序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

import random

opr = ['+','-','×','÷']

num = [1,2,3,4,5,6,7,8,9,1/2,1/3,1/4,1/5,1/6,1/7,1/8,1/9,2/3,2/5,2/7,2/9,3/4,3/5,3/7,3/8,4/5,4/7,4/9,5/6,5/7,5/8,5/9,6/7,7/8,7/9,8/9]

jg = '0'

m1 = input("Input the number of problems you want: ")

try:

m = int(m1)

n = 0

while n <= m:

    fh = random.randint(0, 3)

    from random import choice

    n1 = choice(num)

    n2 = choice(num)

    rjg = 0

    if fh == 0:

        rjg = n1 + n2

    elif fh == 1:

        n1,n2 = max(n1,n2),min(n1,n2)

        rjg = n1 - n2

    elif fh == 2:

        rjg = n1 * n2

    elif fh == 3:

        n1,n2 = max(n1,n2),min(n1,n2)

        while n1 % n2 != 0:

            n1 = random.randint(1, 10)

            n2 = random.randint(1, 10)

            n1,n2 = max(n1,n2),min(n1,n2)

        rjg = int(n1 / n2)

        print(n1, opr[fh], n2, '= ')

        
        print('the right answer is', rjg)
        
    n = n+1

    if n > m:
        input()

except ValueError as e:
print("Invalid input.Please reset the program and input a number to run it correctly.")

我的代码仍不完全,没有完全实现作业要求(https://www.cnblogs.com/jiel/p/4810756.html)
目前我做到的有:控制题目生成的数量,计算出题目的答案,判断输入数据是否有意义并在无意义时提出指引。
没能做到,但是理论上已经有思路的有:随机运算符的数量(方法同我使用的随机符号,可再添加一个随机项,设置一个变量,每次循环过后该变量加一,直到与随机得出的变量相等,循环停止),扩大数字的范围(用编程语言实现对真分数的引入,设置变量控制数值范围),对输入答案和正确答案的评判(增加变量,使用=!判断,输出对错即可),确保不会出现负数等(在写出题目前判断结果是否是真分数或正数,若不是则不写出这个题目)
目前我认为自己不能做到的有:无法将题目,答案和统计对错结果另存为TXT文件,支持一万道题目的生成(数据有限)

这篇关于实现一个自动生成小学四则运算题目的命令行程序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!