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

(r5으로 되돌림)
3{{{#!wiki style="font-weight: 300; font-size: 20px"
r54
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)
r53
14{{{#!if this.as=a.upString(), this.bs=b.upString(), this.ru=0+0, this.rb=0+0
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
r64
48error code of b 01번 : 소수점 아래 자릿수를 너무 많이 입력했습니다. 소수점 아래 18자리까지만 취급합니다.
r63
49{{{#!if wb=01, bb=bb.substr(0,18)
r62
50}}}}}}
51
r64
52##반점(,)을 자동적으로 생략하고 들어가는 것은 나중에 생각하겠습니다.
53error code 02 번 : 입력한 변수는 숫자로 읽을 수 없습니다. 반점(,)을 입력했다면 반점을 지우고 다시 입력하세요.
r62
54
r64
55
r55
56##여기까지 주석
r54
57}}}{{{#!if as[0]!=45
r53
58@a@}}}{{{#!if as[0]==45
59(@a@)}}}{{{#!if f=='+'
60}}}{{{#!if bs[0]!=45
61@b@}}}{{{#!if bs[0]==45
r57
62(@b@)}}}}}}
r44
63==# 2-1 #==
64{{{#!wiki style="font-weight: 300; font-size: 20px"
r37
65{{{#!if +a>=0
66@a@}}}{{{#!if +a<0
r36
67(@a@)}}} {{{#!if f == '+'
r40

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

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

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

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

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

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

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

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

(r16으로 되돌림)
83##1
r11
84{{{#!if p=r[o]
r9
85}}}{{{#!if p==45
86-}}}{{{#!if p==46
r14
87{{{#!if d=true
r20
88}}}}}}{{{#!if p==48
r9
890}}}{{{#!if p==49
901}}}{{{#!if p==50
912}}}{{{#!if p==51
923}}}{{{#!if p==52
934}}}{{{#!if p==53
945}}}{{{#!if p==54
956}}}{{{#!if p==55
967}}}{{{#!if p==56
978}}}{{{#!if p==57
r41
989}}}{{{#!if o+=1
r19
99}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
100##2
r11
101{{{#!if p=r[o]
r35
102}}}{{{#!if p==46
r14
103{{{#!if d=true
r20
104}}}}}}{{{#!if p==48
r9
1050}}}{{{#!if p==49
1061}}}{{{#!if p==50
1072}}}{{{#!if p==51
1083}}}{{{#!if p==52
1094}}}{{{#!if p==53
1105}}}{{{#!if p==54
1116}}}{{{#!if p==55
1127}}}{{{#!if p==56
1138}}}{{{#!if p==57
r41
1149}}}{{{#!if o+=1
r23
115}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
116##3
r11
117{{{#!if p=r[o]
r35
118}}}{{{#!if p==46
r14
119{{{#!if d=true
r20
120}}}}}}{{{#!if p==48
r9
1210}}}{{{#!if p==49
1221}}}{{{#!if p==50
1232}}}{{{#!if p==51
1243}}}{{{#!if p==52
1254}}}{{{#!if p==53
1265}}}{{{#!if p==54
1276}}}{{{#!if p==55
1287}}}{{{#!if p==56
1298}}}{{{#!if p==57
r41
1309}}}{{{#!if o+=1
r23
131}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
132##4
r11
133{{{#!if p=r[o]
r35
134}}}{{{#!if p==46
r14
135{{{#!if d=true
r20
136}}}}}}{{{#!if p==48
r9
1370}}}{{{#!if p==49
1381}}}{{{#!if p==50
1392}}}{{{#!if p==51
1403}}}{{{#!if p==52
1414}}}{{{#!if p==53
1425}}}{{{#!if p==54
1436}}}{{{#!if p==55
1447}}}{{{#!if p==56
1458}}}{{{#!if p==57
r41
1469}}}{{{#!if o+=1
r23
147}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
148##5
r11
149{{{#!if p=r[o]
r35
150}}}{{{#!if p==46
r14
151{{{#!if d=true
r20
152}}}}}}{{{#!if p==48
r9
1530}}}{{{#!if p==49
1541}}}{{{#!if p==50
1552}}}{{{#!if p==51
1563}}}{{{#!if p==52
1574}}}{{{#!if p==53
1585}}}{{{#!if p==54
1596}}}{{{#!if p==55
1607}}}{{{#!if p==56
1618}}}{{{#!if p==57
r41
1629}}}{{{#!if o+=1
r23
163}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
164##6
r11
165{{{#!if p=r[o]
r35
166}}}{{{#!if p==46
r14
167{{{#!if d=true
r20
168}}}}}}{{{#!if p==48
r9
1690}}}{{{#!if p==49
1701}}}{{{#!if p==50
1712}}}{{{#!if p==51
1723}}}{{{#!if p==52
1734}}}{{{#!if p==53
1745}}}{{{#!if p==54
1756}}}{{{#!if p==55
1767}}}{{{#!if p==56
1778}}}{{{#!if p==57
r41
1789}}}{{{#!if o+=1
r23
179}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
180##7
r11
181{{{#!if p=r[o]
r35
182}}}{{{#!if p==46
r14
183{{{#!if d=true
r20
184}}}}}}{{{#!if p==48
r9
1850}}}{{{#!if p==49
1861}}}{{{#!if p==50
1872}}}{{{#!if p==51
1883}}}{{{#!if p==52
1894}}}{{{#!if p==53
1905}}}{{{#!if p==54
1916}}}{{{#!if p==55
1927}}}{{{#!if p==56
1938}}}{{{#!if p==57
r41
1949}}}{{{#!if o+=1
r23
195}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
196##8
r11
197{{{#!if p=r[o]
r35
198}}}{{{#!if p==46
r14
199{{{#!if d=true
r20
200}}}}}}{{{#!if p==48
r9
2010}}}{{{#!if p==49
2021}}}{{{#!if p==50
2032}}}{{{#!if p==51
2043}}}{{{#!if p==52
2054}}}{{{#!if p==53
2065}}}{{{#!if p==54
2076}}}{{{#!if p==55
2087}}}{{{#!if p==56
2098}}}{{{#!if p==57
r41
2109}}}{{{#!if o+=1
r23
211}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
212##9
r11
213{{{#!if p=r[o]
r35
214}}}{{{#!if p==46
r14
215{{{#!if d=true
r20
216}}}}}}{{{#!if p==48
r9
2170}}}{{{#!if p==49
2181}}}{{{#!if p==50
2192}}}{{{#!if p==51
2203}}}{{{#!if p==52
2214}}}{{{#!if p==53
2225}}}{{{#!if p==54
2236}}}{{{#!if p==55
2247}}}{{{#!if p==56
2258}}}{{{#!if p==57
r41
2269}}}{{{#!if o+=1
r23
227}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
228##10
r11
229{{{#!if p=r[o]
r35
230}}}{{{#!if p==46
r14
231{{{#!if d=true
r20
232}}}}}}{{{#!if p==48
r9
2330}}}{{{#!if p==49
2341}}}{{{#!if p==50
2352}}}{{{#!if p==51
2363}}}{{{#!if p==52
2374}}}{{{#!if p==53
2385}}}{{{#!if p==54
2396}}}{{{#!if p==55
2407}}}{{{#!if p==56
2418}}}{{{#!if p==57
r41
2429}}}{{{#!if o+=1
r23
243}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
244##11
r11
245{{{#!if p=r[o]
r35
246}}}{{{#!if p==46
r14
247{{{#!if d=true
r20
248}}}}}}{{{#!if p==48
r9
2490}}}{{{#!if p==49
2501}}}{{{#!if p==50
2512}}}{{{#!if p==51
2523}}}{{{#!if p==52
2534}}}{{{#!if p==53
2545}}}{{{#!if p==54
2556}}}{{{#!if p==55
2567}}}{{{#!if p==56
2578}}}{{{#!if p==57
r41
2589}}}{{{#!if o+=1
r23
259}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
260##12
r11
261{{{#!if p=r[o]
r35
262}}}{{{#!if p==46
r14
263{{{#!if d=true
r20
264}}}}}}{{{#!if p==48
r9
2650}}}{{{#!if p==49
2661}}}{{{#!if p==50
2672}}}{{{#!if p==51
2683}}}{{{#!if p==52
2694}}}{{{#!if p==53
2705}}}{{{#!if p==54
2716}}}{{{#!if p==55
2727}}}{{{#!if p==56
2738}}}{{{#!if p==57
r41
2749}}}{{{#!if o+=1
r23
275}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
276##13
r11
277{{{#!if p=r[o]
r35
278}}}{{{#!if p==46
r14
279{{{#!if d=true
r20
280}}}}}}{{{#!if p==48
r9
2810}}}{{{#!if p==49
2821}}}{{{#!if p==50
2832}}}{{{#!if p==51
2843}}}{{{#!if p==52
2854}}}{{{#!if p==53
2865}}}{{{#!if p==54
2876}}}{{{#!if p==55
2887}}}{{{#!if p==56
2898}}}{{{#!if p==57
r41
2909}}}{{{#!if o+=1
r23
291}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
292##14
r11
293{{{#!if p=r[o]
r35
294}}}{{{#!if p==46
r14
295{{{#!if d=true
r20
296}}}}}}{{{#!if p==48
r9
2970}}}{{{#!if p==49
2981}}}{{{#!if p==50
2992}}}{{{#!if p==51
3003}}}{{{#!if p==52
3014}}}{{{#!if p==53
3025}}}{{{#!if p==54
3036}}}{{{#!if p==55
3047}}}{{{#!if p==56
3058}}}{{{#!if p==57
r41
3069}}}{{{#!if o+=1
r23
307}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
308##15
r11
309{{{#!if p=r[o]
r35
310}}}{{{#!if p==46
r14
311{{{#!if d=true
r20
312}}}}}}{{{#!if p==48
r9
3130}}}{{{#!if p==49
3141}}}{{{#!if p==50
3152}}}{{{#!if p==51
3163}}}{{{#!if p==52
3174}}}{{{#!if p==53
3185}}}{{{#!if p==54
3196}}}{{{#!if p==55
3207}}}{{{#!if p==56
3218}}}{{{#!if p==57
r41
3229}}}{{{#!if o+=1
r23
323}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
324##16
r11
325{{{#!if p=r[o]
r35
326}}}{{{#!if p==46
r14
327{{{#!if d=true
r20
328}}}}}}{{{#!if p==48
r9
3290}}}{{{#!if p==49
3301}}}{{{#!if p==50
3312}}}{{{#!if p==51
3323}}}{{{#!if p==52
3334}}}{{{#!if p==53
3345}}}{{{#!if p==54
3356}}}{{{#!if p==55
3367}}}{{{#!if p==56
3378}}}{{{#!if p==57
r41
3389}}}{{{#!if o+=1
r23
339}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
340##17
r11
341{{{#!if p=r[o]
r35
342}}}{{{#!if p==46
r14
343{{{#!if d=true
r20
344}}}}}}{{{#!if p==48
r9
3450}}}{{{#!if p==49
3461}}}{{{#!if p==50
3472}}}{{{#!if p==51
3483}}}{{{#!if p==52
3494}}}{{{#!if p==53
3505}}}{{{#!if p==54
3516}}}{{{#!if p==55
3527}}}{{{#!if p==56
3538}}}{{{#!if p==57
r41
3549}}}{{{#!if o+=1
r23
355}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
356##18
r11
357{{{#!if p=r[o]
r35
358}}}{{{#!if p==46
r14
359{{{#!if d=true
r20
360}}}}}}{{{#!if p==48
r9
3610}}}{{{#!if p==49
3621}}}{{{#!if p==50
3632}}}{{{#!if p==51
3643}}}{{{#!if p==52
3654}}}{{{#!if p==53
3665}}}{{{#!if p==54
3676}}}{{{#!if p==55
3687}}}{{{#!if p==56
3698}}}{{{#!if p==57
r41
3709}}}{{{#!if o+=1
r23
371}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
372##19
r11
373{{{#!if p=r[o]
r35
374}}}{{{#!if p==46
r14
375{{{#!if d=true
r20
376}}}}}}{{{#!if p==48
r9
3770}}}{{{#!if p==49
3781}}}{{{#!if p==50
3792}}}{{{#!if p==51
3803}}}{{{#!if p==52
3814}}}{{{#!if p==53
3825}}}{{{#!if p==54
3836}}}{{{#!if p==55
3847}}}{{{#!if p==56
3858}}}{{{#!if p==57
r41
3869}}}{{{#!if o+=1
r23
387}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
388##20
r11
389{{{#!if p=r[o]
r35
390}}}{{{#!if p==46
r14
391{{{#!if d=true
r20
392}}}}}}{{{#!if p==48
r9
3930}}}{{{#!if p==49
3941}}}{{{#!if p==50
3952}}}{{{#!if p==51
3963}}}{{{#!if p==52
3974}}}{{{#!if p==53
3985}}}{{{#!if p==54
3996}}}{{{#!if p==55
4007}}}{{{#!if p==56
4018}}}{{{#!if p==57
r41
4029}}}{{{#!if o+=1
r20
403}}}}}}{{{#!if o=0, l=u.length
404}}}{{{#!if u[0]==45
405##음수로 마이너스가 표시되면 넘기기
r41
406{{{#!if o+=1
r20
407}}}}}}{{{#!if l-o>2
408##소수점이 나오면 "0."으로 2자리 차지하므로 소수점 표기.
r41
409{{{#!if o+=1
r42
410##일의 자리 넘기기
r32
411}}}{{{#!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
412##".000000"은 표기하지 않음. 소수점 표기
413.{{{#!if o+=1
414}}}}}}}}}{{{#!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
415##1
r22
416{{{#!if p=u[o]
r21
417}}}{{{#!if p==48
r25
4180}}}{{{#!if p==49
r21
4191}}}{{{#!if p==50
4202}}}{{{#!if p==51
4213}}}{{{#!if p==52
4224}}}{{{#!if p==53
4235}}}{{{#!if p==54
4246}}}{{{#!if p==55
4257}}}{{{#!if p==56
4268}}}{{{#!if p==57
r41
4279}}}{{{#!if o+=1
r23
428}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48)||(u[o+4]!=48))
r21
429##2
r22
430{{{#!if p=u[o]
r21
431}}}{{{#!if p==48
4320}}}{{{#!if p==49
4331}}}{{{#!if p==50
4342}}}{{{#!if p==51
4353}}}{{{#!if p==52
4364}}}{{{#!if p==53
4375}}}{{{#!if p==54
4386}}}{{{#!if p==55
4397}}}{{{#!if p==56
4408}}}{{{#!if p==57
r41
4419}}}{{{#!if o+=1
r23
442}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48))
r21
443##3
r22
444{{{#!if p=u[o]
r21
445}}}{{{#!if p==48
4460}}}{{{#!if p==49
4471}}}{{{#!if p==50
4482}}}{{{#!if p==51
4493}}}{{{#!if p==52
4504}}}{{{#!if p==53
4515}}}{{{#!if p==54
4526}}}{{{#!if p==55
4537}}}{{{#!if p==56
4548}}}{{{#!if p==57
r41
4559}}}{{{#!if o+=1
r23
456}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48))
r21
457##4
r22
458{{{#!if p=u[o]
r21
459}}}{{{#!if p==48
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==true)&&(u[o+1]!=48)
r21
471##5
r22
472{{{#!if p=u[o]
r21
473}}}{{{#!if p==48
4740}}}{{{#!if p==49
4751}}}{{{#!if p==50
4762}}}{{{#!if p==51
4773}}}{{{#!if p==52
4784}}}{{{#!if p==53
4795}}}{{{#!if p==54
4806}}}{{{#!if p==55
4817}}}{{{#!if p==56
4828}}}{{{#!if p==57
r41
4839}}}{{{#!if o+=1
r23
484}}}}}}{{{#!if (o<l)&&(d==true)
r21
485##6
r22
486{{{#!if p=u[o]
r21
487}}}{{{#!if p==48
r26
488##"0" 미표기
489}}}{{{#!if p==49
r21
4901}}}{{{#!if p==50
4912}}}{{{#!if p==51
4923}}}{{{#!if p==52
4934}}}{{{#!if p==53
4945}}}{{{#!if p==54
4956}}}{{{#!if p==55
4967}}}{{{#!if p==56
4978}}}{{{#!if p==57
r41
4989}}}{{{#!if o+=1
r34
499}}}}}}}}}}}}