《两个大的整数的运算——Java第九周》

本文介绍了一种使用Java实现大整数运算的方法,包括加、减、乘、除运算以及计算大整数因子个数的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:   《两个大的整数的运算——Java第九周》                          
* 作    者:       刘江波                      
* 完成日期:    2012     年   10    月    21    日
* 版 本 号:   v1.2      

* 对任务及求解方法的描述部分
* 问题描述: 

封装一类Java对象,计算两个大整数(如123456789123456789123456789和987654321987654321987654321)的和、差、积和商,并计算一个大整数的因子个数(因子中不包括1和大整数本身)。
* 程序头部的注释结束
*/

BigInteger类

import java.math.BigInteger;  
import java.math.*;  
public class BigInt {  
    BigInteger m1;  
    BigInteger m2;  
    BigInteger m3;  
  
    BigInt(String s1, String s2) {  
        m1 = new BigInteger(s1);  
        m2 = new BigInteger(s2);  
    }  
  
    public void add() {  
        m3 = m1.add(m2);  
        System.out.println("两个数的和为:" + m3);  
    }  
  
    public void cut() {  
        m3 = m1.subtract(m2);  
        System.out.println("两个数的差为:" + m3);  
    }  
  
    public void multiply() {  
        m3 = m1.multiply(m2);  
        System.out.println("两个数的积为:" + m3);  
    }  
  
    public void divide() {  
        m3 = m1.divide(m2);  
        System.out.println("两个数的商为:" + m3);  
    }  
  
    public void factorCount() {  
        int count = 0;  
        for (BigInteger i = BigInteger.valueOf(2); i.compareTo(m1) < 0; i = i  
                .add(BigInteger.ONE)) {  
            if (m1.remainder(i).equals(BigInteger.ZERO)) {  
                ++count;  
            }  
        }  
        System.out.println(m1 + "的因子个数为:" + count);  
    }  
  
}  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值