Zeile 1: |
Zeile 1: |
| <noinclude> | | <noinclude> |
− | Dies ist die Vorlage „Preis“. | + | Dies ist die Vorlage „PreisKurz“. Sie wandelt eine Zahl in einen Preis um, dem die passende Währungseinheit (T/L/S) angehangen wird. Beispiel: |
| + | 37 → {{PreisKurz| 37 }} |
| + | Dabei gelten folgende Regeln: |
| + | * Die zu wandelnde Zahl ist die kleineste Währungseinheit = Telare |
| + | * Die zu wandelnde Zahl hat keine Nachkommastellen und keine Tausender-Trennpunkte (ganze, unformatierte Zahl) |
| + | * Unter einem Wert von 100 werden Telare zurückgegeben |
| + | * Ab einem Wert von 100 (unter 10.000) werden Lunare zurückgegeben |
| + | * Ab einem Wert von 10.000 werden Solare zurückgegeben |
| + | Für die Anzeige mit ausgeschriebenen Währungseinheiten (Telare, Lunare, Solare) siehe: [[:Vorlage:PreisLang]]. |
| + | |
| Sie sollte im folgenden Format genutzt werden: | | Sie sollte im folgenden Format genutzt werden: |
| <pre> | | <pre> |
− | {{Preis | + | {{PreisKurz|<Wert>|<Nachkommastellen>}} |
− | }} | |
| </pre> | | </pre> |
| + | 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: [http://www.mediawiki.org/wiki/Help:Extension:ParserFunctions/de#Runden mediawiki.org: Runden]). Wird der zweite Parameter nicht angegeben, wird auch nicht gerundet (es entstehen dann mitunter einige Nachkommastellen). |
| + | |
| + | ==Beispiele== |
| + | {| class="wikitable oben" |
| + | ! Eingangswert !! Ergebnis !! Kommentar |
| + | |- |
| + | | <nowiki>{{PreisKurz| 37 }}</nowiki> || {{PreisKurz| 37 }} || 37 Telare rein |
| + | → 37 Telare raus |
| + | |- |
| + | | <nowiki>{{PreisKurz| 37 | 1 }}</nowiki> || {{PreisKurz| 37 | 1 }} || 37 Telare auf eine Nachkommastelle runden |
| + | → dasselbe Ergebnis (es entsteht ja kein Bruch) |
| + | |- |
| + | | <nowiki>{{PreisKurz| 37 | -1 }}</nowiki> || {{PreisKurz| 37 | -1 }} || 37 Telare auf ganze 10er runden (-1) |
| + | → Jetzt ist es etwas mehr geworden |
| + | |- |
| + | | <nowiki>{{PreisKurz| 127 | 0}}</nowiki> || {{PreisKurz| 127 | 0}} || 127 Telare rein, auf ganze Zahl runden (0) |
| + | → Ab 100 Telaren wird in Lunare gewandelt - und die werden hier auf eine ganze Zahl gerundet |
| + | |- |
| + | | <nowiki>{{PreisKurz| 127 | 1}}</nowiki> || {{PreisKurz| 127 | 1}} || 127 Telare rein, auf eine Nachkommastelle runden (1) |
| + | → Es werden wieder Lunare erzeugt, diesmal aber mit einer Zahl hinter dem Komma |
| + | |- |
| + | | <nowiki>{{PreisKurz| 127 }}</nowiki> || {{PreisKurz| 127 }} || 127 Telare rein, nicht runden |
| + | → Es werden wieder Lunare mit allen Nachkommastellen erzeugt |
| + | |- |
| + | | <nowiki>{{PreisKurz| 1307 | 1}}</nowiki> || {{PreisKurz| 1307 | 1}} || 1.307 Telare rein, auf eine Nachkommastelle runden (1) |
| + | → Lunare mit einer gerundeten Zahl hinter dem Komma |
| + | |- |
| + | | <nowiki>{{PreisKurz| 14007 | 0 }}</nowiki> || {{PreisKurz| 14007 | 0 }} || 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. |
| + | |- |
| + | | <nowiki>{{PreisKurz| 150077 | 2 }}</nowiki> || {{PreisKurz| 150077 | 2 }} || 150.007 Telare rein, zwei Nachkommastellen (2) |
| + | → Wieder enstehen Solare, und dank der beiden Nachkommastellen ist noch ein Lunar dabei. |
| + | |- |
| + | | <nowiki>{{PreisKurz| 150077 }}</nowiki> || {{PreisKurz| 150077 }} || 150.007 Telare rein, keine Angabe zu Nachkommastellen |
| + | → Solare mit vielen Nachkommastellen. |
| + | |} |
| + | |
| Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen. | | Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen. |
− | </noinclude><includeonly></includeonly> | + | </noinclude><includeonly><!-- START |
| + | --><!-- Ist es überhaupt eine Zahl? |
| + | -->{{#iferror:<!-- |
| + | --> {{#expr: {{{1|}}}+1 }}<!-- |
| + | --> | {{#vardefine: PreisKurz | FEHLER: Keine Zahl }}<!-- |
| + | --> |<!-- Jetzt wird auf eine ganze Zahl gerundet |
| + | |
| + | --> {{#vardefine: PreisRoh | {{#expr: {{{1|}}}/1 round 0 }} }}<!-- |
| + | |
| + | --><!-- Ab hier wird die Währungseinheit ermittelt (<100 = Telar, <10000 = Lunar, sonst Solar) |
| + | |
| + | --> {{#ifexpr: {{#var:PreisRoh}} < 100<!-- |
| + | --> | {{#vardefine: PreisKurz<!-- |
| + | --> |{{#expr: {{#var:PreisRoh}}/1 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!-- |
| + | --> }}<!-- |
| + | --> {{#vardefine: Einheit |T}}<!-- |
| + | |
| + | --> | {{#ifexpr: {{#var:PreisRoh}} < 10000<!-- |
| + | --> | {{#vardefine: PreisKurz<!-- |
| + | --> |{{#expr: {{#var:PreisRoh}}/100 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!-- |
| + | --> }}<!-- |
| + | --> {{#vardefine: Einheit |L}}<!-- |
| + | |
| + | --> | {{#vardefine: PreisKurz<!-- |
| + | --> |{{#expr: {{#var:PreisRoh}}/10000 {{#if:{{{2|}}}|round {{{2}}}|}} }}<!-- |
| + | --> }}<!-- |
| + | --> {{#vardefine: Einheit |S}}<!-- |
| + | |
| + | --> }}<!-- |
| + | |
| + | --> }} |
| + | }}<!-- |
| + | --><!-- Das Ergebnis zurückgeben: |
| + | -->{{zahlenformat:{{#var:PreisKurz}}}} {{#var:Einheit}}<!-- |
| + | DEGUB-->{{#ifeq: debug | {{lc:{{{3|}}}}}<!-- |
| + | -->|<!-- |
| + | -->'''<nowiki>{{{1|}}}</nowiki>''' = {{{1|}}}<br /><!-- |
| + | -->'''<nowiki>{{#expr: {{{1|}}}/1 round 0 }}</nowiki>''' = {{#expr: {{{1|}}}/1 round 0 }}<br /><!-- |
| + | -->'''<nowiki>{{#var:PreisRoh}}</nowiki>''' = {{#var:PreisRoh}}<br /><!-- |
| + | -->'''<nowiki>{{#var:PreisKurz}}</nowiki>''' = {{#var:PreisKurz}}<br /><!-- |
| + | -->|}}<!-- ENDE |
| + | --></includeonly> |