You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
5 months ago | |
|---|---|---|
| doc | 5 months ago | |
| src | 5 months ago | |
| README.md | 5 months ago | |
| 修改AI.md | 5 months ago | |
| 类的设计.md | 5 months ago | |
README.md
软件需求分析
1. 引言
该系统是为小学、初中和高中数学老师设计的,用于生成数学题目。老师通过命令行界面输入用户名和密码登录后,可以根据所选账户类型生成相应难度的数学题目,并保存为文本文件。系统应确保生成的题目不重复,并且支持账号类型切换和题目数量设置。
2. 功能需求
2.1 用户登录功能
- 输入:命令行输入用户名和密码,用户名和密码之间用空格隔开。
- 验证:系统预设小学、初中和高中三个账号(每种类型有三个账号),用户名和密码必须正确才能登录。
- 输出:登录成功后显示账户类型,并提示“准备生成 XX 数学题目,请输入生成题目数量”(XX 为用户登录的账户类型,如小学、初中或高中)。登录失败则提示“请输入正确的用户名、密码”,要求重新输入。
2.2 题目生成功能
- 输入:用户输入生成的题目数量(有效范围:10-30),输入-1则退出当前用户,重新登录。
- 题目要求:题目数量应在指定范围内,系统根据账号类型生成题目(小学、初中或高中难度),每道题目的操作数为1-5个,操作数取值范围为1-100。
- 题目存储:生成的题目将以“年-月-日-时-分-秒.txt”的形式保存到指定文件夹下,每个账号有独立的文件夹。每道题目以题号为标识,每题之间空一行。
2.3 避免重复题目
- 要求:同一个老师生成的卷子中的题目不能与以前已生成的题目重复。系统需要根据历史题目文件(存储在指定文件夹下)进行检查,避免题目重复生成。
2.4 账号类型切换功能
- 输入:在登录状态下,用户可以输入命令“切换为 XX”来切换账户类型(XX 为小学、初中和高中)。
- 输出:系统显示“准备生成 XX 数学题目,请输入生成题目数量”,用户输入题目数量后系统重新根据选定类型生成题目。
2.5 退出功能
- 输入:用户输入-1以退出当前登录状态并重新登录。
3. 系统架构设计
3.1 用户登录模块
- 输入:用户名和密码
- 处理:验证用户输入,确认是否匹配预设账号
- 输出:登录成功后根据账号类型显示相关信息,失败则重新提示。
3.2 题目生成模块
- 输入:题目数量和账户类型
- 处理:根据用户输入生成对应难度的数学题目,确保题目不重复,并按指定格式保存为文件。
3.3 文件管理模块
- 输入:生成的题目
- 处理:检查是否存在相同题目文件,保存新生成的题目为指定格式的文件。
- 输出:生成的题目文件保存在指定的文件夹中。
3.4 账号类型切换模块
- 输入:切换命令“切换为 XX”
- 处理:修改当前账号类型并更新题目生成模式。
3.5 错误处理和提示模块
- 输入:用户的各种操作
- 处理:根据不同情况给出详细的错误提示和操作提示。
4. 数据库设计
由于题目数据和用户信息较少,系统可以采用简单的文件存储方式,而不需要使用数据库。每个用户的历史题目将保存在指定的文件夹内,文件名为“年-月-日-时-分-秒.txt”。