大整数运算 (java BigInteger类)
2018-01-25 23:28
459 查看
java大整数类的运算常常包括:加、减、乘、除,求余数、比较大小、高精度幂、max()函数,min()函数,abs()函数,gcd()函数等等。当我们遇到这类问题时用C或C++解决起来会觉得很麻烦(不过还是要尽量掌握),而java则给我们提供了非常方便的BigInteger类(大整数类)。
import java.util.Scanner;
import java.math.*;
public class test1 {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
BigInteger a,b,c;
while(cin.hasNext()) {
a = cin.nextBigInteger();
b = cin.nextBigInteger();
c = cin.nextBigInteger();
System.out.println(a.add(b)); //add() 加法
System.out.println(a.subtract(b)); //substract() 减法
System.out.println(a.multiply(b)); //multiply() 乘法
System.out.println(a.divide(b)); //divide() 除法
System.out.println(a.mod(b)); // mod() 求模
System.out.println(a.gcd(b)); //gcd()求 a和b的最大公约数
System.out.println(c.abs()); //绝对值
System.out.println(a.max(b)); //max() a、b中较大的值
System.out.println(a.min(b)); //min() a、b中较小的值
System.out.println(a.equals(b)); //a、b是否相等,相等则输出true,否则输出false
}
cin.close();
}
}
多维数组的初始化:
import java.util.Scanner;
import java.math.*;
public class test1 {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
BigInteger a,b,c;
while(cin.hasNext()) {
a = cin.nextBigInteger();
b = cin.nextBigInteger();
c = cin.nextBigInteger();
System.out.println(a.add(b)); //add() 加法
System.out.println(a.subtract(b)); //substract() 减法
System.out.println(a.multiply(b)); //multiply() 乘法
System.out.println(a.divide(b)); //divide() 除法
System.out.println(a.mod(b)); // mod() 求模
System.out.println(a.gcd(b)); //gcd()求 a和b的最大公约数
System.out.println(c.abs()); //绝对值
System.out.println(a.max(b)); //max() a、b中较大的值
System.out.println(a.min(b)); //min() a、b中较小的值
System.out.println(a.equals(b)); //a、b是否相等,相等则输出true,否则输出false
}
cin.close();
}
}
多维数组的初始化:
BigInteger f[] = new BigInteger[110]; BigInteger c[][] = new BigInteger[110][110]; for ( int i = 0 ; i <= 100 ; i++ ) for ( int j = 0 ; j <= 100 ; j++ ) c[i][j] = BigInteger.valueOf(0); //别忘了初始化大整数类的问题基本就会遇到这些,掌握了java的BigInteger类,这类问题基本都会一水而过,C/C++的实现过程这里就先不码了。
相关文章推荐
- 【正整数模板运算(C++手写BigInteger类和java.math.BigInteger以及java.math.BigDecimal)】
- java 之BigInteger类实现计算大整数的阶乘
- java 大整数运算以及BigInteger的用法
- 14-03 java BigInteger类,BigDecimal类,Date类,DateFormat类,Calendar类
- Java程序练习-长整数加法运算
- java学习之BigInteger类、BigDecimal类
- 高效大整数运算库-------An Efficient Library for BigInteger
- POJ 2084 递归+卡特兰数+JAVA大整数运算实例
- BigInteger大整数运算
- java中不用BigInteger实现超大整数的乘法操作
- Java大数处理类:BigInteger类和BigDecimal类
- Java整数运算
- HDU - 1042 N! JAVA大整数乘法运算
- 刷题有感,java的大整数包运算
- JAVA BigInteger类和BigDecimal类
- Go语言的big包实现大整数运算
- 九度+大数运算+Java直接调用BigInteger,注意必须定义的是Main类OJ才过
- 《两个大的整数的运算——Java第九周》
- java实现大整数的四则运算
- JAVA BigInteger 类用例 1:求一个大整数的平方根的整数部分 (SGU 111)