r72
r43
1[[분류:냥]][Include(틀:상세 내용, 설명대상=원본, 문서명=틀\:계산기)]
r44
2== 2-2 ==
r7

(r5으로 되돌림)
3{{{#!wiki style="font-weight: 300; font-size: 20px"
r66
4{{{#!wiki style="display: none"
r59
5##초기화
r55
6'''as''' : "a" value to string; '''bs''' : "b" value to string;
r56
7'''al''' : "a" string length (integer); '''bl''' : "b" string length (integer)
8'''ad''' : "a" decimal point (integer); '''bd''' : "b" decimal point (integer);
9'''au''' : --gold-- "a" upper value (string→integer); '''bu''' : "b" upper value (string→integer);
10'''ab''' : "a" below value (string→integer); '''bb''' : "b" below value (string→integer);
r55
11'''ap''' : "a" # of places of decimal (integer); '''bp''' : "b" # of places of decimal (integer);
120.303과 0.0303은 다른 수이므로 자리수가 다름을 표시할 용도
13'''ru''' : result upper value (integer); '''rb''' : result below value (integer)
r66
14{{{#!if this.as=a.toString(), this.bs=b.toString(), this.ru=0+0, this.rb=0+0
r53
15}}}{{{#!if this.al=as.length, this.bl=bs.length, this.ad=as.indexOf("."), this.bd=bs.indexOf(".")
16}}}{{{#!if ad!=-1
r56
17소수점이 발견되는 자리 번호가 ad이므로 ad+1번에 해당되는 자리부터 끝까지 표기.
18{{{#!if this.au=as.substr(0,ad), this.ab=as.substr(ad+1, al-ad-1), this.ap=ab.length
r64
19}}}{{{#!if (au=="")||(au=="-")||(au=="+")
r58
20.12345 식으로 또는 -.12345 식으로 기입할 경우 upper 값을 0으로 부여함.
r62
21{{{#!if au="0"
r56
22}}}}}}}}}{{{#!if ad==-1
r53
23{{{#!if this.au=as, ab="", ap=0+0
24}}}}}}{{{#!if bd!=-1
r56
25{{{#!if this.bu=bs.substr.(0,bd), this.bb=bs.substr(bd+1, bl-bd-1), this.bp=bb.length
r64
26}}}{{{#!if (bu=="")||(bu=="-")||(bu=="+")
r62
27{{{#!if bu="0"
r53
28}}}}}}}}}{{{#!if bd==-1
29{{{#!if this.bu=bs, bb="", bp=0+0
r51
30}}}}}}
r59
31
r61
32##유효성 검사.
33the seed에서 지원되는 long(integer)가 unsigned였으면 1844경까지 가서 충분히 19자리로 놀 수 있었는데, signed long이므로 922경까지 가능한 공간에서 18자리로 잘라내기. 소수점 위 최대 18자리, 소수점 아래 최대 18자리
r62
34{{{#!if au.length>19
r61
35error code of a 01번 : 오버플로
r62
36{{{#!if ea=1
r61
37}}}}}}
r62
38{{{#!if ab.length>19
r64
39warning code of a 01번 : 소수점 아래 자릿수를 너무 많이 입력했습니다. 소수점 아래 18자리까지만 취급합니다.
r62
40{{{#!if wa=1, ab=ab.substr(0,18)
41}}}}}}
r60
42
r62
43{{{#!if bu.length>19
44error code of b 01번 : 오버플로
45{{{#!if eb=01
46}}}}}}
r63
47{{{#!if bb.length>19
r65
48warning code of b 01번 : 소수점 아래 자릿수를 너무 많이 입력했습니다. 소수점 아래 18자리까지만 취급합니다.
r63
49{{{#!if wb=01, bb=bb.substr(0,18)
r62
50}}}}}}
51
r64
52##반점(,)을 자동적으로 생략하고 들어가는 것은 나중에 생각하겠습니다.
53error code 02 번 : 입력한 변수는 숫자로 읽을 수 없습니다. 반점(,)을 입력했다면 반점을 지우고 다시 입력하세요.
r71
54
55덧셈과 뺄셈 계산과정을 적어봅니다.
56{{{#!if (f=="+")||(f=="-")
57소수점 아래를 계산하려면 자릿수를 똑같이 맞춰야 의미가 있으므로, 자릿수가 다른 경우 자릿수가 같게 만드는 과정을 먼저 거칩니다.
58{{{#!if ap>bp
r72
59이를테면 a의 소수점 자릿수가 b의 소수점 자릿수보다 많으면 b뒤에 0을 더 추가하는 방식으로 변경합니다. b 자체가 정수여도 앞에 (소수점이 없을 경우) 이미 bb="", bp=0+0으로 초기화했으므로 동작될 것입니다.
r71
60{{{#!if bp+=1, bb=bb+"0"
r72
61}}}}}}{{{#!if ap>bp
62{{{#!if bp+=1, bb=bb+"0"
63}}}}}}{{{#!if ap>bp
64{{{#!if bp+=1, bb=bb+"0"
65}}}}}}{{{#!if ap>bp
66{{{#!if bp+=1, bb=bb+"0"
67}}}}}}{{{#!if ap>bp
68{{{#!if bp+=1, bb=bb+"0"
r71
69}}}}}}
r72
70{{{#!if ap>bp
71{{{#!if bp+=1, bb=bb+"0"
72}}}}}}{{{#!if ap>bp
73{{{#!if bp+=1, bb=bb+"0"
74}}}}}}{{{#!if ap>bp
75{{{#!if bp+=1, bb=bb+"0"
76}}}}}}{{{#!if ap>bp
77{{{#!if bp+=1, bb=bb+"0"
78}}}}}}{{{#!if ap>bp
79{{{#!if bp+=1, bb=bb+"0"
80}}}}}}
81{{{#!if ap>bp
82{{{#!if bp+=1, bb=bb+"0"
83}}}}}}{{{#!if ap>bp
84{{{#!if bp+=1, bb=bb+"0"
85}}}}}}{{{#!if ap>bp
86{{{#!if bp+=1, bb=bb+"0"
87}}}}}}{{{#!if ap>bp
88{{{#!if bp+=1, bb=bb+"0"
89}}}}}}{{{#!if ap>bp
90{{{#!if bp+=1, bb=bb+"0"
91}}}}}}
92{{{#!if ap>bp
93{{{#!if bp+=1, bb=bb+"0"
94}}}}}}{{{#!if ap>bp
95{{{#!if bp+=1, bb=bb+"0"
96}}}}}}{{{#!if ap>bp
97{{{#!if bp+=1, bb=bb+"0"
98}}}}}}
99최대 18회.
100
101반대로 b의 소수점 자릿수가 많은 경우도 있습니다.
102{{{#!if bp>ap
103{{{#!if ap+=1, ab=ab+"0"
104}}}}}}{{{#!if bp>ap
105{{{#!if ap+=1, ab=ab+"0"
106}}}}}}{{{#!if bp>ap
107{{{#!if ap+=1, ab=ab+"0"
108}}}}}}{{{#!if bp>ap
109{{{#!if ap+=1, ab=ab+"0"
110}}}}}}{{{#!if bp>ap
111{{{#!if ap+=1, ab=ab+"0"
112}}}}}}
113{{{#!if bp>ap
114{{{#!if ap+=1, ab=ab+"0"
115}}}}}}{{{#!if bp>ap
116{{{#!if ap+=1, ab=ab+"0"
117}}}}}}{{{#!if bp>ap
118{{{#!if ap+=1, ab=ab+"0"
119}}}}}}{{{#!if bp>ap
120{{{#!if ap+=1, ab=ab+"0"
121}}}}}}{{{#!if bp>ap
122{{{#!if ap+=1, ab=ab+"0"
123}}}}}}
124{{{#!if bp>ap
125{{{#!if ap+=1, ab=ab+"0"
126}}}}}}{{{#!if bp>ap
127{{{#!if ap+=1, ab=ab+"0"
128}}}}}}{{{#!if bp>ap
129{{{#!if ap+=1, ab=ab+"0"
130}}}}}}{{{#!if bp>ap
131{{{#!if ap+=1, ab=ab+"0"
132}}}}}}{{{#!if bp>ap
133{{{#!if ap+=1, ab=ab+"0"
134}}}}}}
135{{{#!if bp>ap
136{{{#!if ap+=1, ab=ab+"0"
137}}}}}}{{{#!if bp>ap
138{{{#!if ap+=1, ab=ab+"0"
139}}}}}}{{{#!if bp>ap
140{{{#!if ap+=1, ab=ab+"0"
141}}}}}}
r71
142}}}
143
r70
144{{{#!if f=="+"
145{{{#!if ru=(+au)+(+bu), rb=(+ab)+(+bb)
146}}}}}}
147{{{#!if f=="-"
r71
148뺄셈은 덧셈의 역연산이고 구조가 단순하므로 덧셈과 뺄셈을 먼저 같이 처리합니다. ru, rb는 각각 정수 값으로 나올 것입니다.
r70
149{{{#!if ru=(+au)-(+bu), rb=(+ab)-(+bb)
150}}}}}}
r62
151
r70
152{{{#!if ru>0
153ru는 정수이므로 0보다 크면 곧 1 이상이며, 1 이상이면 양수+음수 꼴이 되더라도 소수점 아래 정리를 하면 됩니다. ru에서 1을 빌려오거나 ru에 1이 더해질 수도 있습니다.
154}}}
155{{{#!if ru==0
156}}}
157{{{#!if ru<0
158}}}
r67
159{{{#!if f=="*"
r69
16018자리 숫자로 입력할 수 있는 최대 정수는 999,999,999,999,999,999입니다.
161다행히 999,999,999,999,999,999*9=8,999,999,999,999,999,991 < long 한계치 9,223,372,036,854,775,807 이라서 a*각 자릿수로 덧셈해볼 수는 있습니다.
r67
162}}}
163
r65
164error code 03 번 : 오버플로
165error code 04 번 : 언더플로
166error code 05 번 : 0으로 나눌 수 없습니다.
r64
167
r67
168##여기까지 주석(주석 아님)
r54
169}}}{{{#!if as[0]!=45
r53
170@a@}}}{{{#!if as[0]==45
171(@a@)}}}{{{#!if f=='+'
r67
172+}}}{{{#!if f=="-"
173-}}}{{{#!if f=="*"
174*}}}{{{#!if f=="/"
175/}}}{{{#!if bs[0]!=45
r53
176@b@}}}{{{#!if bs[0]==45
r57
177(@b@)}}}}}}
r44
178==# 2-1 #==
179{{{#!wiki style="font-weight: 300; font-size: 20px"
r37
180{{{#!if +a>=0
181@a@}}}{{{#!if +a<0
r36
182(@a@)}}} {{{#!if f == '+'
r40

(r37으로 되돌림)
183{{{#!if r =(+a)+(+b)+0.0, u=(+a)+(+b)
r7

(r5으로 되돌림)
184}}}+}}}{{{#!if f == '-'
r40

(r37으로 되돌림)
185{{{#!if r =(+a)-(+b)+0.0, u=(+a)-(+b)
r7

(r5으로 되돌림)
186}}}-}}}{{{#!if f == '*'
r40

(r37으로 되돌림)
187{{{#!if r =((+a)+0.0)*((+b)+0.0), u=(+a)*(+b)
r7

(r5으로 되돌림)
188}}}×}}}{{{#!if f == '/'
r40

(r37으로 되돌림)
189{{{#!if r =((+a)+0.0)/((+b)+0.0), u=(+a)/(+b)
r37
190}}}÷}}} {{{#!if +b>=0
191@b@}}}{{{#!if +b<0
r36
192(@b@)}}} = {{{#!if u=r-u, d=false
r18

(r16으로 되돌림)
193##u : 나누어떨어지는 부분 절삭하기. d : dot 매김 여부
r20
194}}}{{{#!if r=r.toString(), u=u.toString()
r10
195}}}{{{#!if o=0, l=r.length
r11
196}}}{{{#!if (r!=null)&&(r!="")
197{{{#!if +o<l
r18

(r16으로 되돌림)
198##1
r11
199{{{#!if p=r[o]
r9
200}}}{{{#!if p==45
201-}}}{{{#!if p==46
r14
202{{{#!if d=true
r20
203}}}}}}{{{#!if p==48
r9
2040}}}{{{#!if p==49
2051}}}{{{#!if p==50
2062}}}{{{#!if p==51
2073}}}{{{#!if p==52
2084}}}{{{#!if p==53
2095}}}{{{#!if p==54
2106}}}{{{#!if p==55
2117}}}{{{#!if p==56
2128}}}{{{#!if p==57
r41
2139}}}{{{#!if o+=1
r19
214}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
215##2
r11
216{{{#!if p=r[o]
r35
217}}}{{{#!if p==46
r14
218{{{#!if d=true
r20
219}}}}}}{{{#!if p==48
r9
2200}}}{{{#!if p==49
2211}}}{{{#!if p==50
2222}}}{{{#!if p==51
2233}}}{{{#!if p==52
2244}}}{{{#!if p==53
2255}}}{{{#!if p==54
2266}}}{{{#!if p==55
2277}}}{{{#!if p==56
2288}}}{{{#!if p==57
r41
2299}}}{{{#!if o+=1
r23
230}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
231##3
r11
232{{{#!if p=r[o]
r35
233}}}{{{#!if p==46
r14
234{{{#!if d=true
r20
235}}}}}}{{{#!if p==48
r9
2360}}}{{{#!if p==49
2371}}}{{{#!if p==50
2382}}}{{{#!if p==51
2393}}}{{{#!if p==52
2404}}}{{{#!if p==53
2415}}}{{{#!if p==54
2426}}}{{{#!if p==55
2437}}}{{{#!if p==56
2448}}}{{{#!if p==57
r41
2459}}}{{{#!if o+=1
r23
246}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
247##4
r11
248{{{#!if p=r[o]
r35
249}}}{{{#!if p==46
r14
250{{{#!if d=true
r20
251}}}}}}{{{#!if p==48
r9
2520}}}{{{#!if p==49
2531}}}{{{#!if p==50
2542}}}{{{#!if p==51
2553}}}{{{#!if p==52
2564}}}{{{#!if p==53
2575}}}{{{#!if p==54
2586}}}{{{#!if p==55
2597}}}{{{#!if p==56
2608}}}{{{#!if p==57
r41
2619}}}{{{#!if o+=1
r23
262}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
263##5
r11
264{{{#!if p=r[o]
r35
265}}}{{{#!if p==46
r14
266{{{#!if d=true
r20
267}}}}}}{{{#!if p==48
r9
2680}}}{{{#!if p==49
2691}}}{{{#!if p==50
2702}}}{{{#!if p==51
2713}}}{{{#!if p==52
2724}}}{{{#!if p==53
2735}}}{{{#!if p==54
2746}}}{{{#!if p==55
2757}}}{{{#!if p==56
2768}}}{{{#!if p==57
r41
2779}}}{{{#!if o+=1
r23
278}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
279##6
r11
280{{{#!if p=r[o]
r35
281}}}{{{#!if p==46
r14
282{{{#!if d=true
r20
283}}}}}}{{{#!if p==48
r9
2840}}}{{{#!if p==49
2851}}}{{{#!if p==50
2862}}}{{{#!if p==51
2873}}}{{{#!if p==52
2884}}}{{{#!if p==53
2895}}}{{{#!if p==54
2906}}}{{{#!if p==55
2917}}}{{{#!if p==56
2928}}}{{{#!if p==57
r41
2939}}}{{{#!if o+=1
r23
294}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
295##7
r11
296{{{#!if p=r[o]
r35
297}}}{{{#!if p==46
r14
298{{{#!if d=true
r20
299}}}}}}{{{#!if p==48
r9
3000}}}{{{#!if p==49
3011}}}{{{#!if p==50
3022}}}{{{#!if p==51
3033}}}{{{#!if p==52
3044}}}{{{#!if p==53
3055}}}{{{#!if p==54
3066}}}{{{#!if p==55
3077}}}{{{#!if p==56
3088}}}{{{#!if p==57
r41
3099}}}{{{#!if o+=1
r23
310}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
311##8
r11
312{{{#!if p=r[o]
r35
313}}}{{{#!if p==46
r14
314{{{#!if d=true
r20
315}}}}}}{{{#!if p==48
r9
3160}}}{{{#!if p==49
3171}}}{{{#!if p==50
3182}}}{{{#!if p==51
3193}}}{{{#!if p==52
3204}}}{{{#!if p==53
3215}}}{{{#!if p==54
3226}}}{{{#!if p==55
3237}}}{{{#!if p==56
3248}}}{{{#!if p==57
r41
3259}}}{{{#!if o+=1
r23
326}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
327##9
r11
328{{{#!if p=r[o]
r35
329}}}{{{#!if p==46
r14
330{{{#!if d=true
r20
331}}}}}}{{{#!if p==48
r9
3320}}}{{{#!if p==49
3331}}}{{{#!if p==50
3342}}}{{{#!if p==51
3353}}}{{{#!if p==52
3364}}}{{{#!if p==53
3375}}}{{{#!if p==54
3386}}}{{{#!if p==55
3397}}}{{{#!if p==56
3408}}}{{{#!if p==57
r41
3419}}}{{{#!if o+=1
r23
342}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
343##10
r11
344{{{#!if p=r[o]
r35
345}}}{{{#!if p==46
r14
346{{{#!if d=true
r20
347}}}}}}{{{#!if p==48
r9
3480}}}{{{#!if p==49
3491}}}{{{#!if p==50
3502}}}{{{#!if p==51
3513}}}{{{#!if p==52
3524}}}{{{#!if p==53
3535}}}{{{#!if p==54
3546}}}{{{#!if p==55
3557}}}{{{#!if p==56
3568}}}{{{#!if p==57
r41
3579}}}{{{#!if o+=1
r23
358}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
359##11
r11
360{{{#!if p=r[o]
r35
361}}}{{{#!if p==46
r14
362{{{#!if d=true
r20
363}}}}}}{{{#!if p==48
r9
3640}}}{{{#!if p==49
3651}}}{{{#!if p==50
3662}}}{{{#!if p==51
3673}}}{{{#!if p==52
3684}}}{{{#!if p==53
3695}}}{{{#!if p==54
3706}}}{{{#!if p==55
3717}}}{{{#!if p==56
3728}}}{{{#!if p==57
r41
3739}}}{{{#!if o+=1
r23
374}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
375##12
r11
376{{{#!if p=r[o]
r35
377}}}{{{#!if p==46
r14
378{{{#!if d=true
r20
379}}}}}}{{{#!if p==48
r9
3800}}}{{{#!if p==49
3811}}}{{{#!if p==50
3822}}}{{{#!if p==51
3833}}}{{{#!if p==52
3844}}}{{{#!if p==53
3855}}}{{{#!if p==54
3866}}}{{{#!if p==55
3877}}}{{{#!if p==56
3888}}}{{{#!if p==57
r41
3899}}}{{{#!if o+=1
r23
390}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
391##13
r11
392{{{#!if p=r[o]
r35
393}}}{{{#!if p==46
r14
394{{{#!if d=true
r20
395}}}}}}{{{#!if p==48
r9
3960}}}{{{#!if p==49
3971}}}{{{#!if p==50
3982}}}{{{#!if p==51
3993}}}{{{#!if p==52
4004}}}{{{#!if p==53
4015}}}{{{#!if p==54
4026}}}{{{#!if p==55
4037}}}{{{#!if p==56
4048}}}{{{#!if p==57
r41
4059}}}{{{#!if o+=1
r23
406}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
407##14
r11
408{{{#!if p=r[o]
r35
409}}}{{{#!if p==46
r14
410{{{#!if d=true
r20
411}}}}}}{{{#!if p==48
r9
4120}}}{{{#!if p==49
4131}}}{{{#!if p==50
4142}}}{{{#!if p==51
4153}}}{{{#!if p==52
4164}}}{{{#!if p==53
4175}}}{{{#!if p==54
4186}}}{{{#!if p==55
4197}}}{{{#!if p==56
4208}}}{{{#!if p==57
r41
4219}}}{{{#!if o+=1
r23
422}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
423##15
r11
424{{{#!if p=r[o]
r35
425}}}{{{#!if p==46
r14
426{{{#!if d=true
r20
427}}}}}}{{{#!if p==48
r9
4280}}}{{{#!if p==49
4291}}}{{{#!if p==50
4302}}}{{{#!if p==51
4313}}}{{{#!if p==52
4324}}}{{{#!if p==53
4335}}}{{{#!if p==54
4346}}}{{{#!if p==55
4357}}}{{{#!if p==56
4368}}}{{{#!if p==57
r41
4379}}}{{{#!if o+=1
r23
438}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
439##16
r11
440{{{#!if p=r[o]
r35
441}}}{{{#!if p==46
r14
442{{{#!if d=true
r20
443}}}}}}{{{#!if p==48
r9
4440}}}{{{#!if p==49
4451}}}{{{#!if p==50
4462}}}{{{#!if p==51
4473}}}{{{#!if p==52
4484}}}{{{#!if p==53
4495}}}{{{#!if p==54
4506}}}{{{#!if p==55
4517}}}{{{#!if p==56
4528}}}{{{#!if p==57
r41
4539}}}{{{#!if o+=1
r23
454}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
455##17
r11
456{{{#!if p=r[o]
r35
457}}}{{{#!if p==46
r14
458{{{#!if d=true
r20
459}}}}}}{{{#!if p==48
r9
4600}}}{{{#!if p==49
4611}}}{{{#!if p==50
4622}}}{{{#!if p==51
4633}}}{{{#!if p==52
4644}}}{{{#!if p==53
4655}}}{{{#!if p==54
4666}}}{{{#!if p==55
4677}}}{{{#!if p==56
4688}}}{{{#!if p==57
r41
4699}}}{{{#!if o+=1
r23
470}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
471##18
r11
472{{{#!if p=r[o]
r35
473}}}{{{#!if p==46
r14
474{{{#!if d=true
r20
475}}}}}}{{{#!if p==48
r9
4760}}}{{{#!if p==49
4771}}}{{{#!if p==50
4782}}}{{{#!if p==51
4793}}}{{{#!if p==52
4804}}}{{{#!if p==53
4815}}}{{{#!if p==54
4826}}}{{{#!if p==55
4837}}}{{{#!if p==56
4848}}}{{{#!if p==57
r41
4859}}}{{{#!if o+=1
r23
486}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
487##19
r11
488{{{#!if p=r[o]
r35
489}}}{{{#!if p==46
r14
490{{{#!if d=true
r20
491}}}}}}{{{#!if p==48
r9
4920}}}{{{#!if p==49
4931}}}{{{#!if p==50
4942}}}{{{#!if p==51
4953}}}{{{#!if p==52
4964}}}{{{#!if p==53
4975}}}{{{#!if p==54
4986}}}{{{#!if p==55
4997}}}{{{#!if p==56
5008}}}{{{#!if p==57
r41
5019}}}{{{#!if o+=1
r23
502}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
503##20
r11
504{{{#!if p=r[o]
r35
505}}}{{{#!if p==46
r14
506{{{#!if d=true
r20
507}}}}}}{{{#!if p==48
r9
5080}}}{{{#!if p==49
5091}}}{{{#!if p==50
5102}}}{{{#!if p==51
5113}}}{{{#!if p==52
5124}}}{{{#!if p==53
5135}}}{{{#!if p==54
5146}}}{{{#!if p==55
5157}}}{{{#!if p==56
5168}}}{{{#!if p==57
r41
5179}}}{{{#!if o+=1
r20
518}}}}}}{{{#!if o=0, l=u.length
519}}}{{{#!if u[0]==45
520##음수로 마이너스가 표시되면 넘기기
r41
521{{{#!if o+=1
r20
522}}}}}}{{{#!if l-o>2
523##소수점이 나오면 "0."으로 2자리 차지하므로 소수점 표기.
r41
524{{{#!if o+=1
r42
525##일의 자리 넘기기
r32
526}}}{{{#!if (u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48)||(u[o+4]!=48)||(u[o+5]!=48)||(u[o+6]!=48)
r42
527##".000000"은 표기하지 않음. 소수점 표기
528.{{{#!if o+=1
529}}}}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48)||(u[o+4]!=48)||(u[o+5]!=48))
r21
530##1
r22
531{{{#!if p=u[o]
r21
532}}}{{{#!if p==48
r25
5330}}}{{{#!if p==49
r21
5341}}}{{{#!if p==50
5352}}}{{{#!if p==51
5363}}}{{{#!if p==52
5374}}}{{{#!if p==53
5385}}}{{{#!if p==54
5396}}}{{{#!if p==55
5407}}}{{{#!if p==56
5418}}}{{{#!if p==57
r41
5429}}}{{{#!if o+=1
r23
543}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48)||(u[o+4]!=48))
r21
544##2
r22
545{{{#!if p=u[o]
r21
546}}}{{{#!if p==48
5470}}}{{{#!if p==49
5481}}}{{{#!if p==50
5492}}}{{{#!if p==51
5503}}}{{{#!if p==52
5514}}}{{{#!if p==53
5525}}}{{{#!if p==54
5536}}}{{{#!if p==55
5547}}}{{{#!if p==56
5558}}}{{{#!if p==57
r41
5569}}}{{{#!if o+=1
r23
557}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48))
r21
558##3
r22
559{{{#!if p=u[o]
r21
560}}}{{{#!if p==48
5610}}}{{{#!if p==49
5621}}}{{{#!if p==50
5632}}}{{{#!if p==51
5643}}}{{{#!if p==52
5654}}}{{{#!if p==53
5665}}}{{{#!if p==54
5676}}}{{{#!if p==55
5687}}}{{{#!if p==56
5698}}}{{{#!if p==57
r41
5709}}}{{{#!if o+=1
r23
571}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48))
r21
572##4
r22
573{{{#!if p=u[o]
r21
574}}}{{{#!if p==48
5750}}}{{{#!if p==49
5761}}}{{{#!if p==50
5772}}}{{{#!if p==51
5783}}}{{{#!if p==52
5794}}}{{{#!if p==53
5805}}}{{{#!if p==54
5816}}}{{{#!if p==55
5827}}}{{{#!if p==56
5838}}}{{{#!if p==57
r41
5849}}}{{{#!if o+=1
r23
585}}}}}}{{{#!if (o<l)&&(d==true)&&(u[o+1]!=48)
r21
586##5
r22
587{{{#!if p=u[o]
r21
588}}}{{{#!if p==48
5890}}}{{{#!if p==49
5901}}}{{{#!if p==50
5912}}}{{{#!if p==51
5923}}}{{{#!if p==52
5934}}}{{{#!if p==53
5945}}}{{{#!if p==54
5956}}}{{{#!if p==55
5967}}}{{{#!if p==56
5978}}}{{{#!if p==57
r41
5989}}}{{{#!if o+=1
r23
599}}}}}}{{{#!if (o<l)&&(d==true)
r21
600##6
r22
601{{{#!if p=u[o]
r21
602}}}{{{#!if p==48
r26
603##"0" 미표기
604}}}{{{#!if p==49
r21
6051}}}{{{#!if p==50
6062}}}{{{#!if p==51
6073}}}{{{#!if p==52
6084}}}{{{#!if p==53
6095}}}{{{#!if p==54
6106}}}{{{#!if p==55
6117}}}{{{#!if p==56
6128}}}{{{#!if p==57
r41
6139}}}{{{#!if o+=1
r34
614}}}}}}}}}}}}