- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我必须编写一种算法,对整数或 float 参数中的基数(整数或 float )取幂。我为 Deluge (zoho.com) 编写了这个算法,但它只能使用整数指数:
float math.potencia(float base, int expoente)
{
if(expoente>0)
{
base = base * thisapp.math.potencia(base, (input.expoente - 1));
}
else if (expoente == 0)
{
base = 1;
}
return base;
}
(Deluge 没有增强运算符或函数)。谢谢!
最佳答案
假设可以使用sqrt,可以使用如下算法:
double EPS = 0.0001;
double exponentiation(double base, double exp) {
if(exp >= 1) {
double temp = exponentiation(base, exp / 2);
return temp * temp;
} else {
double low = 0;
double high = 1.0;
double sqr = sqrt(base);
double acc = sqr;
double mid = high / 2;
while(fabs(mid - exp) > EPS) {
sqr = sqrt(sqr);
if (mid <= exp) {
low = mid;
acc *= sqr;
} else {
high = mid;
acc *= (1 / sqr);
}
mid = (low + high) / 2;
}
return acc;
}
}
关于algorithm - 浮点指数求幂算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4432075/
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve thi
我有一个十进制的自然数 x 和一个三进制的自然数 n。如何使用最小乘法次数计算 x^n 的值? 我知道二进制系统的算法,我一直在寻找类比,但没有找到。 最佳答案 也许你需要这样的东西: functio
我怎样才能像在这个 python(使用 sage)代码中那样做: def elGamalDecrypt(c1, c2, p, x): return Mod(c2*c1^(-x),p) 使用标准
我尝试用 Kotlin 编写 Kleisli 求幂: fun kleisli(n: Int, f: (A) -> B): (A) -> B = if (n == 1) f else { it ->
考虑一下: const a = BigInt(2); const b = BigInt(2); const c = a ** b; Babel 会将其转换为: var a = BigInt(2); v
.NET 中内置的 Math.Pow() 函数将一个 double 基数提升为一个 double 指数并返回一个 双结果。 对整数执行相同操作的最佳方法是什么? 补充:似乎可以将 Math.Pow()
语句的含义是什么 // create arrays of 1M elements const int num_elements = 1 #include // this kernel compute
说, 基数 = 2 且 e = 20000.5671 如何在 Java 中执行上述示例的 (base power e)。 显然 Math.pow(base, e) 不是正确的方法,因为它打印的是“In
我是一名优秀的程序员,十分优秀!