weixin_42042460 2018-04-22 11:52 采纳率: 63.6%
浏览 935
已采纳

如何用递归计算Loga(n) java或者python

如何在java或者python中不用math库而用递归写出精确度高的计算loga(n)的方法?
以a为底

def recursivelog(n, x, b, l=None, u=None):
assert( n >= 0)
assert( x >= 1)
assert( isinstance(b, int) )
assert( b >= 2 )
float(x)
if(x<b):
return 0
else:
return 1+ recursivelog(n-1,x/b,b)
我自己的程序精度太差而且返回的都是整数

  • 写回答

3条回答 默认 最新

  • 默默悟问 2018-04-23 05:55
    关注

    另外推导的:
    public static double loga1(int level, double a, double n) {
    if (a <= 0 || n <= 0)
    return Double.NaN;
    if (level > 500)
    return 1;
    if (a == 1) {
    return Double.NaN;
    } else if (a > 1) {
    if (n > a) {
    return 1 + loga1(level + 1, a, n/a);
    } else if (n == a) {
    return 1;
    } else { //n < a
    return 1 / loga1(level + 1, n, a);
    }
    } else { //a < 1
    return -loga1(level + 1, 1/a, n);
    }
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建