<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="nb">
	<id>https://www.wikisida.no/index.php?action=history&amp;feed=atom&amp;title=Mal%3APrecision</id>
	<title>Mal:Precision - Sideversjonshistorikk</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikisida.no/index.php?action=history&amp;feed=atom&amp;title=Mal%3APrecision"/>
	<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Mal:Precision&amp;action=history"/>
	<updated>2026-04-08T20:50:27Z</updated>
	<subtitle>Versjonshistorikk for denne siden på wikien</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://www.wikisida.no/index.php?title=Mal:Precision&amp;diff=2447&amp;oldid=prev</id>
		<title>Wikisida: Én sideversjon ble importert</title>
		<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Mal:Precision&amp;diff=2447&amp;oldid=prev"/>
		<updated>2026-02-08T18:35:54Z</updated>

		<summary type="html">&lt;p&gt;Én sideversjon ble importert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;nb&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Eldre sideversjon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Sideversjonen fra 8. feb. 2026 kl. 18:35&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;nb&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Ingen forskjell)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key c1wiki:diff:1.41:old-2446:rev-2447 --&gt;
&lt;/table&gt;</summary>
		<author><name>Wikisida</name></author>
	</entry>
	<entry>
		<id>https://www.wikisida.no/index.php?title=Mal:Precision&amp;diff=2446&amp;oldid=prev</id>
		<title>nb&gt;Helt: Ny side: &lt;noinclude&gt;&lt;!-- --============================================================ -- Getprecision - Count decimal digits or in fraction (2+1/3) --===========================================...</title>
		<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Mal:Precision&amp;diff=2446&amp;oldid=prev"/>
		<updated>2012-10-27T08:25:06Z</updated>

		<summary type="html">&lt;p&gt;Ny side: &amp;lt;noinclude&amp;gt;&amp;lt;!-- --============================================================ -- Getprecision - Count decimal digits or in fraction (2+1/3) --===========================================...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny side&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
