15. 简易计算器(控制台实现)
15.1 项目概述
在前面的课程中,我们已经学习了 C++ 的基础语法,像变量、数据类型、控制结构以及函数等内容。现在,我们要把这些知识运用起来,打造一个简易的控制台计算器。这个计算器能够实现基本的四则运算,也就是加法、减法、乘法和除法。
15.2 项目目标
- 构建一个能在控制台与用户交互的简易计算器。
- 支持加、减、乘、除这四种基本运算。
- 合理处理用户输入,对可能出现的错误输入给出相应提示。
15.3 开发环境
我们使用 Dev – C++ 作为开发工具,它是一款简单易用的集成开发环境,非常适合初学者。
15.4 实现思路
- 让用户输入两个数字和一个运算符。
- 根据用户输入的运算符,执行对应的运算。
- 输出运算结果。
- 处理可能出现的错误,比如输入了非法运算符或者除数为零的情况。
15.5 代码实现
#include <iostream> using namespace std; // 定义加法函数 double add(double num1, double num2) { return num1 + num2; } // 定义减法函数 double subtract(double num1, double num2) { return num1 - num2; } // 定义乘法函数 double multiply(double num1, double num2) { return num1 * num2; } // 定义除法函数 double divide(double num1, double num2) { if (num2 == 0) { cout << "错误:除数不能为零!" << endl; return 0; } return num1 / num2; } int main() { double num1, num2; char op; cout << "欢迎使用简易计算器!" << endl; cout << "请输入第一个数字: "; cin >> num1; cout << "请输入运算符 (+, -, *, /): "; cin >> op; cout << "请输入第二个数字: "; cin >> num2; double result; switch (op) { case '+': result = add(num1, num2); cout << num1 << " + " << num2 << " = " << result << endl; break; case '-': result = subtract(num1, num2); cout << num1 << " - " << num2 << " = " << result << endl; break; case '*': result = multiply(num1, num2); cout << num1 << " * " << num2 << " = " << result << endl; break; case '/': result = divide(num1, num2); if (num2 != 0) { cout << num1 << " / " << num2 << " = " << result << endl; } break; default: cout << "错误:输入的运算符无效!请使用 +, -, *, /。" << endl; } return 0; }
15.6 代码解释
- 函数定义:
add
函数:接收两个双精度浮点数,返回它们的和。subtract
函数:接收两个双精度浮点数,返回它们的差。multiply
函数:接收两个双精度浮点数,返回它们的积。divide
函数:接收两个双精度浮点数,若除数不为零,返回它们的商;若除数为零,输出错误信息并返回 0。
main
函数:- 提示用户输入第一个数字、运算符和第二个数字。
- 运用
switch
语句依据用户输入的运算符调用相应的函数进行运算。 - 输出运算结果,若输入的运算符无效或者除数为零,输出错误提示。
15.7 课后练习
- 对代码进行扩展,让计算器能够连续进行多次运算,直到用户选择退出。
- 增添更多的运算功能,例如求余数、计算平方根等。
通过这个项目,你可以把之前学到的 C++ 基础知识进行综合运用,提升自己解决实际问题的能力。