本文主要是介绍Java 快速求解x的x次幂结果为10,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.问题描述
如果x的x次幂结果为10(如图所示),你能计算出x的近似值吗?
显然,这个值是介于2和3之间的一个数字。
可以使用牛顿迭代公式进行求解,因为是逼近算法可以大大减少运算次数
public static void main(String[] args) {int i = 0;double x1 = 2.5;while (true) {i++;//x^x - 10 = 0//这一步是牛顿迭代公式double x2 = x1 - (Math.pow(x1, x1) - 10) / (Math.pow(x1, x1) * (Math.log(x1) + 1));if (Math.abs(x2 - x1) < 0.00000001) {System.out.println(String.format("通过运算%d次,得到结果为%.6f",i,x2));break;}x1 = x2;}}
运行结果
通过运算3次,得到结果为2.506184
这篇关于Java 快速求解x的x次幂结果为10的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!