利用JAVA完成两个随机100位正整数的相加操作。这个思路大致要怎么写,代码怎么写?

如题所述

你给的分太少了,不过题目有挑战性,所以。。。

import java.math.BigInteger;
import java.util.Random;

public class BigNumberOperation {
public static void main(String[] args) {
//以系统时间为种子
Random ran=new Random(System.currentTimeMillis());
//用以容纳两百位以上的数字
StringBuffer veryLongRandomNumber=new StringBuffer();
//不断添加乱数使其长度达到至少两百零八位
for(int i=0;i<13;i++){
veryLongRandomNumber.append(ran.nextDouble());
}
//打印结果,得到长度
System.out.println("未处理前的字符串:"+veryLongRandomNumber);
System.out.println("处理前的长度为:"+veryLongRandomNumber.length());
//去除字符串中的小数点和其前面的零
String temp=new String(veryLongRandomNumber).replaceAll("0\\.", "");
//再打印结果,确保处理后的长度大过二百
System.out.println("处理后的字符串:"+temp);
System.out.println("处理后的长度为:"+temp.length());
//取出前一百位的整数,放入firstNumber
String firstNumber=temp.substring(0,100);
System.out.println("第一个数:"+firstNumber);
System.out.println("第一个数长度为:"+firstNumber.length());
//取出后一百位的整数,放入secondNumber
String secondNumber=temp.substring(100,200);
System.out.println("第二个数:"+secondNumber);
System.out.println("其长度也是:"+secondNumber.length());
//将两个数放入大整数型,进行加操作,
BigInteger firstBigInteger=new BigInteger(firstNumber);
BigInteger secondBigInteger=new BigInteger(secondNumber);
BigInteger sum=firstBigInteger.add(secondBigInteger);
//打印结果
System.out.println("两个一百位的随机数加起来等于:"+sum);
}
}追问

//以系统时间为种子
Random ran=new Random(System.currentTimeMillis());
//不断添加乱数使其长度达到至少两百零八位
for(int i=0;i<13;i++){
veryLongRandomNumber.append(ran.nextDouble());
}
这两句什么意思?

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-17
本来想给你写的 不过一看你给的分太少了, 你在追加点吧 我就写一个 嘿嘿
相似回答