Vorlage:PreisLang: Unterschied zwischen den Versionen

Aus Splitterwiki
Zur Navigation springen Zur Suche springen
(Bugfix)
Zeile 10: Zeile 10:
 
{{PreisLang|101}}
 
{{PreisLang|101}}
 
{{PreisLang|9999}}
 
{{PreisLang|9999}}
 +
{{PreisLang|9999|-1|debug}}
 
==Beispiele==
 
==Beispiele==
 
{| class="wikitable oben"
 
{| class="wikitable oben"
Zeile 49: Zeile 50:
 
   | {{#vardefine: PreisLang | FEHLER: Keine Zahl }}
 
   | {{#vardefine: PreisLang | FEHLER: Keine Zahl }}
 
   |<!-- Jetzt wird auf eine ganze Zahl gerundet
 
   |<!-- Jetzt wird auf eine ganze Zahl gerundet
  -->{{#vardefine: PreisRoh | {{#expr: {{{1|}}}/1 round 0 }} }}<!--
+
 
  -->{{#ifexpr: {{#var:PreisRoh}} < 100
+
--> {{#vardefine: PreisRoh | {{#expr: {{{1|}}}/1 round 0 }} }}<!--
      | {{#vardefine: PreisLang |{{#expr: {{#var:PreisRoh}}/1 {{#if:{{{2|}}}|round {{{2}}}|}} }}}}<!--
+
 
          -->{{#ifexpr: {{#var:PreisLang}} = 1 |{{#vardefine: Einheit |Telar}}|{{#vardefine: Einheit |Telare}}}}
+
--><!-- Ab hier wird die Währungseinheit ermittelt (<100 = Telar, <10000 = Lunar, sonst Solar)
      | {{#ifexpr: {{#var:PreisRoh}} < 10000
+
 
          | {{#vardefine: PreisLang |{{#expr: {{#var:PreisRoh}}/100 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!--
+
--> {{#ifexpr: {{#var:PreisRoh}} < 100<!--
          -->{{#ifexpr: {{#var:PreisLang}} = 1 |{{#vardefine: Einheit |Lunar}}|{{#vardefine: Einheit |Lunare}}}}<!--
+
-->    | {{#vardefine: PreisLang<!--
          -->}}
+
-->        |{{#expr: {{#var:PreisRoh}}/1 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!--
          | {{#vardefine: PreisLang |{{#expr: {{#var:PreisRoh}}/10000 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!--
+
-->        }}<!--
          -->{{#ifexpr: {{#var:PreisLang}} = 1 |{{#vardefine: Einheit |Solar}}|{{#vardefine: Einheit |Solare}}}}<!--
+
-->     {{#ifexpr: {{#var:PreisLang}} = 1<!--
          -->}}
+
-->        |{{#vardefine: Einheit |Telar}}<!--
          }}
+
-->        |{{#vardefine: Einheit |Telare}}<!--
      }}
+
-->        }}<!--
   }}<!-- Das Ergebnis zurückgeben:
+
 
 +
-->    | {{#ifexpr: {{#var:PreisRoh}} < 10000<!--
 +
-->      | {{#vardefine: PreisLang<!--
 +
-->          |{{#expr: {{#var:PreisRoh}}/100 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!--
 +
-->         }}<!--
 +
-->        {{#ifexpr: {{#var:PreisLang}} = 1<!--
 +
-->          |{{#vardefine: Einheit |Lunar}}<!--
 +
-->          |{{#vardefine: Einheit |Lunare}}<!--
 +
-->         }}<!--
 +
 
 +
-->      | {{#vardefine: PreisLang<!--
 +
-->          |{{#expr: {{#var:PreisRoh}}/10000 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!--
 +
-->         }}<!--
 +
-->        {{#ifexpr: {{#var:PreisLang}} = 1<!--
 +
-->          |{{#vardefine: Einheit |Solar}}<!--
 +
-->          |{{#vardefine: Einheit |Solare}}<!--
 +
-->          }}<!--
 +
 
 +
-->     }}<!--
 +
 
 +
-->    }}
 +
   }}<!-- -->
 +
<!-- Das Ergebnis zurückgeben:
 
-->{{zahlenformat:{{#var:PreisLang}}}} {{#var:Einheit}}<!--  
 
-->{{zahlenformat:{{#var:PreisLang}}}} {{#var:Einheit}}<!--  
 
DEGUB-->
 
DEGUB-->

Version vom 9. Juni 2014, 13:38 Uhr

Dies ist die Vorlage „PreisLang“. Sie wandelt einen numerischen Preis in Telaren um in einen anzeigbaren Wert mit Währungskürzel. Für ausgeschriebene Währungsnamen siehe: Vorlage:PreisKurz.

Sie sollte im folgenden Format genutzt werden:

{{PreisLang|<Wert>|<Nachkommastellen>}}

wobei der erste Parameter <Wert> (Pflichtparameter) der Preis in der kleinesten Währungseinheit ist (also der Preis in Telaren) und der zweite Parameter <Nachkommastellen> (optional) angibt, auf wieviele Stellen der Wert gerundet werden soll (siehe dazu auch: mediawiki.or: Runden). Wird der zweite Parameter nicht angegeben, wird auch nicht gerundet (es entstehen dann mitunter einige Nachkommastellen).


1 Lunar


1,01 Lunare


99,99 Lunare


100 Lunare {{{1|}}} = 9999

 {{#expr: {{{1|}}}/1 round 0 }} = 9999
{{#var:PreisRoh}} = 9999
{{#var:PreisLang}} = 100

Beispiele

Eingangswert Ergebnis Kommentar
{{PreisLang| 37 }}

37 Telare

37 Telare rein

→ 37 Telare raus

{{PreisLang| 37 | 1 }}

37 Telare

37 Telare auf eine Nachkommastelle runden

→ dasselbe Ergebnis (es entsteht ja kein Bruch)

{{PreisLang| 37 | -1 }}

40 Telare

37 Telare auf ganze 10er runden (-1)

→ Jetzt ist es etwas mehr geworden

{{PreisLang| 127 | 0}}

1 Lunar

127 Telare rein, auf ganze Zahl runden (0)

→ Ab 100 Telaren wird in Lunare gewandelt - und die werden hier auf eine ganze Zahl gerundet

{{PreisLang| 127 | 1}}

1,3 Lunare

127 Telare rein, auf eine Nachkommastelle runden (1)

→ Es werden wieder Lunare erzeugt, diesmal aber mit einer Zahl hinter dem Komma

{{PreisLang| 127 }}

1,27 Lunare

127 Telare rein, nicht runden

→ Es werden wieder Lunare mit allen Nachkommastellen erzeugt

{{PreisLang| 1307 | 1}}

13,1 Lunare

1.307 Telare rein, auf eine Nachkommastelle runden (1)

→ Lunare mit einer gerundeten Zahl hinter dem Komma

{{PreisLang| 14007 | 0 }}

1 Solar

14.007 Telare rein, auf ganze Zahl runden (0)

→ Diesmal enstehen Solare, da die Summe fünfstellig ist. Und ohne Nachkommastelle wird hier einiges weggerundet.

{{PreisLang| 150077 | 2 }}

15,01 Solare

150.007 Telare rein, zwei Nachkommastellen (2)

→ Wieder enstehen Solare, und dank der beiden Nachkommastellen ist noch ein Lunar dabei.

Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen.