题目要求:给小学生出的100以内四则运算,有两个运算符,保证每个步骤运算结果都能整除,并且在100以内。
第一次作业代码实现:
import random
oper = ['+','-','*','/']
i = 0
while i<300:
a = random.randint(1,99)
b = random.randint(1,99)
c = random.randint(1,99)
num = random.randint(0,3)
a = str(a)
b = str(b)
c = str(c)
res = a + oper[num] + b + oper[num] + c
m = eval(res)
res1 = a + oper[num] + b
n = eval(res1)
if (m<100) & (m>0) & isinstance(m,int) & (n>0) & isinstance(n,int):
print(res,'=',m)
i+=1
选择python就是因为字符转数字,并且算出结果很方便,但是以上的代码存在问题:16行只保证了运算结果和前两位运算在100以内,像5+1/4这样的式子也能出现。
第二次作业基本要求:在上一次作业的基础之上,开发一个图形界面的出题程序,给用户提供以下选项:运算符个数,每一页打印的行数和列数,题目总数。
首先要实现图形化界面,python图形化界面设计←在此链接学了一下怎么用tkinter模块做出一个python图形化界面。
其次题目总数由用户输入这一操作也很容易实现,代码如下。(暂未修改第一次代码的问题)
#1.0
import random
import string
from tkinter import *
def run(num):
print("输出算式个数为:"+ num)
<