【Algorithm】算法设计与分析(第二版)- 王红梅 - JAVA实现:3.3 判断一个大整数能否被11将该数的十进制表从右端开始,每两位一组构成一个整数,然后将这些数相加,判断其和能否被1整除。

    科技2022-08-20  111

    设计算法,判断一个大整数能否被11整除。可以通过以下方法:将该数的十进制表从右端开始,每两位一组构成一个整数,然后将这些数相加,判断其和能否被1整除。例如,将562843748分割成5,62,84,37,48,然后判断(5+62+84+37+48)能否被11整除 

    package thirdChapter; public class Division11 { public boolean division11(long num) { int r = 0 ; String str = new String(); str = Long.toString(num); for(int i = str.length() - 1; i >= 0; i --) { int temp = Integer.valueOf(str.charAt(i)).intValue(); //对奇数位偶数位的计算 if (i % 2 == 0) { r += temp; }else { r += temp * 10; } } if (r % 11 == 0) return true; return false; } public static void main(String[] args) { // TODO Auto-generated method stub Division11 div11 = new Division11(); long num = 234512689; System.out.println(div11.division11(num)); } }

     

    Processed: 2.304, SQL: 9