使用c++写一个简易计算器 包含加减乘除 乘方 开方 指数对数以及三角函数运算程序选择用 EasyX 图形库编界面; 2)显示功能菜单,用户指定键即可进入响应功能; 3)每次计算完成后输出一个提示符,要计算的数字或表达式由用户在提 示后面输入; 4)用户输入完成后按回车<Enter>键立即显示计算结果
时间: 2024-03-06 16:50:02 浏览: 34
好的,以下是使用 EasyX 图形库编写的简易计算器程序示例,它包含加减乘除、乘方、开方、指数、对数以及三角函数运算:
```cpp
#include <iostream>
#include <cmath>
#include <graphics.h>
using namespace std;
int main() {
initgraph(640, 480);
double num1, num2, result;
char op;
while (true) {
setbkcolor(WHITE);
cleardevice();
settextstyle(20, 0, _T("微软雅黑"));
outtextxy(20, 20, _T("欢迎使用简易计算器"));
settextstyle(16, 0, _T("微软雅黑"));
outtextxy(20, 60, _T("请选择要进行的运算:"));
outtextxy(20, 80, _T("+. 加法"));
outtextxy(20, 100, _T("-. 减法"));
outtextxy(20, 120, _T("*. 乘法"));
outtextxy(20, 140, _T("/. 除法"));
outtextxy(20, 160, _T("^. 幂运算"));
outtextxy(20, 180, _T("r. 开方"));
outtextxy(20, 200, _T("e. 指数"));
outtextxy(20, 220, _T("l. 对数"));
outtextxy(20, 240, _T("s. 正弦"));
outtextxy(20, 260, _T("c. 余弦"));
outtextxy(20, 280, _T("t. 正切"));
outtextxy(20, 300, _T("q. 退出"));
op = getch();
if (op == 'q') {
closegraph();
return 0;
}
settextstyle(16, 0, _T("微软雅黑"));
outtextxy(20, 340, _T("请输入第一个数字: "));
cin >> num1;
if (op == 'r' || op == 'e' || op == 'l' || op == 's' || op == 'c' || op == 't') {
outtextxy(20, 360, _T("请输入角度(度数): "));
cin >> num1;
num1 = num1 * M_PI / 180.0; // 将角度转换为弧度
} else {
outtextxy(20, 360, _T("请输入第二个数字: "));
cin >> num2;
}
switch(op) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
if (num2 == 0) {
outtextxy(20, 400, _T("错误:除数不能为零!"));
getch();
break;
}
result = num1 / num2;
break;
case '^':
result = pow(num1, num2);
break;
case 'r':
result = sqrt(num1);
break;
case 'e':
result = exp(num1);
break;
case 'l':
result = log(num1);
break;
case 's':
result = sin(num1);
break;
case 'c':
result = cos(num1);
break;
case 't':
result = tan(num1);
break;
default:
outtextxy(20, 400, _T("错误: 不支持的操作符!"));
getch();
break;
}
settextstyle(16, 0, _T("微软雅黑"));
outtextxy(20, 400, _T("结果: "));
outtextxy(80, 400, to_wstring(result).c_str());
getch();
}
return 0;
}
```
此程序使用 EasyX 图形库编写界面,支持用户通过按键选择要进行的运算,并且在计算完成后会输出提示符,等待用户输入数字或表达式,并立即显示计算结果。程序还会对除数为零的情况进行处理,并且会将角度转换为弧度后再进行三角函数运算。