標籤:
1. 單元變數常用大數操作:
import java.util.Scanner;import java.math.*;public class Main{public static void main(String args[]){Scanner cin= new Scanner(System.in);//使用Sacnner類建立cin對象BigInteger a, b;//建立大數對象while(cin.hasNext()){a=cin.nextBigInteger();b=cin.nextBigInteger();System.out.println("a+b="+a.add(b));System.out.println("a-b="+a.subtract(b));System.out.println("a*b="+a.multiply(b));System.out.println("a/b="+a.divide(b));System.out.println("a%b="+a.remainder(b));if(a.compareTo(b)==0) //比較兩數的大小System.out.println("a==b");else if(a.compareTo(b)>0)System.out.println("a>b");else System.out.println("a<b");System.out.println(a.abs());//取絕對值int e=10;System.out.println(a.pow(e));//求a^eSystem.out.println(a.toString()); //將大數a轉字串輸出int p=8;System.out.println(a.toString(p)); //將大數a轉換成p進位後 按字串輸出}}}
2.java大數 實現遞推公式:f[i]=f[i-1]+f[i-2]*2
import java.util.*;import java.math.*; //匯入類public class Main{ static BigInteger[] ans; //定義全域變數 public static void main(String[] args){ Scanner reader=new Scanner(System.in); //定義Scanner類對象 ans = new BigInteger[251]; //定義ans大數數組的大小 ans[0]=BigInteger.valueOf(1);//大數賦初值 ans[1]=BigInteger.valueOf(1); ans[2]=BigInteger.valueOf(3); for(int i=3; i<=250; i++) { ans[i] = ans[i-1].add(ans[i-2].multiply(BigInteger.valueOf(2))); } //大數加法的使用 int n; while(reader.hasNextInt()){ n=reader.nextInt(); System.out.println(ans[n]); //普通輸出 } }}
【Java】-BigInteger大數類的使用【超強Java大數模板 總結】