C++实现一款简单的分数计算器

#include <iostream>
#include <cmath>
using namespace std;
// 加法函数
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;
}
// 除法函数
double divide(double a, double b) {
if (b != 0) {
return a / b;
} else {
cout << "除数不能为零!" << endl;
return 0;
}
}
// sin函数
double sine(double angle) {
return sin(angle);
}
// cos函数
double cosine(double angle) {
return cos(angle);
}
// tan函数
double tangent(double angle) {
return tan(angle);
}
// 开方函数
double squareRoot(double num) {
if (num >= 0) {
return sqrt(num);
} else {
cout << "不能对负数进行开方!" << endl;
return 0;
}
}
// 解二次方程函数
void solveQuadraticEquation(double a, double b, double c) {
double discriminant = b * b - 4 * a * c;
if (discriminant > 0) {
double root1 = (-b + sqrt(discriminant)) / (2 * a);
double root2 = (-b - sqrt(discriminant)) / (2 * a);
cout << "方程的解为:" << root1 << "," << root2 << endl;
} else if (discriminant == 0) {
double root = -b / (2 * a);
cout << "方程的解为:" << root << endl;
} else {
cout << "方程没有实数解!" << endl;
}
}
int main() {
int choice;
double num1, num2, angle;
double a, b, c;
cout << "简单计算器" << endl;
cout << "1. 加法" << endl;
cout << "2. 减法" << endl;
cout << "3. 乘法" << endl;
cout << "4. 除法" << endl;
cout << "5. sin函数" << endl;
cout << "6. cos函数" << endl;
cout << "7. tan函数" << endl;
cout << "8. 开方" << endl;
cout << "9. 解二次方程" << endl;
cout << "请选择操作:";
cin >> choice;
switch (choice) {
case 1:
cout << "请输入两个数:";
cin >> num1 >> num2;
cout << "结果:" << add(num1, num2) << endl;
break;
case 2:
cout << "请输入两个数:";
cin >> num1 >> num2;
cout << "结果:" << subtract(num1, num2) << endl;
break;
case 3:
cout << "请输入两个数:";
cin >> num1 >> num2;
cout << "结果:" << multiply(num1, num2) << endl;
break;
case 4:
cout << "请输入两个数:";
cin >> num1 >> num2;
cout << "结果:" << divide(num1, num2) << endl;
break;
case 5:
cout << "请输入角度:";
cin >> angle;
cout << "结果:" << sine(angle) << endl;
break;
case 6:
cout << "请输入角度:";
cin >> angle;
cout << "结果:" << cosine(angle) << endl;
break;
case 7:
cout << "请输入角度:";
cin >> angle;
cout << "结果:" << tangent(angle) << endl;
break;
case 8:
cout << "请输入一个数:";
cin >> num1;
cout << "结果:" << squareRoot(num1) << endl;
break;
case 9:
cout << "请输入二次方程的系数:";
cin >> a >> b >> c;
solveQuadraticEquation(a, b, c);
break;
default:
cout << "请选择有效的操作!" << endl;
break;
}
return 0;
}