| r245 vs r246 | ||
|---|---|---|
| ... | ... | |
| 1533 | 1533 | }}} |
| 1534 | 1534 | ab의 나머지 17자리를 앞으로 당긴 다음 "0"을 더합니다. |
| 1535 | 1535 | {{{#!if ab=ab.substr(1,17)+"0" |
| 1536 | }}} | |
| 1536 | }}}}}} | |
| 1537 | 1537 | ##i=1 part 1 |
| 1538 | 1538 | (변수 tn으로 만들 수 있는 여분의 1자리 +) 18자리 + 18자리 숫자를 18자리+18자리 숫자로 나누는 계산을 합니다. tn이 9가 될 경우 9로 시작하는 19자리 숫자를 long integer로 모두 표현할 수 없으므로 10**18 자리부터 먼저 계산합니다. 10**18의 1번째 숫자의 몫을 구한 다음 나머지를 18자리 숫자에 더하는 과정(part 1)을 거친 다음 그 18자리에서 몫을 구하는 과정(part 2)을 거칩니다. |
| 1539 | 1539 | |
| ... | ... | |
| 1552 | 1552 | }}}{{{#!if ty=ty.toString(), ty.length==19 |
| 1553 | 1553 | {{{#!if tx+=+(ty.substr(0,1)), ty=ty.substr(1,18), ty=+ty |
| 1554 | 1554 | }}}}}}}}} |
| 1555 | 나머지를 반영합니다. 나눈 만큼 빼는데 처리해야할 소수점 아래 부분인 ab보다 ty가 크다면 tn에서 | |
| 1556 | {{{#!if ty> | |
| 1557 | {{{#!if | |
| 1555 | 나머지를 반영합니다. 나눈 만큼 빼는데 처리해야할 소수점 아래 부분인 ab보다 ty가 크다면 tn에서 1을 빼어 계산합니다. | |
| 1556 | {{{#!if ty>ab | |
| 1557 | {{{#!if tn-=1, ab+=+("1"+pd) | |
| 1558 | 1558 | }}}}}} |
| 1559 | {{{#!if au+=(tn-tx), ab-=ty | |
| 1559 | 1560 | }}} |
| 1561 | tn을 빈 문자열로 초기화합니다. | |
| 1562 | {{{#!if tn="" | |
| 1563 | }}} | |
| 1564 | }}} | |
| 1560 | 1565 | ##i=1 part 2 |
| 1561 | }}} | |
| 1562 | 1566 | |
| 1563 | 1567 | |
| 1568 | ||
| 1564 | 1569 | ##rs 매기기 |
| 1565 | 1570 | |
| 1566 | 1571 | ##ru 매기기 |
| ... | ... |