r67
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 번 : 입력한 변수는 숫자로 읽을 수 없습니다. 반점(,)을 입력했다면 반점을 지우고 다시 입력하세요.
r62
54
r67
55{{{#!if f=="*"
56다행히 999,999,999,999,999,999*9=8,999,999,999,999,999,999,1 이라서 할 수는 있습니다.
57}}}
58
r65
59error code 03 번 : 오버플로
60error code 04 번 : 언더플로
61error code 05 번 : 0으로 나눌 수 없습니다.
r64
62
r67
63##여기까지 주석(주석 아님)
r54
64}}}{{{#!if as[0]!=45
r53
65@a@}}}{{{#!if as[0]==45
66(@a@)}}}{{{#!if f=='+'
r67
67+}}}{{{#!if f=="-"
68-}}}{{{#!if f=="*"
69*}}}{{{#!if f=="/"
70/}}}{{{#!if bs[0]!=45
r53
71@b@}}}{{{#!if bs[0]==45
r57
72(@b@)}}}}}}
r44
73==# 2-1 #==
74{{{#!wiki style="font-weight: 300; font-size: 20px"
r37
75{{{#!if +a>=0
76@a@}}}{{{#!if +a<0
r36
77(@a@)}}} {{{#!if f == '+'
r40

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

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

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

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

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

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

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

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

(r16으로 되돌림)
93##1
r11
94{{{#!if p=r[o]
r9
95}}}{{{#!if p==45
96-}}}{{{#!if p==46
r14
97{{{#!if d=true
r20
98}}}}}}{{{#!if p==48
r9
990}}}{{{#!if p==49
1001}}}{{{#!if p==50
1012}}}{{{#!if p==51
1023}}}{{{#!if p==52
1034}}}{{{#!if p==53
1045}}}{{{#!if p==54
1056}}}{{{#!if p==55
1067}}}{{{#!if p==56
1078}}}{{{#!if p==57
r41
1089}}}{{{#!if o+=1
r19
109}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
110##2
r11
111{{{#!if p=r[o]
r35
112}}}{{{#!if p==46
r14
113{{{#!if d=true
r20
114}}}}}}{{{#!if p==48
r9
1150}}}{{{#!if p==49
1161}}}{{{#!if p==50
1172}}}{{{#!if p==51
1183}}}{{{#!if p==52
1194}}}{{{#!if p==53
1205}}}{{{#!if p==54
1216}}}{{{#!if p==55
1227}}}{{{#!if p==56
1238}}}{{{#!if p==57
r41
1249}}}{{{#!if o+=1
r23
125}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
126##3
r11
127{{{#!if p=r[o]
r35
128}}}{{{#!if p==46
r14
129{{{#!if d=true
r20
130}}}}}}{{{#!if p==48
r9
1310}}}{{{#!if p==49
1321}}}{{{#!if p==50
1332}}}{{{#!if p==51
1343}}}{{{#!if p==52
1354}}}{{{#!if p==53
1365}}}{{{#!if p==54
1376}}}{{{#!if p==55
1387}}}{{{#!if p==56
1398}}}{{{#!if p==57
r41
1409}}}{{{#!if o+=1
r23
141}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
142##4
r11
143{{{#!if p=r[o]
r35
144}}}{{{#!if p==46
r14
145{{{#!if d=true
r20
146}}}}}}{{{#!if p==48
r9
1470}}}{{{#!if p==49
1481}}}{{{#!if p==50
1492}}}{{{#!if p==51
1503}}}{{{#!if p==52
1514}}}{{{#!if p==53
1525}}}{{{#!if p==54
1536}}}{{{#!if p==55
1547}}}{{{#!if p==56
1558}}}{{{#!if p==57
r41
1569}}}{{{#!if o+=1
r23
157}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
158##5
r11
159{{{#!if p=r[o]
r35
160}}}{{{#!if p==46
r14
161{{{#!if d=true
r20
162}}}}}}{{{#!if p==48
r9
1630}}}{{{#!if p==49
1641}}}{{{#!if p==50
1652}}}{{{#!if p==51
1663}}}{{{#!if p==52
1674}}}{{{#!if p==53
1685}}}{{{#!if p==54
1696}}}{{{#!if p==55
1707}}}{{{#!if p==56
1718}}}{{{#!if p==57
r41
1729}}}{{{#!if o+=1
r23
173}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
174##6
r11
175{{{#!if p=r[o]
r35
176}}}{{{#!if p==46
r14
177{{{#!if d=true
r20
178}}}}}}{{{#!if p==48
r9
1790}}}{{{#!if p==49
1801}}}{{{#!if p==50
1812}}}{{{#!if p==51
1823}}}{{{#!if p==52
1834}}}{{{#!if p==53
1845}}}{{{#!if p==54
1856}}}{{{#!if p==55
1867}}}{{{#!if p==56
1878}}}{{{#!if p==57
r41
1889}}}{{{#!if o+=1
r23
189}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
190##7
r11
191{{{#!if p=r[o]
r35
192}}}{{{#!if p==46
r14
193{{{#!if d=true
r20
194}}}}}}{{{#!if p==48
r9
1950}}}{{{#!if p==49
1961}}}{{{#!if p==50
1972}}}{{{#!if p==51
1983}}}{{{#!if p==52
1994}}}{{{#!if p==53
2005}}}{{{#!if p==54
2016}}}{{{#!if p==55
2027}}}{{{#!if p==56
2038}}}{{{#!if p==57
r41
2049}}}{{{#!if o+=1
r23
205}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
206##8
r11
207{{{#!if p=r[o]
r35
208}}}{{{#!if p==46
r14
209{{{#!if d=true
r20
210}}}}}}{{{#!if p==48
r9
2110}}}{{{#!if p==49
2121}}}{{{#!if p==50
2132}}}{{{#!if p==51
2143}}}{{{#!if p==52
2154}}}{{{#!if p==53
2165}}}{{{#!if p==54
2176}}}{{{#!if p==55
2187}}}{{{#!if p==56
2198}}}{{{#!if p==57
r41
2209}}}{{{#!if o+=1
r23
221}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
222##9
r11
223{{{#!if p=r[o]
r35
224}}}{{{#!if p==46
r14
225{{{#!if d=true
r20
226}}}}}}{{{#!if p==48
r9
2270}}}{{{#!if p==49
2281}}}{{{#!if p==50
2292}}}{{{#!if p==51
2303}}}{{{#!if p==52
2314}}}{{{#!if p==53
2325}}}{{{#!if p==54
2336}}}{{{#!if p==55
2347}}}{{{#!if p==56
2358}}}{{{#!if p==57
r41
2369}}}{{{#!if o+=1
r23
237}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
238##10
r11
239{{{#!if p=r[o]
r35
240}}}{{{#!if p==46
r14
241{{{#!if d=true
r20
242}}}}}}{{{#!if p==48
r9
2430}}}{{{#!if p==49
2441}}}{{{#!if p==50
2452}}}{{{#!if p==51
2463}}}{{{#!if p==52
2474}}}{{{#!if p==53
2485}}}{{{#!if p==54
2496}}}{{{#!if p==55
2507}}}{{{#!if p==56
2518}}}{{{#!if p==57
r41
2529}}}{{{#!if o+=1
r23
253}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
254##11
r11
255{{{#!if p=r[o]
r35
256}}}{{{#!if p==46
r14
257{{{#!if d=true
r20
258}}}}}}{{{#!if p==48
r9
2590}}}{{{#!if p==49
2601}}}{{{#!if p==50
2612}}}{{{#!if p==51
2623}}}{{{#!if p==52
2634}}}{{{#!if p==53
2645}}}{{{#!if p==54
2656}}}{{{#!if p==55
2667}}}{{{#!if p==56
2678}}}{{{#!if p==57
r41
2689}}}{{{#!if o+=1
r23
269}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
270##12
r11
271{{{#!if p=r[o]
r35
272}}}{{{#!if p==46
r14
273{{{#!if d=true
r20
274}}}}}}{{{#!if p==48
r9
2750}}}{{{#!if p==49
2761}}}{{{#!if p==50
2772}}}{{{#!if p==51
2783}}}{{{#!if p==52
2794}}}{{{#!if p==53
2805}}}{{{#!if p==54
2816}}}{{{#!if p==55
2827}}}{{{#!if p==56
2838}}}{{{#!if p==57
r41
2849}}}{{{#!if o+=1
r23
285}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
286##13
r11
287{{{#!if p=r[o]
r35
288}}}{{{#!if p==46
r14
289{{{#!if d=true
r20
290}}}}}}{{{#!if p==48
r9
2910}}}{{{#!if p==49
2921}}}{{{#!if p==50
2932}}}{{{#!if p==51
2943}}}{{{#!if p==52
2954}}}{{{#!if p==53
2965}}}{{{#!if p==54
2976}}}{{{#!if p==55
2987}}}{{{#!if p==56
2998}}}{{{#!if p==57
r41
3009}}}{{{#!if o+=1
r23
301}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
302##14
r11
303{{{#!if p=r[o]
r35
304}}}{{{#!if p==46
r14
305{{{#!if d=true
r20
306}}}}}}{{{#!if p==48
r9
3070}}}{{{#!if p==49
3081}}}{{{#!if p==50
3092}}}{{{#!if p==51
3103}}}{{{#!if p==52
3114}}}{{{#!if p==53
3125}}}{{{#!if p==54
3136}}}{{{#!if p==55
3147}}}{{{#!if p==56
3158}}}{{{#!if p==57
r41
3169}}}{{{#!if o+=1
r23
317}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
318##15
r11
319{{{#!if p=r[o]
r35
320}}}{{{#!if p==46
r14
321{{{#!if d=true
r20
322}}}}}}{{{#!if p==48
r9
3230}}}{{{#!if p==49
3241}}}{{{#!if p==50
3252}}}{{{#!if p==51
3263}}}{{{#!if p==52
3274}}}{{{#!if p==53
3285}}}{{{#!if p==54
3296}}}{{{#!if p==55
3307}}}{{{#!if p==56
3318}}}{{{#!if p==57
r41
3329}}}{{{#!if o+=1
r23
333}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
334##16
r11
335{{{#!if p=r[o]
r35
336}}}{{{#!if p==46
r14
337{{{#!if d=true
r20
338}}}}}}{{{#!if p==48
r9
3390}}}{{{#!if p==49
3401}}}{{{#!if p==50
3412}}}{{{#!if p==51
3423}}}{{{#!if p==52
3434}}}{{{#!if p==53
3445}}}{{{#!if p==54
3456}}}{{{#!if p==55
3467}}}{{{#!if p==56
3478}}}{{{#!if p==57
r41
3489}}}{{{#!if o+=1
r23
349}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
350##17
r11
351{{{#!if p=r[o]
r35
352}}}{{{#!if p==46
r14
353{{{#!if d=true
r20
354}}}}}}{{{#!if p==48
r9
3550}}}{{{#!if p==49
3561}}}{{{#!if p==50
3572}}}{{{#!if p==51
3583}}}{{{#!if p==52
3594}}}{{{#!if p==53
3605}}}{{{#!if p==54
3616}}}{{{#!if p==55
3627}}}{{{#!if p==56
3638}}}{{{#!if p==57
r41
3649}}}{{{#!if o+=1
r23
365}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
366##18
r11
367{{{#!if p=r[o]
r35
368}}}{{{#!if p==46
r14
369{{{#!if d=true
r20
370}}}}}}{{{#!if p==48
r9
3710}}}{{{#!if p==49
3721}}}{{{#!if p==50
3732}}}{{{#!if p==51
3743}}}{{{#!if p==52
3754}}}{{{#!if p==53
3765}}}{{{#!if p==54
3776}}}{{{#!if p==55
3787}}}{{{#!if p==56
3798}}}{{{#!if p==57
r41
3809}}}{{{#!if o+=1
r23
381}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
382##19
r11
383{{{#!if p=r[o]
r35
384}}}{{{#!if p==46
r14
385{{{#!if d=true
r20
386}}}}}}{{{#!if p==48
r9
3870}}}{{{#!if p==49
3881}}}{{{#!if p==50
3892}}}{{{#!if p==51
3903}}}{{{#!if p==52
3914}}}{{{#!if p==53
3925}}}{{{#!if p==54
3936}}}{{{#!if p==55
3947}}}{{{#!if p==56
3958}}}{{{#!if p==57
r41
3969}}}{{{#!if o+=1
r23
397}}}}}}{{{#!if (o<l)&&(d==false)
r18

(r16으로 되돌림)
398##20
r11
399{{{#!if p=r[o]
r35
400}}}{{{#!if p==46
r14
401{{{#!if d=true
r20
402}}}}}}{{{#!if p==48
r9
4030}}}{{{#!if p==49
4041}}}{{{#!if p==50
4052}}}{{{#!if p==51
4063}}}{{{#!if p==52
4074}}}{{{#!if p==53
4085}}}{{{#!if p==54
4096}}}{{{#!if p==55
4107}}}{{{#!if p==56
4118}}}{{{#!if p==57
r41
4129}}}{{{#!if o+=1
r20
413}}}}}}{{{#!if o=0, l=u.length
414}}}{{{#!if u[0]==45
415##음수로 마이너스가 표시되면 넘기기
r41
416{{{#!if o+=1
r20
417}}}}}}{{{#!if l-o>2
418##소수점이 나오면 "0."으로 2자리 차지하므로 소수점 표기.
r41
419{{{#!if o+=1
r42
420##일의 자리 넘기기
r32
421}}}{{{#!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
422##".000000"은 표기하지 않음. 소수점 표기
423.{{{#!if o+=1
424}}}}}}}}}{{{#!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
425##1
r22
426{{{#!if p=u[o]
r21
427}}}{{{#!if p==48
r25
4280}}}{{{#!if p==49
r21
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==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48)||(u[o+4]!=48))
r21
439##2
r22
440{{{#!if p=u[o]
r21
441}}}{{{#!if p==48
4420}}}{{{#!if p==49
4431}}}{{{#!if p==50
4442}}}{{{#!if p==51
4453}}}{{{#!if p==52
4464}}}{{{#!if p==53
4475}}}{{{#!if p==54
4486}}}{{{#!if p==55
4497}}}{{{#!if p==56
4508}}}{{{#!if p==57
r41
4519}}}{{{#!if o+=1
r23
452}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48)||(u[o+3]!=48))
r21
453##3
r22
454{{{#!if p=u[o]
r21
455}}}{{{#!if p==48
4560}}}{{{#!if p==49
4571}}}{{{#!if p==50
4582}}}{{{#!if p==51
4593}}}{{{#!if p==52
4604}}}{{{#!if p==53
4615}}}{{{#!if p==54
4626}}}{{{#!if p==55
4637}}}{{{#!if p==56
4648}}}{{{#!if p==57
r41
4659}}}{{{#!if o+=1
r23
466}}}}}}{{{#!if (o<l)&&(d==true)&&((u[o+1]!=48)||(u[o+2]!=48))
r21
467##4
r22
468{{{#!if p=u[o]
r21
469}}}{{{#!if p==48
4700}}}{{{#!if p==49
4711}}}{{{#!if p==50
4722}}}{{{#!if p==51
4733}}}{{{#!if p==52
4744}}}{{{#!if p==53
4755}}}{{{#!if p==54
4766}}}{{{#!if p==55
4777}}}{{{#!if p==56
4788}}}{{{#!if p==57
r41
4799}}}{{{#!if o+=1
r23
480}}}}}}{{{#!if (o<l)&&(d==true)&&(u[o+1]!=48)
r21
481##5
r22
482{{{#!if p=u[o]
r21
483}}}{{{#!if p==48
4840}}}{{{#!if p==49
4851}}}{{{#!if p==50
4862}}}{{{#!if p==51
4873}}}{{{#!if p==52
4884}}}{{{#!if p==53
4895}}}{{{#!if p==54
4906}}}{{{#!if p==55
4917}}}{{{#!if p==56
4928}}}{{{#!if p==57
r41
4939}}}{{{#!if o+=1
r23
494}}}}}}{{{#!if (o<l)&&(d==true)
r21
495##6
r22
496{{{#!if p=u[o]
r21
497}}}{{{#!if p==48
r26
498##"0" 미표기
499}}}{{{#!if p==49
r21
5001}}}{{{#!if p==50
5012}}}{{{#!if p==51
5023}}}{{{#!if p==52
5034}}}{{{#!if p==53
5045}}}{{{#!if p==54
5056}}}{{{#!if p==55
5067}}}{{{#!if p==56
5078}}}{{{#!if p==57
r41
5089}}}{{{#!if o+=1
r34
509}}}}}}}}}}}}