用c++编写一个根号的计算器
时间: 2023-03-30 11:00:43 浏览: 125
好的,我可以回答这个问题。以下是一个用 C 语言编写的根号计算器的示例代码:
#include <stdio.h>
#include <math.h>
int main() {
double num, result;
printf("请输入一个数字:");
scanf("%lf", &num);
result = sqrt(num);
printf("该数字的平方根为:%lf", result);
return ;
}
这个程序会提示用户输入一个数字,然后计算该数字的平方根并输出结果。
相关问题
编写一个计算器的C++类,能够完成两个数求和,相乘,相除,开根号,平方功能
在C++中编写一个计算器类,可以通过定义成员函数来实现所需的功能。下面是一个简单的例子,展示了如何创建这样的类:
```cpp
#include <iostream>
#include <cmath>
class Calculator {
public:
// 构造函数
Calculator() {}
// 析构函数
~Calculator() {}
// 求和
double add(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 {
std::cerr << "除数不能为0" << std::endl;
return 0;
}
}
// 开根号
double sqrt(double a) {
if (a >= 0) {
return sqrt(a);
} else {
std::cerr << "被开方数不能为负数" << std::endl;
return 0;
}
}
// 平方
double square(double a) {
return a * a;
}
};
int main() {
Calculator calc;
// 测试功能
std::cout << "1 + 2 = " << calc.add(1, 2) << std::endl;
std::cout << "3 * 4 = " << calc.multiply(3, 4) << std::endl;
std::cout << "9 / 3 = " << calc.divide(9, 3) << std::endl;
std::cout << "sqrt(16) = " << calc.sqrt(16) << std::endl;
std::cout << "5 squared = " << calc.square(5) << std::endl;
return 0;
}
```
这个类定义了五个成员函数:`add`、`multiply`、`divide`、`sqrt` 和 `square`,分别用于实现加法、乘法、除法、开根号和平方运算。`sqrt` 和 `divide` 函数还做了错误检查,以防止除数为零和被开方数为负的情况发生。
编写一个计算器的C++类,能够完成两个数的求和、相乘、相除,开根号、平方功能。
可以创建一个名为`Calculator`的C++类,这个类会包含私有成员变量以及公有成员函数来实现所需的操作。以下是简单的类设计:
```cpp
#include <iostream>
#include <cmath> // 包含数学库,用于计算根号和平方
class Calculator {
private:
double num1;
double num2;
public:
// 构造函数,初始化两个数字
Calculator(double a = 0, double b = 0) : num1(a), num2(b) {}
// 求和
double add() const { return num1 + num2; }
// 相乘
double multiply() const { return num1 * num2; }
// 相除 (处理除数为零的情况)
double divide(double divisor) const {
if (divisor != 0) {
return num1 / divisor;
} else {
throw std::runtime_error("Division by zero is not allowed.");
}
}
// 开根号
double square_root() const {
if (num1 >= 0) {
return sqrt(num1);
} else {
throw std::runtime_error("Square root of negative number is undefined.");
}
}
// 平方
double square() const { return num1 * num1; }
// 显示结果的友元函数,方便外部获取计算结果
friend std::ostream& operator<<(std::ostream& os, const Calculator& calc);
};
// 输出运算结果到流
std::ostream& operator<<(std::ostream& os, const Calculator& calc) {
os << "Result for operation: ";
os << "Sum: " << calc.add() << "\n";
os << "Product: " << calc.multiply() << "\n";
try {
os << "Quotient: " << calc.divide(2) << "\n"; // 示例除以2
} catch (const std::exception& e) {
os << e.what() << "\n";
}
os << "Square Root: " << calc.square_root() << "\n";
os << "Square: " << calc.square() << "\n";
return os;
}
int main() {
Calculator calculator(5, 3);
std::cout << calculator << std::endl;
return 0;
}
```
阅读全文