zoukankan      html  css  js  c++  java
  • x 的 x 次方等于10,求 x

    当 x 的 x 次方为10时,求 x 的值,精确到小数位后9位

    过程如下:

    2 的 2 次方 小于 10;

    3 的 3 次方 大于 10;

    因此 x 在 2 到 3 之间。

    找出整数部分后,需要计算出小数部分,然后把两部分加到一个串里即可(可以以串的形式输出,也可以转成浮点数输出,下面的程序是以串的形式输出的)。

    用试探法来做,过程如下:

    小数点后第一位,从 0 开始,加在整数部分后面组成一个新数 y,如果 y 的 y 次方小于 10,把 0 去掉,加上 1,......

      依次往下加,直到 y 的 y 次方大于 10,即可确定 x 的小数部分的第一位为当前数字的前一位。

      例如:

      2.1 的 2.1 次方 小于 10;

      2.2 的 2.2 次方 小于 10;

      ……

      2.5 的 2.5 次方 小于 10;

      2.6 的 2.6 次方 大于 10;

      因此,小数第一位是 5,当前 x 为 2.5……。

    同理,即可求出小数部分的第 2 到 9 位。

    程序如下:

    //2017.03.16  by 迷糊狐狸
    public class Test {
        static String s = "";
            
        static String f(double d){
            for(int i=1; i<d; i++){
                if(Math.pow(i, i)>=d){
                    s = f(9, i-1, d);
                    break;
                }
            }
            s = s.charAt(0) + "." + s.substring(1);
            return s;
        }
        
        static String f(int k, int n, double p){
            s = s + n;
            if(k<=0)return s;
            String s1 = s.charAt(0) + "." + s.substring(1);
            String s2 = "";
            for(int i=1; i<=10; i++){
                double d = Double.parseDouble(s1 + i);
                if(Math.pow(d, d)>p){
                    s2 = f(k-1, i-1, p);
                    s = n + f(k-1, i-1, p);
                    break;
                }
            }
            s = s2;
            return s;
        }
    
        public static void main(String[] args) {
            String s = f(10);
            System.out.println(s);
            double d = Double.parseDouble(s);
            System.out.println(Math.pow(d, d));
        }
    
    }

     该程序的后一个输出为检验第一个结果所用。

    输出结果如下:

  • 相关阅读:
    jvm 更多链接
    JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )
    python 排序
    python 第K个语法符号
    python conf.ini 文件的使用
    python 表示数字
    window 下安装redis
    python redis相关操作
    python 矩阵乘法
    python 查找两个字符串a,b中的最长公共子串
  • 原文地址:https://www.cnblogs.com/liyuanba/p/x-x----10.html
Copyright © 2011-2022 走看看