| r167 vs r168 | ||
|---|---|---|
| ... | ... | |
| 77 | 77 | 소수점 아래 최대 18자리까지의 수를 취급하므로 최대 18칸 차이가 나게 됩니다. |
| 78 | 78 | ○○○○○○○○○□□□□○○□□○ 과 같이 9칸, 4칸, 2칸, 2칸, 1칸씩 차이가 나면 그 정도를 보정하게 됩니다. |
| 79 | 79 | ap>bp에서 ap-bp>0이 됩니다. ap-bp는 곧 ap가 bp보다 몇 칸만큼 더 많은지를 나타냅니다. |
| 80 | {{{#!if ap | |
| 81 | {{{#!if bp | |
| 82 | ||
| 83 | ||
| 84 | ||
| 85 | ||
| 86 | ||
| 87 | ||
| 88 | }}} | |
| 89 | ||
| 80 | {{{#!if ap>bp | |
| 81 | {{{#!if bp=ap, bb+="000000000000000000" | |
| 82 | }}}{{{#!if bb=bb.substr(0,ap) | |
| 90 | 83 | }}}}}} |
| 91 | 84 | |
| 92 | 85 | 반대로 b의 소수점 자릿수가 많은 경우도 있습니다. |
| 93 | {{{#!if bp | |
| 94 | {{{#!if ap | |
| 95 | ||
| 96 | ||
| 97 | ||
| 98 | ||
| 99 | ||
| 100 | ||
| 101 | }}} | |
| 102 | ||
| 86 | {{{#!if bp>ap | |
| 87 | {{{#!if ap=bp, ab=ab+"000000000000000000" | |
| 88 | }}}{{{#!if ab=ab.substr(0,bp) | |
| 103 | 89 | }}}}}} |
| 90 | ||
| 104 | 91 | 위의 과정을 거치게 되면 소수점 아래 최대 자릿수를 똑같이 맞춘 상태에서 계산하게 되므로 ap==bp가 됩니다. |
| 105 | 92 | |
| 106 | 93 | a가 음수인 경우 소수점 아래 값은 순 숫자만 표기된 상태이므로 양수 취급으로 되지 않게 소수점 아래 값인 ab에 음수 표기를 남깁니다. |
| ... | ... |