r347 vs r348
......
15051505
{{{#!if au=+au, ab=+ab, bu=+bu, bb=+bb
15061506
}}}
15071507
1508
변수 ps(logical)를 false로 초기화한 다음 변수 ps를 가져옵니다. au의 값이 bu보다 작거나, au==bu이더라도 ab<bb이면 해당하는 자릿수의 몫이 0이라는 의미이므로 변수 pstrue로 바꾸고 다음 자릿수로 넘깁니다.
1509
{{{#!if ps=false, (au<bu)||((au==bu)&&(ab<bb))
1510
{{{#!if ps=true
1511
}}}}}}
1512
ps==true가 되려면 ① au>bu이거나, ② au==bu이고 ab>=bb인 경우입니다. !ps(다음 자릿수계산을 넘기지 않음)임을 if 조건문으로 둔 상태에서 진행합니다.
1513
{{{#!if !ps
1514
au를 bu로 나눈 몫을 tw로 정의합니다. 정수를 정수로 나누면 몫만 계산되며, 100,000,000,000,000,000 이상 999,999,999 999,999,999 이하의 한 정수를 100,000,000,000,000,000 이상의 다른 한 정수로 나눈 몫이므로 tw의 값은 최소 0 최대 9가 됩니다.
1508
먼저 au를 bu로 나눈 몫을 tw로 정의합니다. 정수를 정수로 나누면 몫만 계산되며, 100,000,000,000,000,000 이상 999,999,999 999,999,999 이하의 한 정수를 100,000,000,000,000,000 이상의 다른 한 정수로 나눈 몫이므로 tw의 값은 최소 0 최대 9가 됩니다.
15151509
{{{#!if tw=au/bu
15161510
}}}
15171511
bu, bb를 각각 tw만큼 곱한 값을 tx, ty로 정의합니다.
......
15251519
ty를 정수로 바꿉니다.
15261520
{{{#!if ty=+ty
15271521
}}}
1528
(2.1/1.6 처럼) ty가 넘쳐 tx 값이 더해지는 경우가 있으므로 몫이 유효한 값인지 검산합니다. 만일 tx ty 가 기존 au ab을 넘게 되면 tw에서 1을 빼고, tx, ty를 다시 정의합니다.
1522
(2.1/1.6 처럼) ty가 넘쳐 tx 값이 더해지는 경우가 있으므로 몫이 유효한 값인지 검산합니다. 만일 tx ty 가 기존 au ab을 넘게 되면 tw에서 1을 빼고, tx, ty를 다시 정의합니다. 그러나 tw가 이미 0이 되었을 경우 tw를 0으로 둡니다.
15291523
{{{#!if (tx>au)||((tx==au)&&(ty>ab))
1530
{{{#!if tw-=1, tx=bu*tw, ty=bb*tw
1524
{{{#!if tw=(tw==0)?0:tw-1, tx=bu*tw, ty=bb*tw
15311525
}}}
15321526
마찬가지로 ty가 19자리가 된다면 넘친 첫번째 자리의 값을 tx의 일의 자리로 더합니다.
15331527
{{{#!if ty=ty.toString(), ty.length==19
......
15381532
}}}
15391533
}}}
15401534
이렇게 만들어진 tx, ty가 있으면 이를 반영합니다.
1541
}}}
1542
ps일 경우 해당 자리의 몫(tw)을 0으로 처리합니다.
1543
{{{#!if ps
1544
{{{#!if tw=0
1545
}}}}}}
1535
15461536
!ps일 경우 au에서 tx를, ab에서 ty를 뺍니다. 만약 ty>ab일 경우 au에서 1을 가져와 (au에서 1을 빼고) ab에 1,000,000,000,000,000,000을 더한 다음 계산합니다.
15471537
{{{#!if !ps
15481538
{{{#!if ty>ab
......
53705360
'''tx''' : temporary value 1 (integer); '''ty''' : temporary value 2 (integer); '''tz''' : temporary value 3 (integer);
53715361
'''comment''' : comment (string);
53725362
ru는 계산결과에서 소수점 위 자리이므로, dot(.)이 나오지 않습니다.
5373
##여기까지 주석(주석 아님)
5363
##== 출력 부분 ==
5364
##=== 계산값 출력 (정상 출력) ===
53745365
}}}{{{#!wiki style="font-weight: 300; font-size: 17.5px;"
53755366
{{{#!if this.sa=(this.a!="")&&(this.a!=null), this.sb=(this.b!="")&&(this.b!=null), this.sf=(this.f=='+')||(this.f=='-')||(this.f=='*')||(this.f=='/'), this.ad=ma.indexOf("."), this.bd=mb.indexOf("."), ps=false, tm="", tn=""
53765367
}}}{{{#!if !(sa&sb&sf)
......
55375528
}}}}}}{{{#!if ms=tm
55385529
}}}}}}@ms@{{{#!if (f=='/')&&(tn=="...")
55395530
...}}}}}}}}}}}}}}}{{{#!if (ea>0)||(eb>0)
5531
##=== 오류 · 경고 코드 출력 부분 ===
55405532
{{{#!if (ea==1)||(eb==1)
55415533
'''{{{#orangered [오류]}}}''' 변수 {{{#!if ea==1
55425534
a{{{#!if eb==1
......