zoukankan      html  css  js  c++  java
  • java的BigDecimal

                                                  java的BigDecimal

         一般设计到高精度的加法或乘法或者阶乘的求和积都会用到BigDecimal这个类。

       import java.util.*;
    import java.math.BigDecimal;
    import java.lang.*;
    public class Main {

    public static   BigDecimal fun2(int n)
        {
              BigDecimal result = new BigDecimal(1);
                      BigDecimal a;
                      
                      for(int i=2;i<=n;i++)
                      {
                          a= new  BigDecimal(i);
                         result = result.multiply(a);
                      }
                 
            
            return result;
        }public static void main(String[] args)
        {
            Scanner in=new Scanner(System.in);
             int n=in.nextInt();
              System.out.print(n+"!"+"="+fun2(n));
              
              
        }

    }

    运行结果:

      用BigDecimal 一般求比较的数,如果求3!或10!也可以递归来实现。

     code 如下:

    ublic static int fun(int n)
        {
            if(n==1)
            {
                return 1;
            }
            else
            {
                return n*fun(n-1);
            }
        }

      这是用递归求阶乘的方法。不适用求大数的。

        对于大数的加法或者乘法或者就阶乘也可以数组来做,不过比较复杂。用BigDecimal方便。

     如果有更好的方法希望你们来提供。

  • 相关阅读:
    美团面试(c++方向)
    浪潮面试-软开
    ofo C++面试
    B树、B+树等
    爱奇艺2017秋招笔试(C++智能设备方向)
    腾讯内推一面C++
    i++ 相比 ++i 哪个更高效?为什么?
    进程间的通讯(IPC)方式
    一台服务器能够支持多少TCP并发连接呢?
    可重入和不可重入
  • 原文地址:https://www.cnblogs.com/pwhit/p/5290036.html
Copyright © 2011-2022 走看看