C++實現(xiàn)一款簡單的分數(shù)計算器

#include <iostream>
#include <cmath>
using namespace std;
// 加法函數(shù)
double add(double a, double b) {
??return a + b;
}
// 減法函數(shù)
double subtract(double a, double b) {
??return a - b;
}
// 乘法函數(shù)
double multiply(double a, double b) {
??return a * b;
}
// 除法函數(shù)
double divide(double a, double b) {
??if (b != 0) {
????return a / b;
??} else {
????cout << "除數(shù)不能為零!" << endl;
????return 0;
??}
}
// sin函數(shù)
double sine(double angle) {
??return sin(angle);
}
// cos函數(shù)
double cosine(double angle) {
??return cos(angle);
}
// tan函數(shù)
double tangent(double angle) {
??return tan(angle);
}
// 開方函數(shù)
double squareRoot(double num) {
??if (num >= 0) {
????return sqrt(num);
??} else {
????cout << "不能對負數(shù)進行開方!" << endl;
????return 0;
??}
}
// 解二次方程函數(shù)
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 << "方程沒有實數(shù)解!" << 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函數(shù)" << endl;
??cout << "6. cos函數(shù)" << endl;
??cout << "7. tan函數(shù)" << endl;
??cout << "8. 開方" << endl;
??cout << "9. 解二次方程" << endl;
??cout << "請選擇操作:";
??cin >> choice;
??switch (choice) {
????case 1:
??????cout << "請輸入兩個數(shù):";
??????cin >> num1 >> num2;
??????cout << "結果:" << add(num1, num2) << endl;
??????break;
????case 2:
??????cout << "請輸入兩個數(shù):";
??????cin >> num1 >> num2;
??????cout << "結果:" << subtract(num1, num2) << endl;
??????break;
????case 3:
??????cout << "請輸入兩個數(shù):";
??????cin >> num1 >> num2;
??????cout << "結果:" << multiply(num1, num2) << endl;
??????break;
????case 4:
??????cout << "請輸入兩個數(shù):";
??????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 << "請輸入一個數(shù):";
??????cin >> num1;
??????cout << "結果:" << squareRoot(num1) << endl;
??????break;
????case 9:
??????cout << "請輸入二次方程的系數(shù):";
??????cin >> a >> b >> c;
??????solveQuadraticEquation(a, b, c);
??????break;
????default:
??????cout << "請選擇有效的操作!" << endl;
??????break;
??}
??return 0;
}