求解缺失指数的C#方法

本文关键字:方法 指数 | 更新日期: 2023-09-27 17:59:05

对于方程X^Y=Z,我如何编写一个c#方法来求解Y?一个已经存在了吗?

以下是我将拥有的一些数据示例-

2^Y=8

3^Y=9

求解缺失指数的C#方法

试试这个

Y=Math.Log(8) / Math.Log(2)

您正在寻找Math.Log.

有了它,你可以做到:

x = Math.Log(8) / Math.Log(2)

也不是说有一个Math.Log10是以10为底的对数——结果仍然是一样的。

不是最优化的选项,但您可以迭代通过大量数字的for循环,并逐个迭代检查。只是一个突然出现在我脑海中的解决方案。代码看起来像:

    int base = 2;
    int exponent;
    int result = 8;
for(int i = -9999; i<= 10000000; i++)
{
  exponent = i;
  if(Math.Pow(2,exponent) == result)
{
 WriteLine($"Y = {exponent}");
}

您可以了解X可以分配多少时间Z。

希望这能有所帮助。

while (Z > X) 
{
  Z = Z / X;
  Y++;
}