JAVA 大数运算

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;

public class 大数计算 {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner cin = new Scanner(System.in);

    while(cin.hasNext())//相当于c语言中的scanf("%d", &n) != EOF
    {
        BigInteger a, b;
        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));//大整数取模

        System.out.println(a.abs());//对大整数a取绝对值

        int x = 0;
        System.out.println(a.pow(x));//大整数a的x次幂

        int y = 8;
        System.out.println(a.toString(y));//返回大整数a的p进制用字符串表现的形式
        System.out.println(a.toString());//返回大整数a的十进制用字符串表现的形式

        //大整数之间的比较
        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)


        //浮点数计算
        BigDecimal c, d;
        c = cin.nextBigDecimal();
        d = cin.nextBigDecimal();
        System.out.println(c.add(d));//浮点数相加

        System.out.println(c.subtract(d));//浮点数相减

        System.out.println(c.multiply(d));//浮点数相乘




    }
}

}

猜你喜欢

转载自blog.csdn.net/qq_42819248/article/details/81706858