软件工程导论-搭档个人项目分析

一:代码功能

该程序为中小学数学卷子自动生成程序。包括以下功能:

 

1.用户登录操作,命令行输入用户名和密码,判断是否有该账户;

 

2.登录状态下,可选择生成题目的数量或者切换年级;

 

3.根据用户对应的小学、初中、高中三个年级生成不同难度的算术题;

 

4.文件按照指定格式输出

 

 

二:根据以上的功能,该代码也分为了以下几个模块。

· class User   定义用户

   public class generate   用户列表

   private static void initializeThe() 初始化用户数据

   login()     用户登录

 

· private static void generateFun(String username, String grade) 选择数量\切换年级

 

· static String problem_generate(String level)    随机生成操作符号,数字

   static boolean isRight(String problem)       生成括号

   static String brackets(String problem_inital)   题目生成

 

· static boolean itemIsExist(String problem, String username)     生成试卷

   static void generate(String username, int number, String level) 生成用户名,题目数量,等级

 

 

三:代码优点:

  1. 运用了数组来储存运算符以及待运算的数字,大大降低了代码的长度,同时也提高了代码的可辨识度。
  2. 巧妙地利用了if语句将“+-*/”等运算符与“√,^,sin,cos,tan”等运算符分离,方便了运算符的插入。
  3. 代码简洁,运行界面指示通俗易懂,加入分割线使运行页面看起来美观,条理清晰。

 

 

 

四.代码缺点:

  1. 由于括号的加入太过随机使得很多括号的加入并非必要,并且尚未加入不必要括号的删除步骤。
  2. 将计算式储存在字符串中并没有将数据与运算符分开,因此对于后续的计算也非常不方便。

 

 

 

 

 

五.代码测试:

登录界面符合项目要求。

 软件工程导论-搭档个人项目分析_第1张图片

 

六:试卷展示

 软件工程导论-搭档个人项目分析_第2张图片

所出题目符合个人项目的要求。

你可能感兴趣的:(软件工程导论-搭档个人项目分析)