?????????? ??????????????
This template rounds to a fraction. It takes two parameters.
- the number to be rounded (any real number)
- the denominator to be rounded to (positive integer)
Fractions are expressed in the simplest terms.
The template calls
{{
gcd
}} and
{{
rndfrac/out
}}.
Main template
{{
rndfrac
}}
{{#ifexpr: ( {{{2}}} - 1 ) round 0 = abs( {{{2}}} - 1 )
| {{#ifexpr: {{{1}}} * {{{2}}} round 0
<
0
|?
}}{{
formatnum:
{{
rndfrac
/{{{
out
|
out
}}}
|
{{#
expr:
floor
(
(
abs
{{{
1
}}}
*
{{{
2
}}}
round
0
)
/
{{{
2
}}}
)
}}
|
{{#
expr:
(
abs
{{{
1
}}}
*
{{{
2
}}}
round
0
)
mod
{{{
2
}}}
}}
|
{{{
2
}}}
|
{{
gcd
|
{{#
expr:
(
abs
{{{
1
}}}
*
{{{
2
}}}
round
0
)
mod
{{{
2
}}}
}}
|
{{{
2
}}}
}}
}}
}}
|
{{
color
|
red
|
This
fractional
rounding
function
only
accepts
positive
intergers
as
the
denominator
.
}}
}}
Sub-template
{{
rndfrac/out
}}
{{#ifeq: {{{2}}} | 0
| {{{1}}}
|
<
span
class
=
"frac nowrap"
>
{{#ifexpr: {{{1}}} > 0
| {{{1}}}
<
sup
>
 
</
sup
>
}}{{#iferror: {{#expr: 1/{{{4}}} }}
|
<
sup
>
{{{2}}}
</
sup
>
?
<
sub
>
{{{3}}}
</
sub
>
|
<
sup
>
{{#expr: {{{2}}} / {{{4}}} }}
</
sup
>
?
<
sub
>
{{#expr: {{{3}}} / {{{4}}} }}
</
sub
>
}}
</
span
>
}}
{{
rnd
}}
{{
rndnear
}}
{{
dec to frac
}}