r73
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
r73
144a가 음수인 경우 소수점 아래 값은 순 숫자만 표기된 상태이며 양수 취급으로 되지 않도록 음수 표기를 해야 합니다.
145{{{#!if as[0]==45
146{{{#!if ab="-"+ab
147}}}}}}
148b도 마찬가지입니다.
149{{{#!if bs[0]==45
150{{{#!if bb="-"+bb
151}}}}}}
152
r70
153{{{#!if f=="+"
154{{{#!if ru=(+au)+(+bu), rb=(+ab)+(+bb)
155}}}}}}
156{{{#!if f=="-"
r71
157뺄셈은 덧셈의 역연산이고 구조가 단순하므로 덧셈과 뺄셈을 먼저 같이 처리합니다. ru, rb는 각각 정수 값으로 나올 것입니다.
r70
158{{{#!if ru=(+au)-(+bu), rb=(+ab)-(+bb)
159}}}}}}
r62
160
r70
161{{{#!if ru>0
162ru는 정수이므로 0보다 크면 곧 1 이상이며, 1 이상이면 양수+음수 꼴이 되더라도 소수점 아래 정리를 하면 됩니다. ru에서 1을 빌려오거나 ru에 1이 더해질 수도 있습니다.
163}}}
164{{{#!if ru==0
165}}}
166{{{#!if ru<0
167}}}
r67
168{{{#!if f=="*"
r69
16918자리 숫자로 입력할 수 있는 최대 정수는 999,999,999,999,999,999입니다.
170다행히 999,999,999,999,999,999*9=8,999,999,999,999,999,991 < long 한계치 9,223,372,036,854,775,807 이라서 a*각 자릿수로 덧셈해볼 수는 있습니다.
r67
171}}}
172
r65
173error code 03 번 : 오버플로
174error code 04 번 : 언더플로
175error code 05 번 : 0으로 나눌 수 없습니다.
r64
176
r67
177##여기까지 주석(주석 아님)
r54
178}}}{{{#!if as[0]!=45
r53
179@a@}}}{{{#!if as[0]==45
180(@a@)}}}{{{#!if f=='+'
r67
181+}}}{{{#!if f=="-"
182-}}}{{{#!if f=="*"
183*}}}{{{#!if f=="/"
184/}}}{{{#!if bs[0]!=45
r53
185@b@}}}{{{#!if bs[0]==45
r57
186(@b@)}}}}}}
r44
187==# 2-1 #==
188{{{#!wiki style="font-weight: 300; font-size: 20px"
r37
189{{{#!if +a>=0
190@a@}}}{{{#!if +a<0
r36
191(@a@)}}} {{{#!if f == '+'
r40

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

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

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

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

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

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

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

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

(r16으로 되돌림)
207##1
r11
208{{{#!if p=r[o]
r9
209}}}{{{#!if p==45
210-}}}{{{#!if p==46
r14
211{{{#!if d=true
r20
212}}}}}}{{{#!if p==48
r9
2130}}}{{{#!if p==49
2141}}}{{{#!if p==50
2152}}}{{{#!if p==51
2163}}}{{{#!if p==52
2174}}}{{{#!if p==53
2185}}}{{{#!if p==54
2196}}}{{{#!if p==55
2207}}}{{{#!if p==56
2218}}}{{{#!if p==57
r41
2229}}}{{{#!if o+=1
r19
223}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
224##2
r11
225{{{#!if p=r[o]
r35
226}}}{{{#!if p==46
r14
227{{{#!if d=true
r20
228}}}}}}{{{#!if p==48
r9
2290}}}{{{#!if p==49
2301}}}{{{#!if p==50
2312}}}{{{#!if p==51
2323}}}{{{#!if p==52
2334}}}{{{#!if p==53
2345}}}{{{#!if p==54
2356}}}{{{#!if p==55
2367}}}{{{#!if p==56
2378}}}{{{#!if p==57
r41
2389}}}{{{#!if o+=1
r23
239}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
240##3
r11
241{{{#!if p=r[o]
r35
242}}}{{{#!if p==46
r14
243{{{#!if d=true
r20
244}}}}}}{{{#!if p==48
r9
2450}}}{{{#!if p==49
2461}}}{{{#!if p==50
2472}}}{{{#!if p==51
2483}}}{{{#!if p==52
2494}}}{{{#!if p==53
2505}}}{{{#!if p==54
2516}}}{{{#!if p==55
2527}}}{{{#!if p==56
2538}}}{{{#!if p==57
r41
2549}}}{{{#!if o+=1
r23
255}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
256##4
r11
257{{{#!if p=r[o]
r35
258}}}{{{#!if p==46
r14
259{{{#!if d=true
r20
260}}}}}}{{{#!if p==48
r9
2610}}}{{{#!if p==49
2621}}}{{{#!if p==50
2632}}}{{{#!if p==51
2643}}}{{{#!if p==52
2654}}}{{{#!if p==53
2665}}}{{{#!if p==54
2676}}}{{{#!if p==55
2687}}}{{{#!if p==56
2698}}}{{{#!if p==57
r41
2709}}}{{{#!if o+=1
r23
271}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
272##5
r11
273{{{#!if p=r[o]
r35
274}}}{{{#!if p==46
r14
275{{{#!if d=true
r20
276}}}}}}{{{#!if p==48
r9
2770}}}{{{#!if p==49
2781}}}{{{#!if p==50
2792}}}{{{#!if p==51
2803}}}{{{#!if p==52
2814}}}{{{#!if p==53
2825}}}{{{#!if p==54
2836}}}{{{#!if p==55
2847}}}{{{#!if p==56
2858}}}{{{#!if p==57
r41
2869}}}{{{#!if o+=1
r23
287}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
288##6
r11
289{{{#!if p=r[o]
r35
290}}}{{{#!if p==46
r14
291{{{#!if d=true
r20
292}}}}}}{{{#!if p==48
r9
2930}}}{{{#!if p==49
2941}}}{{{#!if p==50
2952}}}{{{#!if p==51
2963}}}{{{#!if p==52
2974}}}{{{#!if p==53
2985}}}{{{#!if p==54
2996}}}{{{#!if p==55
3007}}}{{{#!if p==56
3018}}}{{{#!if p==57
r41
3029}}}{{{#!if o+=1
r23
303}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
304##7
r11
305{{{#!if p=r[o]
r35
306}}}{{{#!if p==46
r14
307{{{#!if d=true
r20
308}}}}}}{{{#!if p==48
r9
3090}}}{{{#!if p==49
3101}}}{{{#!if p==50
3112}}}{{{#!if p==51
3123}}}{{{#!if p==52
3134}}}{{{#!if p==53
3145}}}{{{#!if p==54
3156}}}{{{#!if p==55
3167}}}{{{#!if p==56
3178}}}{{{#!if p==57
r41
3189}}}{{{#!if o+=1
r23
319}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
320##8
r11
321{{{#!if p=r[o]
r35
322}}}{{{#!if p==46
r14
323{{{#!if d=true
r20
324}}}}}}{{{#!if p==48
r9
3250}}}{{{#!if p==49
3261}}}{{{#!if p==50
3272}}}{{{#!if p==51
3283}}}{{{#!if p==52
3294}}}{{{#!if p==53
3305}}}{{{#!if p==54
3316}}}{{{#!if p==55
3327}}}{{{#!if p==56
3338}}}{{{#!if p==57
r41
3349}}}{{{#!if o+=1
r23
335}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
336##9
r11
337{{{#!if p=r[o]
r35
338}}}{{{#!if p==46
r14
339{{{#!if d=true
r20
340}}}}}}{{{#!if p==48
r9
3410}}}{{{#!if p==49
3421}}}{{{#!if p==50
3432}}}{{{#!if p==51
3443}}}{{{#!if p==52
3454}}}{{{#!if p==53
3465}}}{{{#!if p==54
3476}}}{{{#!if p==55
3487}}}{{{#!if p==56
3498}}}{{{#!if p==57
r41
3509}}}{{{#!if o+=1
r23
351}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
352##10
r11
353{{{#!if p=r[o]
r35
354}}}{{{#!if p==46
r14
355{{{#!if d=true
r20
356}}}}}}{{{#!if p==48
r9
3570}}}{{{#!if p==49
3581}}}{{{#!if p==50
3592}}}{{{#!if p==51
3603}}}{{{#!if p==52
3614}}}{{{#!if p==53
3625}}}{{{#!if p==54
3636}}}{{{#!if p==55
3647}}}{{{#!if p==56
3658}}}{{{#!if p==57
r41
3669}}}{{{#!if o+=1
r23
367}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
368##11
r11
369{{{#!if p=r[o]
r35
370}}}{{{#!if p==46
r14
371{{{#!if d=true
r20
372}}}}}}{{{#!if p==48
r9
3730}}}{{{#!if p==49
3741}}}{{{#!if p==50
3752}}}{{{#!if p==51
3763}}}{{{#!if p==52
3774}}}{{{#!if p==53
3785}}}{{{#!if p==54
3796}}}{{{#!if p==55
3807}}}{{{#!if p==56
3818}}}{{{#!if p==57
r41
3829}}}{{{#!if o+=1
r23
383}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
384##12
r11
385{{{#!if p=r[o]
r35
386}}}{{{#!if p==46
r14
387{{{#!if d=true
r20
388}}}}}}{{{#!if p==48
r9
3890}}}{{{#!if p==49
3901}}}{{{#!if p==50
3912}}}{{{#!if p==51
3923}}}{{{#!if p==52
3934}}}{{{#!if p==53
3945}}}{{{#!if p==54
3956}}}{{{#!if p==55
3967}}}{{{#!if p==56
3978}}}{{{#!if p==57
r41
3989}}}{{{#!if o+=1
r23
399}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
400##13
r11
401{{{#!if p=r[o]
r35
402}}}{{{#!if p==46
r14
403{{{#!if d=true
r20
404}}}}}}{{{#!if p==48
r9
4050}}}{{{#!if p==49
4061}}}{{{#!if p==50
4072}}}{{{#!if p==51
4083}}}{{{#!if p==52
4094}}}{{{#!if p==53
4105}}}{{{#!if p==54
4116}}}{{{#!if p==55
4127}}}{{{#!if p==56
4138}}}{{{#!if p==57
r41
4149}}}{{{#!if o+=1
r23
415}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
416##14
r11
417{{{#!if p=r[o]
r35
418}}}{{{#!if p==46
r14
419{{{#!if d=true
r20
420}}}}}}{{{#!if p==48
r9
4210}}}{{{#!if p==49
4221}}}{{{#!if p==50
4232}}}{{{#!if p==51
4243}}}{{{#!if p==52
4254}}}{{{#!if p==53
4265}}}{{{#!if p==54
4276}}}{{{#!if p==55
4287}}}{{{#!if p==56
4298}}}{{{#!if p==57
r41
4309}}}{{{#!if o+=1
r23
431}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
432##15
r11
433{{{#!if p=r[o]
r35
434}}}{{{#!if p==46
r14
435{{{#!if d=true
r20
436}}}}}}{{{#!if p==48
r9
4370}}}{{{#!if p==49
4381}}}{{{#!if p==50
4392}}}{{{#!if p==51
4403}}}{{{#!if p==52
4414}}}{{{#!if p==53
4425}}}{{{#!if p==54
4436}}}{{{#!if p==55
4447}}}{{{#!if p==56
4458}}}{{{#!if p==57
r41
4469}}}{{{#!if o+=1
r23
447}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
448##16
r11
449{{{#!if p=r[o]
r35
450}}}{{{#!if p==46
r14
451{{{#!if d=true
r20
452}}}}}}{{{#!if p==48
r9
4530}}}{{{#!if p==49
4541}}}{{{#!if p==50
4552}}}{{{#!if p==51
4563}}}{{{#!if p==52
4574}}}{{{#!if p==53
4585}}}{{{#!if p==54
4596}}}{{{#!if p==55
4607}}}{{{#!if p==56
4618}}}{{{#!if p==57
r41
4629}}}{{{#!if o+=1
r23
463}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
464##17
r11
465{{{#!if p=r[o]
r35
466}}}{{{#!if p==46
r14
467{{{#!if d=true
r20
468}}}}}}{{{#!if p==48
r9
4690}}}{{{#!if p==49
4701}}}{{{#!if p==50
4712}}}{{{#!if p==51
4723}}}{{{#!if p==52
4734}}}{{{#!if p==53
4745}}}{{{#!if p==54
4756}}}{{{#!if p==55
4767}}}{{{#!if p==56
4778}}}{{{#!if p==57
r41
4789}}}{{{#!if o+=1
r23
479}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
480##18
r11
481{{{#!if p=r[o]
r35
482}}}{{{#!if p==46
r14
483{{{#!if d=true
r20
484}}}}}}{{{#!if p==48
r9
4850}}}{{{#!if p==49
4861}}}{{{#!if p==50
4872}}}{{{#!if p==51
4883}}}{{{#!if p==52
4894}}}{{{#!if p==53
4905}}}{{{#!if p==54
4916}}}{{{#!if p==55
4927}}}{{{#!if p==56
4938}}}{{{#!if p==57
r41
4949}}}{{{#!if o+=1
r23
495}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
496##19
r11
497{{{#!if p=r[o]
r35
498}}}{{{#!if p==46
r14
499{{{#!if d=true
r20
500}}}}}}{{{#!if p==48
r9
5010}}}{{{#!if p==49
5021}}}{{{#!if p==50
5032}}}{{{#!if p==51
5043}}}{{{#!if p==52
5054}}}{{{#!if p==53
5065}}}{{{#!if p==54
5076}}}{{{#!if p==55
5087}}}{{{#!if p==56
5098}}}{{{#!if p==57
r41
5109}}}{{{#!if o+=1
r23
511}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
512##20
r11
513{{{#!if p=r[o]
r35
514}}}{{{#!if p==46
r14
515{{{#!if d=true
r20
516}}}}}}{{{#!if p==48
r9
5170}}}{{{#!if p==49
5181}}}{{{#!if p==50
5192}}}{{{#!if p==51
5203}}}{{{#!if p==52
5214}}}{{{#!if p==53
5225}}}{{{#!if p==54
5236}}}{{{#!if p==55
5247}}}{{{#!if p==56
5258}}}{{{#!if p==57
r41
5269}}}{{{#!if o+=1
r20
527}}}}}}{{{#!if o=0, l=u.length
528}}}{{{#!if u[0]==45
529##음수로 마이너스가 표시되면 넘기기
r41
530{{{#!if o+=1
r20
531}}}}}}{{{#!if l-o>2
532##소수점이 나오면 "0."으로 2자리 차지하므로 소수점 표기.
r41
533{{{#!if o+=1
r42
534##일의 자리 넘기기
r32
535}}}{{{#!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
536##".000000"은 표기하지 않음. 소수점 표기
537.{{{#!if o+=1
538}}}}}}}}}{{{#!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
539##1
r22
540{{{#!if p=u[o]
r21
541}}}{{{#!if p==48
r25
5420}}}{{{#!if p==49
r21
5431}}}{{{#!if p==50
5442}}}{{{#!if p==51
5453}}}{{{#!if p==52
5464}}}{{{#!if p==53
5475}}}{{{#!if p==54
5486}}}{{{#!if p==55
5497}}}{{{#!if p==56
5508}}}{{{#!if p==57
r41
5519}}}{{{#!if o+=1
r23
552}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48)||(u[o+4]!=48))
r21
553##2
r22
554{{{#!if p=u[o]
r21
555}}}{{{#!if p==48
5560}}}{{{#!if p==49
5571}}}{{{#!if p==50
5582}}}{{{#!if p==51
5593}}}{{{#!if p==52
5604}}}{{{#!if p==53
5615}}}{{{#!if p==54
5626}}}{{{#!if p==55
5637}}}{{{#!if p==56
5648}}}{{{#!if p==57
r41
5659}}}{{{#!if o+=1
r23
566}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48))
r21
567##3
r22
568{{{#!if p=u[o]
r21
569}}}{{{#!if p==48
5700}}}{{{#!if p==49
5711}}}{{{#!if p==50
5722}}}{{{#!if p==51
5733}}}{{{#!if p==52
5744}}}{{{#!if p==53
5755}}}{{{#!if p==54
5766}}}{{{#!if p==55
5777}}}{{{#!if p==56
5788}}}{{{#!if p==57
r41
5799}}}{{{#!if o+=1
r23
580}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48))
r21
581##4
r22
582{{{#!if p=u[o]
r21
583}}}{{{#!if p==48
5840}}}{{{#!if p==49
5851}}}{{{#!if p==50
5862}}}{{{#!if p==51
5873}}}{{{#!if p==52
5884}}}{{{#!if p==53
5895}}}{{{#!if p==54
5906}}}{{{#!if p==55
5917}}}{{{#!if p==56
5928}}}{{{#!if p==57
r41
5939}}}{{{#!if o+=1
r23
594}}}}}}{{{#!if (o<l)&&(d==true)&&(u[o+1]!=48)
r21
595##5
r22
596{{{#!if p=u[o]
r21
597}}}{{{#!if p==48
5980}}}{{{#!if p==49
5991}}}{{{#!if p==50
6002}}}{{{#!if p==51
6013}}}{{{#!if p==52
6024}}}{{{#!if p==53
6035}}}{{{#!if p==54
6046}}}{{{#!if p==55
6057}}}{{{#!if p==56
6068}}}{{{#!if p==57
r41
6079}}}{{{#!if o+=1
r23
608}}}}}}{{{#!if (o<l)&&(d==true)
r21
609##6
r22
610{{{#!if p=u[o]
r21
611}}}{{{#!if p==48
r26
612##"0" 미표기
613}}}{{{#!if p==49
r21
6141}}}{{{#!if p==50
6152}}}{{{#!if p==51
6163}}}{{{#!if p==52
6174}}}{{{#!if p==53
6185}}}{{{#!if p==54
6196}}}{{{#!if p==55
6207}}}{{{#!if p==56
6218}}}{{{#!if p==57
r41
6229}}}{{{#!if o+=1
r34
623}}}}}}}}}}}}