我有一个公式,这个公式使用一个具有自定义基地的日志功能,例如日志的基数为b,值为x。在objective-c中,我知道有一些日志函数可以计算出没有2或10的碱基和碱基。用自定义基地创建一个日志功能
是否有一个函数能够使用自定义/变量基础来计算日志函数?或者可能有一种完成此公式的替代方法。
我公式的基本思想是这个log(1 + 0.02)(1.26825)(1 + 0.02是基数)。这应该等于12.000。
我有一个公式,这个公式使用一个具有自定义基地的日志功能,例如日志的基数为b,值为x。在objective-c中,我知道有一些日志函数可以计算出没有2或10的碱基和碱基。用自定义基地创建一个日志功能
是否有一个函数能够使用自定义/变量基础来计算日志函数?或者可能有一种完成此公式的替代方法。
我公式的基本思想是这个log(1 + 0.02)(1.26825)(1 + 0.02是基数)。这应该等于12.000。
像这样:
double logWithBase(double base, double x) {
return log(x)/log(base);
}
你可以计算任意的对数与logbx = logcx/logcb
,其中c
是更容易获得碱如10
或e
之一。
对于您的特定示例,loge1.26825 = 0.237637997
和loge1.02 = 0.019802627
。这是12.000
(在我的计算器的准确性范围内):。
事实上,1.0212
实际上是1.268241795
,如果您使用的是价值,你会得到更接近12:
loge1.268241795 = 0.237631528
loge1.02 = 0.019802627
0.237631528/0.019802627 = 12.000000197
。雷是正确的,但这里是它的一个对象 - 法修改:
-(double) logWithBase:(double)base andNumber:(double)x {
return log(x)/log(base);
}
这是没有意义的都有这个实例方法一吨,因为它不”不要使用实例。如果你真的想要一个Obj-C方法而不仅仅是一个C函数,你可以将它作为一个MathUtils类的类方法或类似方法。 –
感谢那些工作完全 –