Exercise14_11

14.11(被5或6整除)找出能被5或6整除的前10个数字(大于Long.MAX_VALUE)

这个主要考察的是对于BigInteger类的应用,一开始我想法很简单,直接用跟int类型一样的方法,先加然后再用%取余数,结果发现不能跟int类型混合使用,然后也不能直接用==来判断是否被整除。书上关于类的实现实例太少了,很多方法只能靠做题一点点摸索了。

加法实现:a.add(b);
取余实现:result = a.mod(b);
判断整除:result.equals(zero);

import java.math.BigInteger;
    public class Exercise14_11 {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    BigInteger m = BigInteger.valueOf(Long.MAX_VALUE);
    BigInteger[] a ;
    a= new BigInteger[10];
    BigInteger five = new BigInteger(5+"");
    BigInteger six = new BigInteger(6 + "");
    BigInteger zero = new BigInteger(0+"");
    int j = 0;
    for(int i = 1; j<10 ; i++) {
        BigInteger n =new BigInteger(i + "");
        BigInteger result = m.add(n);
        BigInteger mod1 = result.mod(five);
        BigInteger mod2 = result.mod(six);
        if((mod1.equals(zero) || mod2.equals(zero))) {
            a[j] = m.add(n);
            j++;
        }
    }


}

}
`

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值