HNU 结对编程 对队友代码的分析 中小学数学卷子自动生成程序

发布时间 2023-09-21 11:26:01作者: 坐火车去看烟花

基本功能实现

一、主要内容

认真学习和阅读同伴的代码,分析优劣。

二、题目要求

个人项目:中小学数学卷子自动生成程序

用户:

小学、初中和高中数学老师。

功能:

1、命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,XX为小学、初中和高中三个选项中的一个。否则提示“请输入正确的用户名、密码”,重新输入用户名、密码;

2、登录后,系统提示“准备生成XX数学题目,请输入生成题目数量(输入-1将退出当前用户,重新登录):”,XX为小学、初中和高中三个选项中的一个,用户输入所需出的卷子的题目数量,系统默认将根据账号类型进行出题。每道题目的操作数在1-5个之间,操作数取值范围为1-100;

3、题目数量的有效输入范围是“10-30”(含10,30,或-1退出登录),程序根据输入的题目数量生成符合小学、初中和高中难度的题目的卷子(具体要求见附表)。同一个老师的卷子中的题目不能与以前的已生成的卷子中的题目重复(以指定文件夹下存在的文件为准,见5);

4、在登录状态下,如果用户需要切换类型选项,命令行输入“切换为XX”,XX为小学、初中和高中三个选项中的一个,输入项不符合要求时,程序控制台提示“请输入小学、初中和高中三个选项中的一个”;输入正确后,显示“”系统提示“准备生成XX数学题目,请输入生成题目数量”,用户输入所需出的卷子的题目数量,系统新设置的类型进行出题;

5、生成的题目将以“年-月-日-时-分-秒.txt”的形式保存,每个账号一个文件夹。每道题目有题号,每题之间空一行;

6、个人项目9月17日晚上10点以前提交至创新课程管理系统。提交方式:工程文件打包,压缩包名为“几班+姓名.rar”。迟交2天及以内者扣分,每天扣20%。迟交2天及以上者0分。

三、运行效果

打开中小学生卷子自动生成程序,进入登录界面,界面如下图所示:

输入错误的账号或者密码后,程序显示:

按任意键后返回主页面。

直到输入正确的账号和密码后得以登录个人主页:

如果输入错误则显示:

 输入正确后进入出题页面:

 输入【10,30】以外的数据会显示错误:

 输入正确后即可完成出题。

可以看到在输入30后文件“张三3”中出现了一个按时间格式保存的试卷以及用于查重的总文件;

 点开文件可以看到已经完成出题:

当输入为0时,提示切换信息:

 输入错误时:

 输入正确时:

 输入30时,成功生成初中试题:

 输入-1退出:

 

代码分析:

一、总体分析:

我的partner非常了解Java中的代码规范原则。首先,它采用了一种非常清晰和简洁的代码风格,使用缩进、空格和换行等方式来分隔代码块,使得代码易于阅读和理解。其次,它使用了合理的命名规则和注释方式,让代码更加易于维护和修改。例如,变量名和方法名都采用了有意义的单词,而不是简单的缩写或随机字符;同时,在关键的地方添加了注释,解释了代码的作用和实现方式。最后,它使用了面向对象的思想,将代码组织成多个类和接口,提高了代码的复用性和扩展性。

二、代码格式规范:

Main函数

impl包

  QuestionCheck

  QuestionCreateImpl

 

 

model包

  Question

  Teacher

 

 

page包

  QuestionCreatePage

 

  TeacherLoginPage

 

utils包

 

 

 

三、优缺点分析:

优点:

1、语句书写规范,命名规范,注释简洁,代码块之间逻辑关系清晰,增强可读性、易维护性,减少有经验和无经验开发人员编程所需的脑力工作。

2、平方符号很容易辨识,括号合理

缺点

1.输入-1没有退出程序,而是继续循环

、评分:95