r91 vs r92
......
1111
0.303과 0.0303은 다른 수이므로 자리수가 다름을 표시할 용도
1212
'''ru''' : "result" upper value (integer→string); '''rb''' : "result" below value (integer→string);
1313
'''rp''' : "result" # of places of decimal (integer);
14
{{{#!if this.as=a.toString(), this.bs=b.toString(), this.ru=0+0, this.rb=0+0
14
{{{#!if this.as=a.toString(), this.bs=b.toString(), this.ru=0+0, this.rb=0+0, this.rp=0+0
1515
}}}{{{#!if this.al=as.length, this.bl=bs.length, this.ad=as.indexOf("."), this.bd=bs.indexOf(".")
1616
}}}{{{#!if ad!=-1
1717
소수점이 발견되는 자리 번호가 ad이므로 ad+1번에 해당되는 자리부터 끝까지 표기.
......
170170
}}}}}}
171171
172172
소수점 아래끼리 더한 자릿수가 얼마나 되는지 보기 위해 rb를 문자열로 바꿉니다.
173
이 때 rb가 0이 아닐 경우에만 문자열로 변환합니다.
174
{{{#!if (+rb>0)||(+rb<0)
173175
{{{#!if this.rb=rb.toString()
174176
}}}
175177
문자열로 된 rb의 길이를 rp로 정의합니다.
176178
{{{#!if this.rp=rb.length
177179
}}}
180
}}}
178181
rb가 음수이면 rb의 첫번째(0번 index)의 문자열에는 마이너스(-)가 들어갑니다. 이 때는 rp를 rb의 마이너스 문자열을 세지 않은 자릿수가 되도록 앞에서 정의했던 rb.length에서 1만큼 줄여 정의합니다. ap, bp는 마이너스를 붙이기 전에 값이 고정되어 있으므로 rp처럼 줄일 필요가 없습니다.
179182
{{{#!if rb[0]==45
180183
{{{#!if rp=rp-1
......