日期:2014-05-20 浏览次数:20880 次
public static void main(String[] args) {
BigDecimal a = new BigDecimal(22);
a = a.divide(new BigDecimal(7), 100,BigDecimal.ROUND_HALF_UP);
System.out.println(a);
}
------解决方案--------------------
public class Test {
public static void main(String[] args) {
System.out.println(div7(22, 100)); // 22/7 的第 100 位
System.out.println(div7(33, 100)); // 33/7 的第 100 位
}
public static int div7(int numerator, int digit) {
int mod = numerator % 7;
if(mod == 0) {
return 0;
}
String repetend = "142857";
int[] shift = {0, 2, 1, 4, 5, 3};
char c = repetend.charAt((digit + shift[mod - 1] - 1) % 6);
return c - '0';
}
}