r237 vs r238
......
14441444
14451445
##b 자릿수 측정
14461446
1447
##자릿수 기억 (이후에 서술)
1448
##몫 서술
1449
제일 높은 자리부터 내려오면서 처음으로 0이 아닌 수를 왼쪽으로 당기는 과정을 거쳤으므로 (1부터 시작하는 18자리+18자리 숫자)/(1부터 시작하는 18자리+18자리 수) 연산이 됩니다.
1450
1451
{{{#!if ps=false
1452
}}}숫자에서 해당하는 (10**n) 자리에 몫을 더 이상 계산하지 않고 그 다음 자리(10**(n+1))의 몫을 계산하게 된다면 ps를 true로 바꿉니다.
1453
1454
##i=0
1455
{{{#!if br=false
1456
}}}다시 정렬된 bu, bb의 값은 바뀌지 않습니다. bu, bb로 나눈 몫만큼 au, ab에서 감소시킨 다음 au와 ab를 다시 정렬시키며, au와 ab가 모두 0이 되면 더 이상 계산하지 않도록 br를 true로 반환합니다.
1457
1458
au의 값이 bu보다 작거나, au==bu이더라도 ab<bb이면 해당하는 자릿수의 몫이 0이라는 의미리므로 다음 자릿수로 넘깁니다. 이 과정에서 변수 ts(logical)를 가져옵니다.
1459
{{{#if ts=((au<bu)||((au==bu)&&(ab<bb))), ts
1460
{{{#if ps=true
1461
}}}}}}
1462
!ts이러면 ① au>bu이거나, ② au==bu이고 ab>=bb인 경우입니다. !ts를 if 조건문으로 두고 ①의 경우, ②의 경우로 나눠 봅니다.
1463
{{{#!if !ts
1464
au와 ab의 값을 가져와 tu와 tv로 복제합니다.
1465
{{{#!if tu=au, tv=ab
1466
}}}}}}
1467
1468
1469
14471470
##rs 매기기
14481471
14491472
##ru 매기기
......