需要一种更好的方法来编写电源函数
Need a better way to write a power function
我有此代码用于我创建的电源函数,并被告知有两个方法可以将两者结合起来以进行循环(一个用于阳性,一个用于负指数(并使用条件操作员
double myPow(double base, int exponent) {
double result = 1;
for (int i = 0; i < exponent; i++) {
result *= base;
}
for (int i = 0; i > exponent; --i) {
result /= base;
}
return result;
}
关于从哪里开始的任何建议?
怎么样?
double myPow(double base, int exponent) {
double result = 1;
if (exponent < 0) {
exponent = -exponent;
base = 1/base;
}
for (int i = 0; i < exponent; i++) {
result *= base;
}
return result;
}
您可以获取指数循环的绝对值,然后使用条件运算符在环内进行操作:
double result = 1;
int absExp = std::abs(exponent);
for (int i = 0; i < absExp; i++) {
exponent < 0 ? // division : // multiplication
}
相关文章:
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 使用std::函数映射对象方法
- 有没有什么方法可以使用一个函数中定义的常量变量,也可以由c++中同一程序中的其他函数使用
- 初始化具有非默认构造函数的std::数组项的更好方法
- 如何制作一个将函数作为参数的类方法
- 用常见虚拟函数实现的任意组合来实现派生类的正确方法是什么
- 获取从C++中同一类中的构造函数调用的方法返回的值
- C++ - 类方法函数指针unordered_map的初始化器列表
- 如何从具有多个对象/字段的类中调用方法函数
- 如何以这种方式访问另一个文件的方法/函数
- Vim 转到标准库方法/函数定义
- 在方法/函数中使用"static const std::string"还是只使用"cons
- 我可以将这两种方法/函数合二为一吗?
- 为什么我不能添加到方法/函数外部的 ostringstream
- 如何在调用方法函数中将列表、向量或数组作为参数传递
- 如何专门化模板化类,以采用不带参数的方法函数类型
- 类方法/函数中的指针
- 修改参数和/或返回新实例的方法/函数的命名约定
- 在Lua中跟踪变量以进行读访问,以启动用户定义的c++方法/函数
- 调试可视化工具在预览中使用成员方法/函数调用