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.
UI_math_system/doc/README.md

154 lines
4.9 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 数学冒险岛 - 互动式数学学习软件
## 📘 项目简介
**“数学冒险岛”** 是一款面向小学、初中和高中学生的互动式数学学习软件。
通过 **游戏化界面设计** 与 **分学段题目设置**,让数学练习更具趣味性与挑战性。
软件支持用户邮件注册登录、学段选择、自定义题目数量、在线答题及结果反馈等功能,
适合各学段学生进行数学能力训练与提升。
---
## ✨ 功能特点
- **用户系统**:支持账号注册(含邮箱验证码)、登录、密码修改及退出功能
- **学段划分**:分为小学、初中、高中三个学段,自动匹配不同难度题目
- **个性化练习**可自定义题目数量1030 题),满足多样化练习需求
- **友好界面**:采用渐变卡通风格设计,搭配 Emoji 元素增强趣味性
- **即时反馈**:答题完成后即时展示得分结果,支持重新挑战
- **数据管理**:自动保存用户试卷记录,实现持久化存储
---
## 📁 项目结构
```bash
数学冒险岛/
├── core/ # 核心逻辑模块
│ ├── data_handler.py # 数据处理与文件存储
│ ├── email_service.py # 邮件验证码发送模块
│ ├── question_bank.py # 题目生成与难度匹配
│ ├── user_system.py # 用户注册、登录与管理
├── ui/ # 图形界面模块PyQt5 实现)
│ ├── login_ui.py # 登录界面
│ ├── main_window.py # 主窗口与页面切换逻辑
│ ├── question_ui.py # 题目答题界面
│ ├── register_ui.py # 注册界面
│ ├── result_ui.py # 答题结果展示界面
│ └── user_management_ui.py # 用户信息管理界面
├── generated_papers/ # 用户完成的试卷存储目录
├── main.py # 程序入口(运行此文件启动)
```
## 安装说明
### 环境要求
- Python 版本:`3.7+`
- 主要依赖:
- `PyQt5`(界面框架)
- `random`(随机题目生成)
- `smtplib`(邮箱验证码发送)
---
## 安装步骤
```bash
# 克隆仓库(若有)
git clone <仓库地址>
# 进入项目目录
cd math_adventure_island
# 安装依赖
pip install PyQt5
````
---
## 界面展示
以下表格展示了软件主要界面的功能与设计亮点:
| 页面名称 | 界面描述 | 主要功能 | 设计特点 |
|:--------:|:--------:|:--------:|:--------:|
| **主页面** | 登录 / 注册入口页面 | 用户登录、账号注册、退出系统 | 粉绿渐变背景、卡通风格、Emoji 装饰 |
| **学段选择页** | 选择学习阶段 | 小学 / 初中 / 高中学段选择、用户信息显示 | 分学段色彩、清晰布局、渐变背景延续 |
| **题目数量页** | 设置练习题目数量 | 输入题目数量、开始练习、返回上一级 | 简洁输入框、范围提示、友好错误提示 |
| **答题页** | 进行数学题目练习 | 显示题目、选择答案、进度跟踪 | 清晰排版、选项高亮、进度指示、交互反馈 |
| **结果页** | 展示答题成绩和统计 | 显示得分、重新练习、返回主页 | 数据可视化、醒目得分、鼓励性设计 |
## 使用指南
### 注册账号
1. 在主页面点击 **“注册账号”**
2. 输入用户名、邮箱和密码
3. 接收邮箱验证码并填写,完成注册
### 登录系统
1. 点击主页面 **“🎮 开始冒险”**
2. 输入注册的账号与密码进行登录
### 开始练习
1. 登录后选择学段:
* 小学乐园
* 初中城堡
* 高中太空
2. 输入题目数量1030 之间)
3. 点击 **“ 开始冒险”** 进入答题环节
### 查看结果
* 完成全部题目后系统自动展示得分结果
* 可选择 **“重新做题”** 或返回主页继续挑战
---
## 开发说明
### 技术栈
* **语言:** Python
* **框架:** PyQt5
* **架构:** 模块化设计 + QStackedWidget 页面切换
### 核心模块
| 文件名 | 主要功能 |
| ---------------- | ------------ |
| main_window.py | 主窗口逻辑与页面切换管理 |
| question_bank.py | 题目生成与试卷管理 |
| email_service.py | 注册验证码生成与邮件发送 |
| data_handler.py | 文件存储与用户数据处理 |
---
## 界面设计
* 使用 **QSS 样式表** 实现渐变背景、圆角按钮、柔和阴影等效果
* 通过 **QStackedWidget** 实现多页面无缝切换
* 界面配色采用卡通风格,适合中小学生视觉体验
---
## 联系方式
如需反馈问题或提出改进建议,请联系:
**1463365450@qq.com**
或在 **头歌** 提交 Issue