java实验报告处理大整数

java实验报告处理大整数

ID:8979806

大小:53.00 KB

页数:3页

时间:2018-04-13

java实验报告处理大整数_第1页
java实验报告处理大整数_第2页
java实验报告处理大整数_第3页
资源描述:

《java实验报告处理大整数》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实验4处理大整数1.相关知识点程序有时需要处理大整数,java.math包中的BigInteger类提供任意精度的整数运算。可以使用构造方法:publicBigInteger(Sringval)构造一个十进制的BigInteger对象。该构造方法可以发生NumberFormatException异常,也就是说,字符串参数val中如果含有非数字字母就会发生NumberFormatException异常。2.实验目的本实验的目的是让学生掌握BigInteger类的常用方法。3.实验要求编写一个java应用程序,计算2个大整数的和

2、、差、积、商,并计算出一个大整数的因子个数(因子中不包括1和大整数本身)。4.程序模板//HandBigIntegerExample.javaimportjava.math.*;classBigIntegerExample{publicstaticvoidmain(Stringargs[]){BigIntegern1=newBigInteger("987654321987654321987654321"),n2=newBigInteger("123456789123456789123456789"),result=null;

3、result=n1.add(n2);System.out.println("和:"+result.toString());result=n1.subtract(n2);System.out.println("差:"+result.toString());result=n1.multiply(n2);System.out.println("积:"+result.toString());result=n1.divide(n2);System.out.println("商:"+result.toString());BigInteg

4、erm=newBigInteger("17637"),COUNT=newBigInteger("0"),ONE=newBigInteger("1"),TWO=newBigInteger("2");System.out.println(m.toString()+"的因子有:");for(BigIntegeri=TWO;i.compareTo(m)<0;i=i.add(ONE)){if((m.remainder(i).compareTo(BigInteger.ZERO))==0){COUNT=COUNT.add(ONE);Sys

5、tem.out.print(""+i.toString());}}System.out.println("");System.out.println(m.toString()+"一共有"+COUNT.toString()+"个因子");}}1.运行效果示例程序运行结果如图所示:2.实验指导只要计算机的内存足够大,就可以处理任意大的整数。BigInteger类的toString()方法返回当前大整数对象十进制的字符串表示。3.实验后练习(1)编写程序,计算大整数的阶乘。//HandBigIntegerExample1.java

6、importjava.math.*;classBigIntegerExample1{publicstaticvoidmain(Stringargs[]){BigIntegern1=newBigInteger("50");BigIntegern2=newBigInteger("1");BigIntegerone=newBigInteger("1");for(BigIntegeri=one;i.compareTo(n1)<=0;i=i.add(one)){n2=n2.multiply(i);}System.out.println

7、(n1.toString()+"的阶乘为:"+n2.toString());}}运行结果如下:(1)编写程序,计算1+2+3...的前99999999项的和。//HandBigIntegerExample2.javaimportjava.math.*;classBigIntegerExample2{publicstaticvoidmain(Stringargs[]){BigIntegern1=newBigInteger("99999999");BigIntegern2=newBigInteger("0");BigIntege

8、rone=newBigInteger("1");for(BigIntegeri=one;i.compareTo(n1)<=0;i=i.add(one)){n2=n2.add(i);}System.out.println("前"+n1.toString()+"项的和为:"+n2.toStri

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。