口算自动出题系统
- 格式:xls
- 大小:608.00 KB
- 文档页数:2
pythonGUI界⾯编程⼝算题⽣成系统问题描述⼝算题⽣成系统功能:(1)⼝算:题⽬显⽰在界⾯上(除法必须是整除),逐个显⽰题⽬,⽤户通过输⼊框输⼊计算结果。
系统能实时统计正确率,将错误题⽬打印到⽂件⾥。
(2)⽣成题⽬:⽤户选择⽣成的题⽬数量,打印时的列数,运算符的数量,将题⽬⽣成到docx⽂件⾥。
设计说明(1)拟设计的功能及实现思路、需要⽤到的知识功能(1)的实现思路:1.初始化窗⼝和幕布,为窗⼝命名2.记录⽤到的变量,两个整数x、y,以及⽤到的符号op(+-*/)3.将x,y,op打印到界⾯上,并且⽣成输⼊框4.添加按钮,get_num表⽰⽣成题⽬,judge表⽰判断结果是否正确,print_error表⽰将所有错误题⽬打印到⽂件⾥5.为get_num编写函数update_num,随机⽣成新的x、y、op6.为judge编写函数judge,判断答案是否正确。
由于除法要⽤整除来判断,⽽eval表达式判断的是⾮整除,加了个特判,当op=/时,特判答案是否正确。
7.编写函数save_error,保存错误的题⽬,在judge函数中使⽤,如果回答错误,就将错误题⽬的字符串形式保存到列表8.记录变量cur_num表⽰正确题⽬的数量,sum表⽰⼀共回答问题的数量,每次都计算正确率打印到屏幕上9.为print_error编写函数 output_error(),将错误题⽬打印到txt⽂件,⼀⾏⼀个题⽬。
10.增加键盘操作,⽤键盘回车代替判断按钮,免去了每次检验结果时需要⿏标操作的⿇烦。
功能(2)的实现思路:1.初始化窗⼝和幕布,为窗⼝命名2.⽣成输⼊框和说明⽂字,统计⽤户想要⽣成的题数,⽤户想要使⽤操作符的个数,⽤户打印⽂件的列数。
3.设计按钮output,表⽰⽤户提交意愿4.编写output_all函数,根据⽤户意愿获得相关信息5.根据题⽬数量⽣成题⽬,以字符串格式保存到列表6.调⽤docx相关库创建docx⽂件,判断表格的⾏数和列数,⽣成表格7.从列表中读取信息到⽂件8.保存⽂件到rex.docx(2)调⽤库的说明tkinter:GUI编程的相关库random:随机数⽣成的相关库(3)定义及调⽤的函数及功能Tk():创建应⽤程序主窗⼝Frame():创建控件容器,可依附在窗⼝中IntVar(),StringVar():初始化变量.Label():显⽰变量的标签set()为变量重新赋值randint():⽣成某⼀范围的随机数get():获取变量的值Button():设置按钮bind():设置键盘快捷键mainloop():循环⾃⼰定义的函数update_num() :产⽣新的题⽬,即新的随机的x,y和符号save_error():#保存错误题⽬output_error():#打印错误题⽬到⽂件judge(event):判断答案是否正确output_all():打印所有题⽬到docx⽂件实现代码功能(1)# -*- coding: utf-8 -*-"""Created on Wed Jun 16 16:49:28 2021@author: DELL"""#导⼊GUI的包,以及随机数的包import tkinter as tkimport random#初始化窗⼝和幕布root = ()window = tk.Frame(root, bg ="lightgreen")window.pack(expand = tk.YES,fill = tk.BOTH)root.title('⼝算计算器') #窗⼝名字#初始化⽤到的变量,两个数x,y和符号sym,sym限定在加号和减号之间,可以添加乘除x = tk.IntVar()y = tk.IntVar()sym = tk.StringVar()#显⽰变量的标签bel(window,textvariable =x).grid(row = 0,column = 0)bel(window,textvariable =sym).grid(row = 0,column = 2,ipadx=10)bel(window,textvariable =y).grid(row = 0,column = 3,ipadx=10)lst=[]symbol = ['+','-','*','/'] # sym符号的池⼦flag = 1sum=0cur_num=0#此函数产⽣新的题⽬,即新的随机的x,y和符号def update_num():global flagif flag:flag = 0x.set(random.randint(10,100))y.set(random.randint(10,100))sym.set(symbol[random.randint(0,3)])else:flag = 1x.set(random.randint(10, 100))y.set(random.randint(10, 100))sym.set(symbol[random.randint(0,3)])global sumsum=sum+1def save_error():#保存错误题⽬c = str(x.get())+sym.get()+str(y.get())+"=\n"c = str(x.get())+sym.get()+str(y.get())+"=\n"lst.append(c)def output_error():#打印错误题⽬到⽂件with open('error_题⽬.txt',mode='w',encoding='utf-8') as tf:for i in lst:tf.write(i)tk.Button(window,text = 'gen_num', width = 10,height = 4,bg = 'blue', command = update_num).grid(row = 5,column = 10,sticky=tk.W) tk.Button(window,text="print_error",width = 10,height = 4,bg = 'red',command=output_error).grid(row = 7,column = 10,sticky=tk.W)# ⽣成输⼊框e = tk.Entry(window)e.grid(row = 0, column = 4)result = tk.StringVar()def judge(event):global cur_numc = str(x.get())+sym.get()+str(y.get())if len(e.get()) !=0:if(sym.get()=='/'):tx=int(x.get())ty=int(y.get())if(tx//ty==int(e.get())):cur_num=cur_num+1result.set("回答正确!"+"正确率为:"+str(cur_num/sum))update_num()e.delete(0,'end')else:result.set("回答错误"+"正确率为:"+str(cur_num/sum))save_error()update_num()e.delete(0, 'end')else:if int(e.get()) == eval(c):cur_num=cur_num+1result.set("回答正确!"+"正确率为:"+str(cur_num/sum))update_num()e.delete(0,'end')else:result.set("回答错误"+"正确率为:"+str(cur_num/sum))save_error()update_num()e.delete(0, 'end')else:result.set("请输⼊答案")#键盘回车按键代替判断按钮,免去了每次检验结果时都需要⿏标操作的⿇烦root.bind('<Return>', judge)button = tk.Button(window,text="judge",width = 10,height = 4,bg = 'pink')button.grid(row = 6,column = 10)button.bind('<Button-1>',judge)bel(window,textvariable =result).grid(row = 1,column = 0)#敞⼝循环必须有root.mainloop()功能(2)# -*- coding: utf-8 -*-"""Created on Wed Jun 16 17:35:59 2021@author: DELL"""import tkinter as tkimport randomfrom docx import Documentroot_all = ()window_all = tk.Frame(root_all, bg ="green")window_all.pack(expand = tk.YES,fill = tk.BOTH)root_all.title('⽣成题⽬') #窗⼝名字bel(window_all,text='题⽬数量:').grid(row=0,column=0)bel(window_all,text='运算符个数:').grid(row=1,column=0)bel(window_all,text='打印到⽂件⾥的列数:').grid(row=2,column=0)num = tk.Entry(window_all)num.grid(row = 0, column = 1)oper_num=tk.Entry(window_all)oper_num.grid(row=1,column=1)col_num=tk.Entry(window_all)col_num.grid(row=2,column=1)symbol = ['+','-','*','/']lst=[]def output_all():num_cnt=int(num.get())oper_cnt=int(oper_num.get())col_cnt=int(col_num.get())#print(type(num_cnt))for i in range(num_cnt):x=random.randint(10,100)y=random.randint(10,100)op=symbol[random.randint(0,oper_cnt-1)]c = str(x)+op+str(y)+"= "lst.append(c)wordfile=Document()cnt_row=num_cnt//col_cntif num_cnt % col_cnt == 0:cnt_row=cnt_row+1table=wordfile.add_table(rows=cnt_row,cols=col_cnt,)row_idx=0col_idx=0for i in lst:table.rows[row_idx].cells[col_idx].text=icol_idx=col_idx+1if col_idx == col_cnt :col_idx=0row_idx=row_idx+1wordfile.save("res.docx")tk.Button(window_all,text="output",width = 10,height = 4,bg = 'orange',command=output_all).grid(row = 8,column = 10,sticky=tk.W) root_all.mainloop()参考博客找到了加上。
三年级口算出题系统【原创实用版】目录1.引言:介绍三年级口算出题系统的背景和重要性2.系统功能:详述系统的主要功能和特点3.系统应用:展示系统的实际应用效果和优势4.结论:总结三年级口算出题系统的价值和意义正文【引言】随着教育技术的发展,数字化教学已成为教育的一大趋势。
口算是小学数学教育的重要内容,对于培养学生的数学思维和计算能力具有重要意义。
为了提高口算教学的效果和效率,三年级口算出题系统应运而生,为教育工作者提供了有力的支持。
【系统功能】三年级口算出题系统主要具备以下功能和特点:1.海量题库:系统内置了丰富的题库,涵盖了小学三年级口算的全部内容,可以根据教学需求随机抽取题目,满足不同层次的教学要求。
2.自动批改:系统可以自动批改学生完成的口算题目,节省了教师大量的批改时间,提高了工作效率。
3.数据分析:系统可以根据学生的答题情况,生成详细的数据分析报告,帮助教师了解学生的学习状况,为教学决策提供依据。
4.个性化推荐:系统可以根据学生的学习进度和能力,智能推荐合适的题目,实现因材施教,提高教学质量。
【系统应用】三年级口算出题系统在实际应用中表现出了良好的效果和优势:1.提高教学质量:通过系统的智能推荐功能,教师可以更好地把握教学进度,合理安排教学内容,提高教学质量。
2.激发学生兴趣:系统随机抽取题目,使得每节口算课都充满了新鲜感,激发了学生的学习兴趣,提高了学习积极性。
3.减轻教师负担:系统的自动批改功能大大减轻了教师的工作负担,让教师有更多的精力投入到教学研究中,提高教学水平。
4.提高学生计算能力:通过系统的持续训练,学生的口算速度和准确率得到了明显提高,为以后的数学学习打下了坚实的基础。
【结论】综上所述,三年级口算出题系统具有显著的价值和意义。
它不仅能够提高口算教学的质量和效率,还能够激发学生的学习兴趣,减轻教师的工作负担。
第1页共1页。
一“键”出百题,一“拍”改作业!这些口算出题神器家长、老师必备!各地的暑假放假时间都公布了,老师们准备好期末作业了吗?家长们是不是又开始绞尽脑汁地想办法步孩子的短板呢?今天给大家推荐两款口算出题微信小程序以及一款手机软件!从出题,答题到批卷一条龙服务!这是一款微信小程序,只需微信搜索“小学口算出题器”就可以找到。
可以根据学生的不同年级段选择不同类型题目,动动手指头,轻松出题!微信搜索“小学口算出题器”并打开打开界面即可看到,顶部为各年级层,下方就对应不同的题目类型。
界面一目了然,操作也相当简单。
选择题数选择所需的题数,即可一键形成试题。
会以图片的形式保存试题,并自动保存答案,可以进行图片打印使用!缺点:不能混合题型进行出题这也是一款微信小程序。
作业帮口算,虽然不能直接生成题目,但支持“拍照”批改、在线针对性练习、班主任出题等。
口算题目批改打开小程序后,只需通过手机拍照,即可快速批卷,方便快捷!口算题目在线练习可依据学生的需求,选择一至六年级的不同年级段、不同的练习类型进行练习。
缺点:不能随机组卷这是一款手机APP软件,具有拍照秒判对错、口算练习、错题视频讲解、老师布置作业等等功能。
拍照秒判对错在v3.12的爱作业版本中,支持应用题、填空题、判断题、选择题、解方程、乘法口诀题、四则运算等等类型的题目拍照批改。
老师或家长可以批量拍摄学生的数学作业,一次性完成修改。
同时还会提供错题原因分析,让学生知道错误原因。
口算题、应用题同步练习提供学前、1-6年纪的口算练习题、应用题的各种类型题目的练习。
同时,可以打开“护眼模式”保护学生的眼睛。
学生直接在屏幕上写出答案,完成任务并修改、打星,激励学生练习题目!查看同校高频错题并打印练习选择学生对应学校,即可掌握通宵的高频错题、经典错题,充分利用资源提高学生的计算能力。
同时,为了保护学生的眼睛,还可以打印纸质版的练习题。
布置作业及学情分析老师可选择自己的学校、班级并通过“邀请码”让学生进入班级。
2019-2020年小学生一二年级口算出题软件使用说明欢迎使用由无锡永中软件有限公司专业开发团队开发的小学一二年级口算软件,此软件为基于永中Office开发的插件,相较于其他口算出题软件,具有功能强大操作简单的特点,希望大家喜欢。
1安装步骤1.1下载永中Office访问永中软件官网:http://.yozosoft./,下载永中Office个人版,下载页面:http://.yozosoft./person/,进入下载页面找到如下图的地方点击下载按钮:1.2安装永中Office下载完成后在下载目录下找到Yozo_Office_6.1.0232.131ZH.exe这个文件,如下图:双击这个文件,在弹出的向导对话框中点击下一步直至完成。
1.3下载口算软件到永中软件官网下载小学一二年级口算文件.yozo.mca_1.0.0.jar永中官方论坛下载地址:http://forum.yozosoft./viewthread.php?tid=90790&extra=。
新浪微盘用户下载地址:http://vdisk.weibo./s/g-Oj3。
1.4安装口算软件1.4.1找到永中Office安装目录默认安装Windows XP下为:C:\Program Files\Yozosoft\Yozo_Personal,其他可搜索“Yozo_Personal”目录。
若不知道安装目录在哪里,请右击桌面永中文字(永中简报、永中表格中的任意一个都行),点击属性,如下图:弹出的属性对话框中点击查找目标按钮,就进入了安装目录。
1.4.2进入插件目录在安装目录下进入Plugins目录,如果没有就创建一个,如下图:1.4.3拷贝文件拷贝下载的.yozo.mca_1.0.0.jar文件粘帖至上面进入的Plugins目录下1.4.4重启永中Office以上步骤执行后,重启永中Office,大功告成,可以使用了。
如果不想再使用这个插件了,可以到这个目录下删除.yozo.mca_1.0.0.jar文件使用过程中有什么问题或者建议,欢迎访问永中官方论坛:http://forum.yozosoft./反馈问题,也可关注新浪微博@永中软件官方微博或@永中微办公反馈问题,有什么其他方面的需求也可以提出来,永中软件非常乐意为您服务。
二年级口算题出题系统
“二年级口算题出题系统”,正是近几年随着网络和信息化发展而出现的一款
非常优秀的软件应用。
本软件专为二年级的学生设计,其突出的优势在于充分考虑到学生的实际水平和实际能力,并且考虑到了小学一年级课程的知识内容,抓住学生学习和口算的关键知识点,构建出特色化的口算测试系统,为学生更多地练习,提供独有的参考价值。
“二年级口算题出题系统”依托先进的信息技术,实现了超越传统教学模式的
自主学习模式,借助计算机生成题库,学生通过进入系统自己练习,一定程度上实现了教师的倍增效果。
此外,这款软件还可以根据学生的学习表现随机生成出题,便于学生全程掌握学习细节,全面提高学习效率,同时使得教师节省了很多的时间,让学校的口算教学更规范、更准确。
值得一提的是,该系统不仅可以生成标准的口算题目供学生练习,还有一些综
合题,让学生更加挑战自己,增强对口算知识点的认知。
更具有适应性,当发现学生有某一知识点出现欠缺时,便会做出调整来更精准地挑战学生,让学生有效地掌握出题要求,引导学生正确的学习方向。
总之,“二年级口算题出题系统”高效的智能出题,科学的评估学生的学习情况,对帮助学生更好地掌握二年级口算知识,发挥孩子应有的口算能力有着实质性的作用。
推荐这个软件,希望能够给学生带来更多乐趣,也希望教师在日常教学中能够尝试用上它。
python 口算自动出题程序
一、项目概述
本项目主要是开发一个Python口算自动出题程序,实现口算题的自动生成及出题。
用户可以根据数学口算能力,设置题型的难易度,由软件帮助用户生成不同类型的数学口算题。
二、开发环境
本项目使用Python语言开发,采用IDE开发编译,语言版本为Python 3.7.0 。
三、总体设计
1、题目生成模块:根据用户设定的题目类型以及难易度,生成不同类型的口算题。
2、用户输入模块:用户可以输入题目类型,难易度以及题目数量,以便程序根据用户输入的要求进行题目生成。
三、测试计划
1、功能测试:是否可以正确生成不同类型和难易度的题目;
2、性能测试:程序的运行效率;
3、安全性测试:程序的安全性,是否可以防止恶意攻击等。
- 1 -。