返回主站|会员中心|保存桌面

软件定制开发公司    

软件定制开发公司,承接各类工控软件,上位机软件,plc程序开发,编程,调试,电气...

联系方式
  • 联系人:吴经理
  • 电话:18576370666
新闻分类
  • 暂无分类
站内搜索
 
友情链接
首页 > 新闻中心 > 举一个计算器的例子!
新闻中心
举一个计算器的例子!
发布时间:2024-11-21        浏览次数:43        返回列表

以下是一个更复杂的计算器程序的例子,它使用了C++中的类和对象来封装计算器的功能,并提供了用户友好的界面来执行基本的算术运算。

cpp复制代码


#include <iostream>

#include <stdexcept> // 用于抛出异常



// 计算器类

class Calculator {

public:

// 执行加法运算

double add(double a, double b) {

return a + b;

}



// 执行减法运算

double subtract(double a, double b) {

return a - b;

}



// 执行乘法运算

double multiply(double a, double b) {

return a * b;

}



// 执行除法运算,如果除数为0则抛出异常

double divide(double a, double b) {

if (b == 0) {

throw std::invalid_argument("Division by zero is not allowed.");

}

return a / b;

}

};



int main() {

Calculator calc; // 创建计算器对象

char op;

double num1, num2, result;



// 显示菜单

std::cout << "Simple Calculator\n";

std::cout << "Enter operation (+, -, *, /): ";

std::cin >> op;



// 输入两个数字

std::cout << "Enter first number: ";

std::cin >> num1;

std::cout << "Enter second number: ";

std::cin >> num2;



try {

// 根据用户输入执行相应的运算

switch (op) {

case '+':

result = calc.add(num1, num2);

break;

case '-':

result = calc.subtract(num1, num2);

break;

case '*':

result = calc.multiply(num1, num2);

break;

case '/':

result = calc.divide(num1, num2);

break;

default:

throw std::invalid_argument("Invalid operator entered.");

}



// 显示结果

std::cout << "Result: " << result << std::endl;

} catch (const std::invalid_argument& e) {

// 捕获并显示异常信息

std::cerr << "Error: " << e.what() << std::endl;

}



return 0;

}

在这个例子中,我们定义了一个Calculator类,它包含了四个成员函数来执行加法、减法、乘法和除法运算。main函数中,我们首先创建了一个Calculator对象,然后提示用户输入运算符和两个数字。根据用户输入的运算符,我们使用switch语句调用相应的成员函数来计算结果。如果用户输入了无效的运算符或尝试除以零,程序将抛出异常,并在catch块中捕获并显示错误信息。

这个程序提供了一个基本的框架,你可以根据需要进一步扩展它,例如添加更多的运算功能、改进用户界面或处理更多的异常情况。

收缩
  • QQ咨询

  • 电话咨询

  • 18576370666
  • 添加微信客服