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

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

时间:2023-09-21 11:36:33浏览次数:45  
标签:结对 题目 代码 生成 XX HNU 卷子 输入

基本功能实现

一、主要内容

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

二、题目要求

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

用户:

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

功能:

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没有退出程序,而是继续循环(0)

2.引用了没用过的包(-5)

、评分:95

 

标签:结对,题目,代码,生成,XX,HNU,卷子,输入
From: https://www.cnblogs.com/xhk-1019/p/17718819.html

相关文章

  • 个人项目互评——中小学数学卷子自动生成程序
    个人项目互评——中小学数学卷子自动生成程序一、个人项目简介用户:​ 小学、初中和高中数学老师。功能:​ 1、命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,XX为小......
  • HNU个人项目互评
    一、前言这篇博客是对软件工程导论的个人项目进行互评,项目要求实现一个简单的中小学数学卷子自动生成程序。我的搭档谢先衍同学使用Python完成了项目,而我则是使用java。尽管语言不同增加了一定的阅读成本,但是接触到另一种新语言并体会编程者发挥语言特性独特的心得,确实是拓展了......
  • HNU个人项目互评
    一、前言本次博客是对“中小学数学试卷自动生成程序”的个人项目的互评,编程语言都是java.二、代码需求个人项目:中小学数学卷子自动生成程序用户:小学、初中和高中数学老师。功能:1、命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如......
  • HNU软件工程导论个人项目互评
    HNU软件工程导论个人项目互评代码作者:张益洋  评价人:熊魁一:项目需求用户:小学、初中和高中数学老师。功能:1、命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,XX为小......
  • 【Java】个人项目互评——中小学数学卷子自动生成程序
     目录一、简介二、项目要求三、测试与分析1、功能测试2、代码分析四、项目总结1、代码优点2、代码缺点五、结语一、简介本博客用于分析和总结我的结对编程队友王晓婧的个人项目代码,代码使用语言为Java,与本......
  • HNU个人项目分析互评
    笔者:万宇龙项目作者:梁钰项目目标个人项目:中小学数学卷子自动生成程序用户:小学、初中和高中数学老师。功能:命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,XX为小......
  • 软件工程导论——对结对伙伴袁永杰的个人项目评价
    一前言   很感谢老师安排的这次互评,我从伙伴的代码中得到了一些收获,也对Java编程有了更多的理解,思维也变得更加清晰。同伴选择的也是Java,基于面向对象的思想,在进行评价的同时我也会学习他的优点,不断努力进步。二项目需求与评分标准用户:小学、初中和高中数学老师。功......
  • 与结对队友的个人项目互评
    与我结对的队友是木拉迪力.艾海提同学,接下来我来分析一下他的个人项目:#include<iostream>#include<string>#include<fstream>#include<ctime>#include<cstdlib>usingnamespacestd;classTeacher{public:Teacher();Teacher(stringusername,stringpwd,str......
  • hnu个人项目互评
    对同伴宋玉为的个人项目的互评:1.代码运行结果1.1登录效果:1.2出题效果:出题有提示题目文件保存在绝对路径,为txt格式,题目前有序号,但是题目之间没有空行。 1.3切换效果:输入错误的指令有提示,输入正确的指令切换成功。初中题目:  高中题目,某些题目被大括号扩了起来。......
  • 【HNU个人项目互评】 基于java生成中小学数学卷子自动生成程序代码分析
    【评价者】:金颖希【项目作者】:刘一凡【使用语言】:Java前言【项目简介】本项目为中小学数学卷子自动生成程序,采用java编程语言实现用户登录、用户类型判断、生成题目、题目查重、切换用户类型以及题目保存等简单功能。【评价标准】本文以代码分析为主,主要从代码的可读性、性能......