Java大數

來源:互聯網
上載者:User

標籤:blank   階乘   plain   pow   color   cas   ssi   valueof   int   

轉自:https://www.cnblogs.com/zufezzt/p/4794271.html

 

import java.util.*;import java.math.*;public class Main{    public static void main(String args[]){       Scanner cin = new Scanner(System.in);       BigInteger a, b;             //以檔案EOF結束       while (cin.hasNext()){           a = cin.nextBigInteger();           b = cin.nextBigInteger();                     System.out.println(a.add(b)); //大整數加法           System.out.println(a.subtract(b)); //大整數減法           System.out.println(a.multiply(b)); //大整數乘法           System.out.println(a.divide(b)); //大整數除法(取整)           System.out.println(a.remainder(b)); //大整數模數                     //大整數的比較           if( a.compareTo(b) == 0 ) System.out.println("a == b"); //大整數a==b           else if( a.compareTo(b) > 0 ) System.out.println("a > b"); //大整數a>b           else if( a.compareTo(b) < 0 ) System.out.println("a < b"); //大整數a<b                     //大整數絕對值           System.out.println(a.abs()); //大整數a的絕對值                     //大整數的冪           int exponent=10;           System.out.println(a.pow(exponent)); //大整數a的exponent次冪                     //返回大整數十進位的字串表示           System.out.println(a.toString());                     //返回大整數p進位的字串表示           int p=8;           System.out.println(a.toString(p));       }    }}

 

 

轉自:51884888

HDU 1002a+b大數版
 1 import java.math.BigInteger; 2 import java.util.Scanner; 3  4 public class Main { 5     void solve () { 6         BigInteger a, b, c; 7         Scanner cin = new Scanner(System.in); 8         int t = cin.nextInt (); 9         for (int i = 1; i <= t; i++) {10             System.out.println ("Case " + i + ":");11             a = cin.nextBigInteger ();12             b = cin.nextBigInteger ();13             System.out.println (a + " + " + b + " = " + a.add (b));14             if (i != t) System.out.println ();15         }16     }17     public static void main (String[] args) {18         Main work = new Main();19         work.solve ();20     }21 }

 

HDU 1042階乘大數版
 1 import java.math.BigInteger; 2 import java.util.Scanner; 3  4 public class Main { 5     int maxn = 10005; 6     void solve () { 7         Scanner cin = new Scanner(System.in); 8         int n; 9         while (cin.hasNext()) {10             n = cin.nextInt ();11             BigInteger ans = BigInteger.valueOf (1);12             for (int i = 2; i <= n; i++) {13                 ans = ans.multiply (BigInteger.valueOf (i));14             }15             System.out.println (ans);16         }17     }18     public static void main (String[] args) {19         Main work = new Main();20         work.solve ();21     }22 }

 

HDU 1297f(n)=f(n?1)+f(n?2)+f(n?4)f(n)=f(n?1)+f(n?2)+f(n?4)
import java.math.*;import java.util.*;public class Main {    void solve () {        Scanner cin = new Scanner(System.in);        BigInteger[] ans = new BigInteger[1001];        ans[1] = BigInteger.valueOf (1);        ans[2] = BigInteger.valueOf (2);        ans[3] = BigInteger.valueOf (4);        ans[4] = BigInteger.valueOf (7);        for (int i = 5; i <= 1000; i++) {            ans[i] = ans[i-1].add (ans[i-2].add (ans[i-4]));        }        while (cin.hasNext ()) {            int n = cin.nextInt ();            System.out.println (ans[n]);        }    }    public static void main (String[] args) {        Main work = new Main();        work.solve ();    }}
HDU 1753高精度小數A+B,要去掉末尾的後導0.
import java.math.*;import java.util.*;public class Main {    void solve () {        //BigInteger a, b, c;        Scanner cin = new Scanner(System.in);        BigDecimal a = BigDecimal.valueOf (0);        BigDecimal b = BigDecimal.valueOf (0);        while (cin.hasNext ()) {            a = cin.nextBigDecimal ();            b = cin.nextBigDecimal ();            System.out.println (a.add (b).stripTrailingZeros().toPlainString());        }    }    public static void main (String[] args) {        Main work = new Main();        work.solve ();    }}

 

Java大數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.