Files
2025-08-24 13:01:09 +08:00

88 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 计算器项目
这是一个简单的命令行计算器项目,演示了 Go 语言的基本语法和编程概念的综合应用。
## 项目特性
- 支持基本四则运算(加、减、乘、除)
- 支持括号运算
- 支持浮点数计算
- 错误处理和输入验证
- 交互式命令行界面
- 历史记录功能
## 项目结构
```
01-calculator/
├── README.md # 项目说明文档
├── main.go # 主程序入口
├── calculator/ # 计算器核心包
│ ├── calculator.go # 计算器主要逻辑
│ ├── parser.go # 表达式解析器
│ └── history.go # 历史记录管理
└── calculator_test.go # 测试文件
```
## 运行方法
```bash
# 进入项目目录
cd 10-projects/01-calculator
# 运行程序
go run main.go
# 或者编译后运行
go build -o calculator main.go
./calculator
```
## 使用示例
```
欢迎使用 Go 计算器!
输入数学表达式,或输入 'quit' 退出,'history' 查看历史记录
> 2 + 3
结果: 5
> 10 * (5 - 2)
结果: 30
> 15 / 3
结果: 5
> history
历史记录:
1. 2 + 3 = 5
2. 10 * (5 - 2) = 30
3. 15 / 3 = 5
> quit
再见!
```
## 学习要点
这个项目综合运用了以下 Go 语言特性:
1. **包管理**: 创建和使用自定义包
2. **结构体和方法**: 定义计算器结构体和相关方法
3. **接口**: 定义计算器接口,实现多态
4. **错误处理**: 处理除零错误、语法错误等
5. **字符串处理**: 解析和处理用户输入
6. **切片操作**: 管理历史记录
7. **控制流程**: 使用循环和条件语句
8. **用户交互**: 命令行输入输出
9. **测试**: 编写单元测试验证功能
## 扩展建议
1. 添加更多数学函数sin, cos, sqrt 等)
2. 支持变量定义和使用
3. 添加配置文件支持
4. 实现图形用户界面
5. 添加科学计算功能
6. 支持不同进制转换
7. 添加单位换算功能