--============================================================&lt;br /&gt;
-- Getprecision - Count decimal digits or in fraction (2+1/3)&lt;br /&gt;
--============================================================&lt;br /&gt;
--                          (see NOTES at bottom)&lt;br /&gt;
--&amp;gt;&amp;lt;/noinclude&amp;gt;{{&lt;br /&gt;
#expr: ( 0 {{&lt;br /&gt;
#ifexpr: {{{1|0.0000}}}0={{{1|0.0000}}} |&amp;lt;!--see NOTE Z7--&amp;gt;&lt;br /&gt;
-1 +  &amp;lt;noinclude&amp;gt;&amp;lt;!--see NOTE S5--&amp;gt;&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{#switch: x{{{1|0.0000}}}&lt;br /&gt;
  |{{padleft:|6|x{{{1}}}}}=5&lt;br /&gt;
  |{{padleft:|5|x{{{1}}}}}=4&lt;br /&gt;
  |{{padleft:|7|x{{{1|0.0000}}}}}=6&lt;br /&gt;
  |{{padleft:|4|x{{{1}}}}}=3&lt;br /&gt;
  |{{padleft:|8|x{{{1}}}}}=7&lt;br /&gt;
  |{{padleft:|9|x{{{1}}}}}=8&lt;br /&gt;
  |{{padleft:|10|x{{{1}}}}}=9&lt;br /&gt;
  |{{padleft:|11|x{{{1}}}}}=10&lt;br /&gt;
  |{{padleft:|2|x{{{1}}}}}=1 &amp;lt;!--for &amp;quot;0&amp;quot;--&amp;gt;&lt;br /&gt;
  |{{padleft:|12|x{{{1}}}}}=11&lt;br /&gt;
  |{{padleft:|13|x{{{1}}}}}=12&lt;br /&gt;
  |{{padleft:|14|x{{{1}}}}}=13&lt;br /&gt;
  |{{padleft:|15|x{{{1}}}}}=14&lt;br /&gt;
  |{{padleft:|16|x{{{1}}}}}=15&lt;br /&gt;
  |{{padleft:|17|x{{{1}}}}}=16&lt;br /&gt;
  |{{padleft:|18|x{{{1}}}}}=17&lt;br /&gt;
  |{{padleft:|19|x{{{1}}}}}=18&lt;br /&gt;
  |{{padleft:|20|x{{{1}}}}}=19&lt;br /&gt;
  |{{padleft:|21|x{{{1}}}}}=20&lt;br /&gt;
  |{{padleft:|3|x{{{1}}}}}=2&lt;br /&gt;
  |{{padleft:|22|x{{{1}}}}}=21&lt;br /&gt;
  |{{padleft:|23|x{{{1}}}}}=22&lt;br /&gt;
  |{{padleft:|24|x{{{1}}}}}=23&lt;br /&gt;
  |{{padleft:|25|x{{{1}}}}}=24&lt;br /&gt;
  |{{padleft:|26|x{{{1}}}}}=25&lt;br /&gt;
  |{{padleft:|27|x{{{1}}}}}=26&lt;br /&gt;
  |{{padleft:|28|x{{{1}}}}}=27&lt;br /&gt;
  |{{padleft:|29|x{{{1}}}}}=28&lt;br /&gt;
  |{{padleft:|30|x{{{1}}}}}=29&lt;br /&gt;
  |{{padleft:|31|x{{{1}}}}}=30&lt;br /&gt;
  |{{padleft:|32|x{{{1}}}}}=31&lt;br /&gt;
  |{{padleft:|33|x{{{1}}}}}=32&lt;br /&gt;
  |{{padleft:|34|x{{{1}}}}}=33&lt;br /&gt;
  |{{padleft:|35|x{{{1}}}}}=34&lt;br /&gt;
  |{{padleft:|36|x{{{1}}}}}=35&lt;br /&gt;
  |{{padleft:|37|x{{{1}}}}}=36&lt;br /&gt;
  |{{padleft:|38|x{{{1}}}}}=37&lt;br /&gt;
  |{{padleft:|39|x{{{1}}}}}=38&lt;br /&gt;
  |{{padleft:|40|x{{{1}}}}}=39&lt;br /&gt;
  |{{padleft:|41|x{{{1}}}}}=40&lt;br /&gt;
  |#default = 41&lt;br /&gt;
  }} - floor(&lt;br /&gt;
    ln (floor( abs({{{1|0}}}) )+0.99 )/ln10 ) - 1&lt;br /&gt;
    {{#ifexpr: floor(abs({{{1|0}}}) )=0 |-1}}&lt;br /&gt;
    {{#ifeq: {{{1|0.0000}}}x|0x| + 1}}{{&lt;br /&gt;
    #ifexpr: {{{1|500}}}&amp;lt;0| - 1}}&amp;lt;!--For minus sign--&amp;gt;&lt;br /&gt;
  |&amp;lt;noinclude&amp;gt;&amp;lt;!--else for integers--&amp;gt;&amp;lt;/noinclude&amp;gt;{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/10)*10|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/100)*100|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E3)*1E3|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E4)*1E4|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E5)*1E5|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E6)*1E6|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E7)*1E7|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E8)*1E8|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E9)*1E9|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E10)*1E10|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E11)*1E11|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E12)*1E12|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E13)*1E13|-1}}{{&lt;br /&gt;
    #ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E14)*1E14|-1&lt;br /&gt;
  }}}}&amp;lt;noinclude&amp;gt;&amp;lt;!--endif {1}0={1}&lt;br /&gt;
--------------------------------------------------------&lt;br /&gt;
  Check for fraction &amp;quot;/&amp;quot; to use logn of denominator, by&lt;br /&gt;
  clearing prior count: (..prior..)*0 + (logn denom / logn 10).&lt;br /&gt;
  (see NOTE A1). The whole expression ends with close &amp;quot;)&amp;quot;.&lt;br /&gt;
  --&amp;gt;&amp;lt;/noinclude&amp;gt;{{&lt;br /&gt;
  #if: {{#titleparts:{{{1|6+3~8}}}|1|2}}| )*0 + (&lt;br /&gt;
    (ln {{#titleparts:{{{1|6+3/8}}}|1|2}} / ln10)&lt;br /&gt;
  }}&amp;lt;noinclude&amp;gt;&amp;lt;!--endif fraction&lt;br /&gt;
  --&amp;gt;&amp;lt;/noinclude&amp;gt; ) }}&amp;lt;noinclude&amp;gt;&amp;lt;!--endexpr# (close paren.)&lt;br /&gt;
