| r7 vs r8 | ||
|---|---|---|
| ... | ... | |
| 1521 | 1521 | }}}}}}}}}{{{#!if tn="", !br |
| 1522 | 1522 | {{{#!if tn="...", ts=true |
| 1523 | 1523 | }}}}}} |
| 1524 | ##r | |
| 1525 | ||
| 1526 | {{{#!if i=ac-bc | |
| 1527 | ||
| 1528 | ||
| 1529 | ||
| 1530 | ||
| 1531 | ||
| 1524 | ##r매기기 | |
| 1525 | {{{#!if i=ac-bc, i>0 | |
| 1532 | 1526 | {{{#!if i+1>tm.length |
| 1533 | i+1보타 tm의 길이가 작은 경우 i==35인 경우를 감안하여 tm의 뒷부분을 pd+pd --더블 패드--로 채운 다음 i+1길이만큼 오려냅니다. | |
| 1534 | 1527 | {{{#!if tm+=pd+pd, tm=tm.substr(0,i+1) |
| 1535 | }}}}}}}}} | |
| 1536 | ||
| 1537 | ||
| 1538 | {{{#!if i>=18 | |
| 1539 | ||
| 1528 | }}}}}}}}}{{{#!if i>=18 | |
| 1540 | 1529 | {{{#!if rs=tm.substr(0,i-17), tm=tm.substr(i-17) |
| 1541 | }}}}}} | |
| 1542 | ||
| 1543 | ||
| 1544 | ||
| 1545 | {{{#!if ps=false, i>=18 | |
| 1530 | }}}}}}{{{#!if ps=false, i>=18 | |
| 1546 | 1531 | {{{#!if ps=true |
| 1547 | }}}}}} | |
| 1548 | ||
| 1549 | {{{#!if ps | |
| 1532 | }}}}}}{{{#!if ps | |
| 1550 | 1533 | {{{#!if ru=tm.substr(0,18), tm=tm.substr(18) |
| 1551 | }}}}}} | |
| 1552 | ||
| 1553 | {{{#!if !ps&&(i>=0) | |
| 1534 | }}}}}}{{{#!if !ps&&(i>=0) | |
| 1554 | 1535 | {{{#!if ru=tm.substr(0,i+1), tm=tm.substr(i+1) |
| 1555 | }}}}}} | |
| 1556 | ||
| 1557 | ||
| 1558 | ||
| 1559 | {{{#!if i>=0 | |
| 1536 | }}}}}}{{{#!if i>=0 | |
| 1560 | 1537 | {{{#!if ps=true |
| 1561 | }}}}}} | |
| 1562 | ||
| 1563 | {{{#!if ps | |
| 1538 | }}}}}}{{{#!if ps | |
| 1564 | 1539 | {{{#!if rb=tm.substr(0,18), tm=tm.substr(18) |
| 1565 | }}}}}} | |
| 1566 | ||
| 1567 | ||
| 1568 | ||
| 1569 | ||
| 1570 | ||
| 1571 | {{{#!if !ps | |
| 1540 | }}}}}}{{{#!if !ps | |
| 1572 | 1541 | {{{#!if i>=-18 |
| 1573 | 1542 | {{{#!if rb=tm.substr(0,i+19), tm=tm.substr(i+19), rb=pd.substr(i+19)+rb |
| 1574 | }}}}}} | |
| 1575 | ||
| 1576 | {{{#!if i<-18 | |
| 1543 | }}}}}}{{{#!if i<-18 | |
| 1577 | 1544 | {{{#!if rb=pd |
| 1578 | }}}}}} | |
| 1579 | }}} | |
| 1580 | ||
| 1581 | ||
| 1582 | ||
| 1583 | {{{#!if i>=-18 | |
| 1545 | }}}}}}}}}{{{#!if i>=-18 | |
| 1584 | 1546 | {{{#!if ps=true |
| 1585 | }}}}}} | |
| 1586 | ||
| 1587 | {{{#!if ps | |
| 1547 | }}}}}}{{{#!if ps | |
| 1588 | 1548 | {{{#!if ri=tm.substr(0,18), tm=tm.substr(18) |
| 1589 | }}}}}} | |
| 1590 | ||
| 1591 | {{{#!if !ps&&(i>=-36) | |
| 1549 | }}}}}}{{{#!if !ps&&(i>=-36) | |
| 1592 | 1550 | {{{#!if ri=tm.substr(0,i+37), tm=tm.substr(i+37), ri=pd.substr(i+37)+ri |
| 1593 | }}} | |
| 1594 | }}} | |
| 1595 | ||
| 1596 | ||
| 1597 | {{{#!if tm.length>0 | |
| 1551 | }}}}}}{{{#!if tm.length>0 | |
| 1598 | 1552 | {{{#!if tn="...", ts=true, wb=br?2:0 |
| 1599 | }}}}}} | |
| 1600 | ||
| 1601 | ||
| 1602 | }}} | |
| 1603 | ||
| 1553 | }}}}}}}}} | |
| 1604 | 1554 | ##== 계산 결과 표시 정리하기 == |
| 1605 | 1555 | ##=== 결과값 표시 정리하기 === |
| 1606 | 연산이 끝났으면 표기된 숫자를 정리합니다. | |
| 1607 | ||
| 1608 | ##rs, ru 정리 부분 | |
| 1609 | 먼저 ru를 (곱셈연산에서 정수값으로 나올 수 있고, 나눗셈에서 몫이 1보다 작은 값이 나오는 경우같이 값을 부여하지 않았다면 초기화할 때 정의했던 정수 0인 채로 있으므로) 문자열로 바꿉니다. | |
| 1610 | 1556 | {{{#!if ru=ru.toString() |
| 1611 | }}} | |
| 1612 | ||
| 1613 | {{{#!if +rs==0 | |
| 1557 | }}}{{{#!if +rs==0 | |
| 1614 | 1558 | {{{#!if rs="", ru=+ru, ru=ru.toString() |
| 1615 | }}}}}} | |
| 1616 | ||
| 1617 | ||
| 1618 | {{{#!if +rs>0 | |
| 1619 | {{{#!if rs=rs.toString(), ru=pd+ru, ru=ru.substr(ru.length-18, 18) | |
| 1620 | ||
| 1621 | ||
| 1622 | ||
| 1623 | }}}}}} | |
| 1624 | ||
| 1625 | ||
| 1626 | ||
| 1627 | ||
| 1628 | {{{#!if !ts | |
| 1559 | }}}}}}{{{#!if +rs>0 | |
| 1560 | {{{#!if rs=rs.toString(), ru=pd+ru, ru=ru.substr(ru.length-18, 18), rs=+rs, rs=rs.toString() | |
| 1561 | }}}}}}{{{#!if !ts | |
| 1629 | 1562 | {{{#!if +ri==0 |
| 1630 | 1563 | {{{#!if ri="" |
| 1631 | 1564 | }}}{{{#!if +rb==0 |
| 1632 | 1565 | {{{#!if rb="", rp=0 |
| 1633 | }}}}}}}}}}}} | |
| 1634 | ||
| 1635 | ||
| 1636 | {{{#!if ps=(+ri>0) | |
| 1637 | }}} | |
| 1638 | ||
| 1639 | {{{#!if f=="*" | |
| 1640 | ||
| 1566 | }}}}}}}}}}}}{{{#!if ps=(+ri>0) | |
| 1567 | }}}{{{#!if f=="*" | |
| 1641 | 1568 | {{{#!if ps |
| 1642 | 1569 | {{{#!if ri=ri.toString(), ri=pd+ri, ri=ri.substr(ri.length-18, 18), rb=rb.toString(), rb=pd+rb, rb=rb.substr(rb.length-18, 18) |
| 1643 | }}}}}} | |
| 1644 | ||
| 1645 | {{{#!if !ps&&(+rb>0) | |
| 1570 | }}}}}}{{{#!if !ps&&(+rb>0) | |
| 1646 | 1571 | {{{#!if rb=rb.toString(), rb=pd+rb, rb=rb.substr(rb.length-18, 18) |
| 1647 | }}}}}} | |
| 1648 | }}} | |
| 1649 | ||
| 1650 | ||
| 1651 | {{{#!if !ts | |
| 1572 | }}}}}}}}}{{{#!if !ts | |
| 1652 | 1573 | {{{#!if ps |
| 1653 | 1574 | {{{#!if this.rp=ri.length |
| 1654 | }}} | |
| 1655 | ||
| 1656 | }}} | |
| 1657 | ||
| 1658 | {{{#!if !ps&&(rb!="") | |
| 1575 | }}}}}}{{{#!if !ps&&(rb!="") | |
| 1659 | 1576 | {{{#!if this.rp=rb.length |
| 1660 | }}}}}} | |
| 1661 | ||
| 1662 | ||
| 1663 | {{{#!if ps | |
| 1577 | }}}}}}{{{#!if ps | |
| 1664 | 1578 | {{{#!if (rp>9)&&(ri.substr(rp-9,9)=="000000000") |
| 1665 | 1579 | {{{#!if this.ri=ri.substr(0,rp-9), rp-=9 |
| 1666 | }}}}}} | |
| 1667 | {{{#!if (rp>4)&&(ri.substr(rp-4,4)=="0000") | |
| 1580 | }}}}}}{{{#!if (rp>4)&&(ri.substr(rp-4,4)=="0000") | |
| 1668 | 1581 | {{{#!if this.ri=ri.substr(0,rp-4), rp-=4 |
| 1669 | }}}}}} | |
| 1670 | {{{#!if (rp>2)&&(ri.substr(rp-2,2)=="00") | |
| 1582 | }}}}}}{{{#!if (rp>2)&&(ri.substr(rp-2,2)=="00") | |
| 1671 | 1583 | {{{#!if this.ri=ri.substr(0,rp-2), rp-=2 |
| 1672 | }}}}}} | |
| 1673 | {{{#!if (rp>2)&&(ri.substr(rp-2,2)=="00") | |
| 1584 | }}}}}}{{{#!if (rp>2)&&(ri.substr(rp-2,2)=="00") | |
| 1674 | 1585 | {{{#!if this.ri=ri.substr(0,rp-2), rp-=2 |
| 1675 | }}}}}} | |
| 1676 | {{{#!if (rp>1)&&(ri.substr(rp-1,1)=="0") | |
| 1586 | }}}}}}{{{#!if (rp>1)&&(ri.substr(rp-1,1)=="0") | |
| 1677 | 1587 | {{{#!if this.ri=ri.substr(0,rp-1), rp-=1 |
| 1678 | }}}}}} | |
| 1679 | ||
| 1680 | {{{#!if rp+=18 | |
| 1681 | }}}}}} | |
| 1682 | ||
| 1683 | ||
| 1684 | {{{#!if !ps | |
| 1588 | }}}}}}{{{#!if rp+=18 | |
| 1589 | }}}}}}{{{#!if !ps | |
| 1685 | 1590 | {{{#!if (rp>9)&&(rb.substr(rp-9,9)=="000000000") |
| 1686 | 1591 | {{{#!if this.rb=rb.substr(0,rp-9), rp-=9 |
| 1687 | }}}}}} | |
| 1688 | {{{#!if (rp>4)&&(rb.substr(rp-4,4)=="0000") | |
| 1592 | }}}}}}{{{#!if (rp>4)&&(rb.substr(rp-4,4)=="0000") | |
| 1689 | 1593 | {{{#!if this.rb=rb.substr(0,rp-4), rp-=4 |
| 1690 | }}}}}} | |
| 1691 | {{{#!if (rp>2)&&(rb.substr(rp-2,2)=="00") | |
| 1594 | }}}}}}{{{#!if (rp>2)&&(rb.substr(rp-2,2)=="00") | |
| 1692 | 1595 | {{{#!if this.rb=rb.substr(0,rp-2), rp-=2 |
| 1693 | }}}}}} | |
| 1694 | {{{#!if (rp>2)&&(rb.substr(rp-2,2)=="00") | |
| 1596 | }}}}}}{{{#!if (rp>2)&&(rb.substr(rp-2,2)=="00") | |
| 1695 | 1597 | {{{#!if this.rb=rb.substr(0,rp-2), rp-=2 |
| 1696 | }}}}}} | |
| 1697 | {{{#!if (rp>1)&&(rb.substr(rp-1,1)=="0") | |
| 1598 | }}}}}}{{{#!if (rp>1)&&(rb.substr(rp-1,1)=="0") | |
| 1698 | 1599 | {{{#!if this.rb=rb.substr(0,rp-1), rp-=1 |
| 1699 | }}}}}}}}} | |
| 1700 | }}} | |
| 1701 | ||
| 1702 | ||
| 1703 | {{{#!if ts | |
| 1600 | }}}}}}}}}}}}{{{#!if ts | |
| 1704 | 1601 | {{{#!if rp=39 |
| 1705 | 1602 | }}}}}} |
| 1706 | ||
| 1707 | ||
| 1708 | ||
| 1709 | rb 정리를 이것으로 종료합니다. | |
| 1710 | ||
| 1711 | ##== 오류 코드 == | |
| 1712 | error | |
| 1713 | 1 : 오버플로 | |
| 1714 | 2 : 언더플로 (사용하지 않음) | |
| 1715 | 3 : 0으로 나눌 수 없음 | |
| 1716 | 4 : 0으로 연산할 수 없음 (사용하지 않음) | |
| 1717 | 5 : 이중 소수점 표기 | |
| 1718 | 6 : 소수점 윗부분 오류 | |
| 1719 | 7 : 소수점 아랫부분 오류 | |
| 1720 | ||
| 1721 | warning | |
| 1722 | 1 : 소수점 아래 입력한 자릿수가 너무 많음 | |
| 1723 | 2 : 소수점 아래 표시하는 자릿수를 제한함 (나눗셈) | |
| 1724 | 3 : 소수점 아래 표시되는 자릿수가 너무 많음 (사용하지 않음) | |
| 1725 | ||
| 1726 | 1603 | ##== 아래 출력 변수 설명 == |
| 1727 | 1604 | '''sa''' : searching a (logical); '''sb''' : searching b (logical); '''sf''' : searching f (logical); |
| 1728 | 1605 | '''ps''' : pass (logical); |
| ... | ... | |
| 1732 | 1609 | '''tm''' : temporary string, or transaction message (string); '''tn''' : temporary string 2 (string); |
| 1733 | 1610 | '''tx''' : temporary value 1 (integer); '''ty''' : temporary value 2 (integer); '''tz''' : temporary value 3 (integer); |
| 1734 | 1611 | '''comment''' : comment (string); |
| 1735 | ru는 계산결과에서 소수점 위 자리이므로, dot(.)이 나오지 않습니다. | |
| 1736 | 1612 | ##== 출력 부분 == |
| 1737 | 1613 | ##=== 계산값 출력 (정상 출력) === |
| 1738 | 1614 | }}}{{{#!wiki style="font-weight: 300; font-size: 17.5px;" |
| ... | ... | |
| 1832 | 1708 | }}}}}}.@ms@}}}{{{#!if ps |
| 1833 | 1709 | )}}} }}}{{{#!if (bs.length>=20)||(as.length+bs.length>=30) |
| 1834 | 1710 | [br]}}}= @ns@{{{#!if comment="rs 표시 부분", ms=rs, tx=6%(+md), tm="", tn="", (+md==3)||(+md==4) |
| 1835 | {{{#!if | |
| 1711 | {{{#!if tn=ms, ty=ms.length, tz=(ty-tx<0)?ty:(ty+tx)%(+md), ty=(ty+tx)/(+md), tz>0 | |
| 1836 | 1712 | {{{#!if tm+=tn.substr(0,tz), tn=tn.substr(tz), ty>0 |
| 1837 | 1713 | {{{#!if tm+="," |
| 1838 | 1714 | }}}}}}}}}{{{#!if ty-->0 |
| ... | ... | |
| 1848 | 1724 | }}}}}}{{{#!if ty-->0 |
| 1849 | 1725 | {{{#!if tm+=","+tn.substr(0,+md), tn=tn.substr(+md) |
| 1850 | 1726 | }}}}}}{{{#!if ms=tm |
| 1851 | }}}}}}@ms@{{{#!if | |
| 1727 | }}}}}}@ms@{{{#!if ms=((rs!="")&&(18%(+md)==0))?",":"" | |
| 1852 | 1728 | }}}@ms@{{{#!if comment="ru 표시 부분", ms=ru, tm="", tn="", (+md==3)||(+md==4) |
| 1853 | 1729 | {{{#!if tn=ms, ty=ms.length, tz=ty%(+md), ty=ty/(+md), tz>0 |
| 1854 | 1730 | {{{#!if tm=tn.substr(0,tz), tn=tn.substr(tz) |
| ... | ... | |
| 1882 | 1758 | {{{#!if tm+=" "+tn.substr(0,+md), tn=tn.substr(+md) |
| 1883 | 1759 | }}}}}}{{{#!if ms=tm |
| 1884 | 1760 | }}}}}}@ms@{{{#!if ri!="" |
| 1885 | {{{#!if | |
| 1761 | {{{#!if ms=(18%(+md)==0)?" ":"" | |
| 1886 | 1762 | }}}@ms@{{{#!if comment="ri 표시 부분", ms=ri, tm="", tn="", (+md==3)||(+md==4) |
| 1887 | {{{#!if | |
| 1763 | {{{#!if tn=ms, ty=ms.length, ty=(ty+tx-1)/(+md), tm=(tx>0)?tn.substr(0,tx):tn.substr(0,+md), tn=(tx>0)?tn.substr(tx):tn.substr(+md), ty>0 | |
| 1888 | 1764 | {{{#!if tm+=" " |
| 1889 | 1765 | }}}}}}{{{#!if ty-->0 |
| 1890 | 1766 | {{{#!if tm+=tn.substr(0,+md), tn=tn.substr(+md) |
| ... | ... |