Difference between revisions of "Template:Hands/numdisp"
Jump to navigation
Jump to search
imported>Wikid77 (fixed to allow prefix "−" as extra 6 long, tested in Template:Convert/numdisp/sandbox) |
imported>Wikid77 (fixed to pass negative sum without padding extra "0") |
||
| Line 8: | Line 8: | ||
|{{Convert/numdisp/frac | |{{Convert/numdisp/frac | ||
|{{{1|-1200-3/118}}}|{{#titleparts:{{{1|-1200-3/118}}}|1|1}}|{{#titleparts:{{{1|-1200-3/118}}}|1|2}}}}<!--split at "/" | |{{{1|-1200-3/118}}}|{{#titleparts:{{{1|-1200-3/118}}}|1|1}}|{{#titleparts:{{{1|-1200-3/118}}}|1|2}}}}<!--split at "/" | ||
| − | --else-->|{{#ifexpr:{{{1|-14000.00}}} < 0 | + | --else-->|{{#ifexpr:{{{1|-14000.00}}}*0 = 0 and {{{1|-14000.00}}} < 0 |
|<!--then re-build negative number (see NOTE Z4 below) | |<!--then re-build negative number (see NOTE Z4 below) | ||
-->{{formatnum: | -->{{formatnum: | ||
| − | {{padright:−<!--&minus-->{{#expr:-{{{1|-14000.00}}} }}<!--endexpr | + | {{padright:−<!--&minus-->{{#expr:-( {{{1|-14000.00}}} ) }}<!--endexpr |
--put decimal if needed-->{{ | --put decimal if needed-->{{ | ||
#ifexpr:{{{1|-14000.00}}}0={{{1|-14000.00}}} | #ifexpr:{{{1|-14000.00}}}0={{{1|-14000.00}}} | ||
| Line 77: | Line 77: | ||
--17Feb11 Used #ifexpr:{1}0={1} and floor({1})={1}, to put "." | --17Feb11 Used #ifexpr:{1}0={1} and floor({1})={1}, to put "." | ||
--30Nov13 Fixed to allow prefix "−" as extra 6 long. | --30Nov13 Fixed to allow prefix "−" as extra 6 long. | ||
| + | --07Jan14 Fixed to pass negative sum without padding "0". | ||
-- | -- | ||
** Add interwiki links to /doc subpage to avoid changes here ** | ** Add interwiki links to /doc subpage to avoid changes here ** | ||
Revision as of 12:05, 7 January 2014
−14,000.
The Template:Hands/numdisp processes a number, for display, by checking to display a fraction part (at "/"), else it just uses parser-function {{formatnum:{{{1|6000}}}}} to add commas, such as to show "6,000".
- Usage: {{hands/numdisp|6+3/8}} → Template:Convert/numdisp/frac
- {{hands/numdisp|-4-1/2}} → Template:Convert/numdisp/frac
- {{hands/numdisp|23500}} → 23,500
- {{hands/numdisp|2300+643/1250}} → Template:Convert/numdisp/frac
- {{hands/numdisp|−7.0}} → −7.
- {{hands/numdisp|14+6/ }} → Expression error: Unexpected < operator
Implementation
The check, for fraction parts, uses parser-function {{#titleparts:xx/xx|1|2}} to split a number at "/" (if any, as in: 6+3/8) and then checks if part 2 (the denominator, after the slash) contains a number, to trigger use of {{hands/numdisp/frac}}). Hence, the template uses:
- #if: {{#titleparts:{{{1|6+3/8}}}|1|2}}
That if-expression will be true if a denominator exists (such as "8" in 6+3/8).
See also
| The above documentation is transcluded from Template:Hands/numdisp/doc. (edit | history) Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages. Please add categories to the /doc subpage. Subpages of this template. |