• 用Java的大整数类BigInteger来实现大整数的一些运算


    关于BigInteger的构造函数,一般会用到两个:
    BigInteger(String val); //将指定字符串转换为十进制表示形式;

    BigInteger(String val,int radix); 将指定基数的 BigInteger 的字符串表示形式转换为 BigInteger。
    例如val是二进制字符串,想把它转换成十进制的BigInteger,可以这样写:

    String val = "01101";
    BigInteger s = new BigInteger(val, 2);

    比较大小的时候要用到compareTo

    import java.io.*;
    import java.util.*;
    import java.math.*;
    public class Main {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		BigInteger a, b;
    		while(sc.hasNext()) {
    			a = sc.nextBigInteger();
    			b = sc.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");
    			else if(a.compareTo(b) > 0)
    				System.out.println("a > b");
    			else if(a.compareTo(b) < 0)
    				System.out.println("a < b");
    			
    			//大整数的绝对值
    			System.out.println(a.abs());
    			
    			//计算大整数的幂次方
    			int exp = 10;
    			System.out.println(a.pow(exp));
    			
    			//返回大整数十进制的字符串表示
    			System.out.println(a.toString());
    			
    			//返回大整数p进制的字符串表示
    			int p = 8;
    			System.out.println(a.toString(p));
    		}
    		sc.close();
    	}
    }
    
    
  • 相关阅读:
    CSS hacks汇总
    都要靠自己
    不被需要
    我们都是和自己赛跑的人
    其实天底下只有三件事
    开始怀旧了
    JavaScript回调函数陷阱
    郁闷着继续
    清明节悼念逝去亲人
    纯div+css制作的弹出菜单
  • 原文地址:https://www.cnblogs.com/KeepZ/p/11617887.html
Copyright © 2020-2023  润新知