--&lt;br /&gt;
--------------------------------------------------------------&lt;br /&gt;
--NOTES:&lt;br /&gt;
--    [ These comments are skipped by &amp;lt;noinclude&amp;gt; and not send&lt;br /&gt;
--      inside formatted Internet pages, only during edit. ]&lt;br /&gt;
--&lt;br /&gt;
--NOTE A1: This template determines the precision of decimals&lt;br /&gt;
--     by counting the length of the numeric string (in a&lt;br /&gt;
--     #switch comparing lengths of padded strings), then&lt;br /&gt;
--     subtracting integer length, minus the decimal point,&lt;br /&gt;
--     and minus 1 if negative. For integers, 1 place is&lt;br /&gt;
--     subtracted for each trailing 0 on the integer.&lt;br /&gt;
--     For fractions, any prior count is cleared x 0, then&lt;br /&gt;
--     size is logarithm of denominator divided by logn 10:&lt;br /&gt;
--     (..prior...)*0 + floor(logn denom / logn 10 - .01) + 1.&lt;br /&gt;
--&lt;br /&gt;
--NOTE D2: The check, for whole integers, compares the amount&lt;br /&gt;
--     versus appending &amp;quot;0&amp;quot; at the end: when the amount is a&lt;br /&gt;
--     decimal, then the value is unchanged by appending 0 at&lt;br /&gt;
--     the end: so 5.23 = 5.230 is true, whereas for whole&lt;br /&gt;
--     integers, it would be: 5 = 50 as false, due to values&lt;br /&gt;
--     becoming n*10 for integer n. So, for integer n, the&lt;br /&gt;
--     check rejects: n = n0 as false; hence n is integer.&lt;br /&gt;
--&lt;br /&gt;
--NOTE M3: The magnitude of the integer portion is calculated&lt;br /&gt;
--     by logarithm of the floor of absolute value (divided by&lt;br /&gt;
--     [[natural logarithm]] of 10 to adjust for e=2.71828*),&lt;br /&gt;
--     as: ln (floor( abs({{{1|-0.050067}}}) )+0.99 )/ln10&lt;br /&gt;
--     Function floor(x) trims the decimal part, to leave the&lt;br /&gt;
--     whole count: 0-9 yield 0, 10-19 as 1, 1000-1999 as 3.&lt;br /&gt;
--     The abs(x) avoids floor of negatives, floor(-0.1)= -1,&lt;br /&gt;
--     hence using abs(x) ensures -0.1 floors to 0 not -1.&lt;br /&gt;
--     Near zero, the +0.99 avoids invalid log of 0, but does&lt;br /&gt;
--     not round-up any decimals, already floored as nnn.00.&lt;br /&gt;
--     Complexity is 6 operations: floor of abs( {1} ) +0.99&lt;br /&gt;
--     then logn div logn10, then floor that logarithm ratio.&lt;br /&gt;
--     Decimals -1 &amp;lt; x &amp;lt; 1 yield -1, avoiding log 0.001 = -3.&lt;br /&gt;
--&lt;br /&gt;
--NOTE N4: Nesting of if-else and nested templates is kept to&lt;br /&gt;
--     a minimum, due to the MediaWiki 1.6 limit of 40 levels&lt;br /&gt;
--     of if-logic for all nested templates used together.&lt;br /&gt;
--     Template {ordomag} was omitted to avoid 2 more levels&lt;br /&gt;
--     of nested templates. Template {Precision} had 8 levels,&lt;br /&gt;
--     and this template was trimmed to only 5 levels.&lt;br /&gt;
--&lt;br /&gt;
--NOTE S5: The #switch is run with &amp;quot;x&amp;quot; prepended in front of&lt;br /&gt;
--     the amount, otherwise a #switch will compare as numeric&lt;br /&gt;
--     where 2 would match &amp;quot;2.0&amp;quot; even though &amp;quot;2&amp;quot; is length 1.&lt;br /&gt;
--     So &amp;quot;x2&amp;quot; won&amp;#039;t match &amp;quot;x2.0&amp;quot; in non-numeric comparison.&lt;br /&gt;
--     The #switch will exit on the first match, so smaller&lt;br /&gt;
--     lengths are compared first, to avoid extra comparisons&lt;br /&gt;
--     for more rare, longer numeric strings up to 41 long.&lt;br /&gt;
--&lt;br /&gt;
--NOTE W6: The check for integers with whole end-zeroes uses&lt;br /&gt;
--     typical n=n/10*10, for each power of 10, where whole&lt;br /&gt;
--     millions match: {{#ifexpr: {1}=floor( {1}/1E6 )*1E6| }}&lt;br /&gt;
--     Previously, {Precision} had tried to use &amp;quot;round&amp;quot; to&lt;br /&gt;
--     detect end-zeroes but &amp;quot;round&amp;quot; loses precision at -5,&lt;br /&gt;
--     so, n00000 round -5 differs from n00000 slightly, and&lt;br /&gt;
--     comparisons to exact rounded amounts failed to match&lt;br /&gt;
--     some numbers when 6 or more zeroes &amp;quot;n000000&amp;quot;.&lt;br /&gt;
--&lt;br /&gt;
--NOTE Z7: The check on zero for any .00000 compares adding 1&lt;br /&gt;
--     to the amount, versus appending &amp;quot;1&amp;quot; at the end: if the&lt;br /&gt;
--     amount is a decimal, then adding 1 will be larger than&lt;br /&gt;
--     appending 1 at the end: 0.00 + 1 &amp;gt; 0.001, whereas for&lt;br /&gt;
--     whole zero, it would be: 0+1 &amp;gt; 01 as false, due to the&lt;br /&gt;
--     value being the same. So, for integer 0, the check&lt;br /&gt;
--     rejects: 0+1 &amp;gt; 01 as false; hence whole 0 is integer.&lt;br /&gt;
--&lt;br /&gt;
-- WARNING: *** DO NOT DELETE COMMENTS FROM THIS TEMPLATE ***&lt;br /&gt;
--      Unless these comments are readily available, people&lt;br /&gt;
--      might tinker with the coding (or rename templates),&lt;br /&gt;
--      in hopes to clarify operation because these comments&lt;br /&gt;
--      were not nearby to explain the issues. Having these&lt;br /&gt;
--      comments only on a doc-page increases the danger of&lt;br /&gt;
--      explanations no longer matching the current coding.&lt;br /&gt;
--      UPDATE these comments to match changes to the template.&lt;br /&gt;
--      UPDATE the HISTORY during major changes (not typos).&lt;br /&gt;
--&lt;br /&gt;
--------------------------------------------------------------&lt;br /&gt;
--HISTORY:&lt;br /&gt;
--15Aug10 Created to get precision even if large or negative.&lt;br /&gt;
--15Aug10 Put NOTES comments to explain template coding.&lt;br /&gt;
--15Aug10 Put HISTORY comments to log major changes.&lt;br /&gt;
--18Aug10 Fixed to handle zero: 0 as 0, 0.000 as 3, etc.&lt;br /&gt;
--04Sep10 Fixed to handle decimals between 0~1 (by round 0).&lt;br /&gt;
--04Sep10 Updated NOTES to explain the check appending 0 or 1.&lt;br /&gt;
--03Jan11 Fix integer end-zeroes: 50 as -1, 500 as -2, 5000 -3.&lt;br /&gt;
--03Jan11 Omit {Order of Magnitude} for 2 levels less nesting.&lt;br /&gt;
--03Jan11 Omit {Str_len} for 8 fewer levels of 40-nest limit.&lt;br /&gt;
--03Jan11 Put &amp;quot;noinclude&amp;quot; around all inter-line HTML comments.&lt;br /&gt;
--03Jan11 Allow fraction &amp;quot;/&amp;quot;: floor(ln denom/ln 10 -.01)+1.&lt;br /&gt;
--08Feb11 Fixed to not count minus sign on negative integers.&lt;br /&gt;
--08Feb11 Extended to handle integers with 14 end-zeroes &amp;quot;0&amp;quot;.&lt;br /&gt;
--08Feb11 Ordered length-search by most-likely (rarely 1 or 2).&lt;br /&gt;
--10Feb11 Re-added NOTES/HISTORY to explain logic &amp;amp; changes.&lt;br /&gt;
--22Jun11 Move to Precision: no need to keep all three.&lt;br /&gt;
--22Jun11 No rounding up for fractions (i.e. ln denom/ln 10)&lt;br /&gt;
--&lt;br /&gt;
--&amp;gt;{{documentation}}&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>nb&gt;Helt</name></author>
	</entry>
</feed>