题目:超长正整数相加
请设计一个算法完成两个超长正整数的加法。
输入参数:
String addend:加数
String augend:被加数
返回值:加法结果
分析:由题目可知数字超过了Long型的最大范围,而Java中有一个类是专门用来处理很大数据的类,为 BigInteger,它支持任意精度的整数,也就是说在运算中 BigInteger 类型可以准确地表示任何大小的整数值而不会丢失任何信息。我们可通过它的 add() 方法进行两个超长正整数相加的问题。
代码实现:
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
while(in.hasNext()){
String addend=in.next();
String augend=in.next();
BigInteger sum=new BigInteger(addend);
BigInteger sum1=new BigInteger(augend);
BigInteger res=sum.add(sum1);
System.out.println(res);
}
}
}