Comment detail

分数を小数に展開 (Nested Flatten)

This comment is reply for 197 malark: Java1.6(1.5+?)です。 1...(分数を小数に展開). Go to thread root.

バグ混在…a=10,b=17を与えたときに
"0.{14084507042253521126760563380281690}"となるべきところが
"0{.1408450704225352112676056338028169}"に…

整数部から循環?してる場合に再現…といっても他の例がないので何とも言えないけど、とりあえず応急措置を…
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
private static String generateResultString(final List<Integer> digits) {

    final StringBuilder sb = new StringBuilder();
    assert digits.size() > 0;
    sb.append(digits.get(0));

    if (digits.size() > 1) {
        sb.append('.');
        for (final Iterator<Integer> itr = digits.listIterator(1); itr.hasNext();) {
            final int digit = itr.next().intValue();
            if (digit >= 0) {
                sb.append(digit);
            } else {
                int insertPoint = sb.length() + digit;
                if ('.' == sb.charAt(insertPoint)) {
                    insertPoint += 1;
                    sb.append(0);
                }
                sb.insert(insertPoint, '{');
                sb.append('}');
            }
        }
    }
    return sb.toString();
}

Index

Feed

Other

Link

Pathtraq

loading...