Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:cachevariables

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:cachevariables [2022/05/14 11:34] – [Variablenbereich] lineflyerde:cachevariables [2022/11/25 11:59] (aktuell) – [Wertebereiche] Neue Syntax für Variablenbereiche lineflyer
Zeile 1: Zeile 1:
-FIXME **Diese Seite wurde noch nicht vollständig übersetzt. Bitte helfen Sie bei der Übersetzung.**\\ //(diesen Absatz entfernen, wenn die Übersetzung abgeschlossen wurde)// 
- 
 ====== Cache-Variablen ====== ====== Cache-Variablen ======
  
Zeile 43: Zeile 41:
 Der Text unter dem Variablenfeld zeigt eine Vorschau des Ergebnisses. Dies ist entweder das konkrete Ergebnis der Formel oder gibt Hinweise bzgl. Syntax-Fehlern oder fehlenden Werten. Der Text unter dem Variablenfeld zeigt eine Vorschau des Ergebnisses. Dies ist entweder das konkrete Ergebnis der Formel oder gibt Hinweise bzgl. Syntax-Fehlern oder fehlenden Werten.
  
-===== Formula syntax =====+===== Formelsyntax =====
  
-The value field of each variable can hold different types of values and also other variablesIt supports numerous mathematical operations as well as several (partly geocaching relatednumerical and string related functions as described below.+Das Wertefeld jeder Variable kann verschiedene Arten von Werten und auch andere Variablen enthaltenEs unterstützt vielfältige mathematische Operationen sowie einige (teilweise geocaching-bezogenenumerische und alphanumerische Funktionen, die im Folgenden beschrieben werden.
  
 <WRAP center round info 100%> <WRAP center round info 100%>
-Don't be afraid of the syntaxWhile it supports rather complex operationsit can also be used for simple and plain calculations as you are used to from any calculatorSome supported functions are probably for advanced users only.+Fürchte dich nicht vor der SyntaxSie unterstützt zwar auch relativ komplexe Operationen, can aber auch für einfache Kalkulationen genutzt werden, wie du sie von jedem Taschenrechner kennstEinige der Funktionen sind wahrscheinlich nur für fortgeschrittene Nutzer.
 </WRAP> </WRAP>
  
-The syntax will be explained in detail in the following sub-chapters +Die Syntax wird in den folgenden Unterkapiteln im Detail beschriebenAls erste Übersicht über die unterstützten Funktionenfindest du hier eine Liste von Beispielen:
-However as a quick overview about what is supportedyou will find a list of examples here:+
  
-  * ''2*2+3'' will evaluate to ''7'' +  * ''2*2+3'' ergibt ''7'' 
-  * ''2*(2+3)'' will evaluate to ''10'' +  * ''2*(2+3)'' ergibt ''10'' 
-  * ''3*sin(90)'' will evaluate to ''3''+  * ''3*sin(90)'' ergibt ''3''
  
-  * ''4+length('test')'' will evaluate to ''8'' +  * ''4+length('test')'' ergibt ''8'' 
-  * ''rot13('abc')'' will evaluate to ''nop'' +  * ''rot13('abc')'' ergibt ''nop'' 
-  * ''lettervalue('cache')'' will evaluate to ''20'' +  * ''lettervalue('cache')'' ergibt ''20'' 
-  * ''checksum(lettervalue('cache'))'' will evaluate to ''2''+  * ''checksum(lettervalue('cache'))'' ergibt ''2''
  
-  * ''A + A*2'' with ''A=3'' will evaluate to ''9'' +  * ''A + A*2'' with ''A=3'' ergibt ''9'' 
-  * ''AA(A+1)'' with ''A=3'' will evaluate to ''334'' +  * ''AA(A+1)'' with ''A=3'' ergibt ''334'' 
-  * ''$hello + 1'' with variable ''hello=24'' will evaluate to ''25'' +  * ''$hello + 1'' mit der Variable ''hello=24'' ergibt ''25'' 
-  * ''$hello(A+1)'' with ''A=3'' and ''hello=24'' will evaluate to ''244'' +  * ''$hello(A+1)'' mit ''A=3'' und ''hello=24'' ergibt ''244'' 
-  * ''${hello}8A'' with ''A=3'' and ''hello=24'' will evaluate to ''2483''+  * ''${hello}8A'' mit ''A=3'' und ''hello=24'' ergibt ''2483''
  
 +==== Typen von Variablen ====
  
 +Die Formelsyntax unterstützt drei Typen von Variablen.
 +Du kannst einfach drauf los schreiben, generell versucht die Formelberechnung die gegebenen Werte so gut wie möglich einzupassen.
  
-==== Value types ====+^ Typ ^ Beschreibung ^ Anwendung ^ Bedeutung ^ 
 +|Ganzzahlen (Integer) | Zahlen ohne Dezimalstellen | Nutze Zahlen | ''1234'', ''-3''
 +|Dezimalzahlen (Decimal) | Zahlen mit Dezimalstellen | Nutze Zahlen mit Punkt oder Komma | ''3.14'', ''-3.14'', ''3,14''
 +|Text (String) | Text | Umgebe Text mit ''%%'%%'' oder ''%%"%%''\\  Um die Symbole ''%%'...'%%'' oder ''%%"..."%%'' selbst zu nutzen, gib ''%%''%%'' oder ''%%""%%'' ein| ''%%'test'%%'', ''%%"test"%%''\\ ''"Er sagt ""ja""!"''|
  
-The formula syntax supports three types of values. 
-Typing is loose, in general formula evaluation will try to fit given values as best as possible. 
  
-^ Type ^ Description ^ Literal syntax ^ Examples ^ +==== Numerische Operatoren ====
-|Integer | Number without decimal places | Use digits | ''1234'', ''-3''+
-|Decimal | Number with decimal places | Use digits with decimal point or comma | ''3.14'', ''-3.14'', ''3,14''+
-|String | Text | Surround value with ''%%'%%'' or ''%%"%%''\\  To use the ''%%'...'%%'' or ''%%"..."%%'' their selves, type ''%%''%%'' or ''%%""%%''| ''%%'test'%%'', ''%%"test"%%''\\ ''"He said ""yes""!"''|+
  
 +Die folgenden numerischen Operationen werden unterstützt:
  
-==== Numeric operators ====+^ Operator ^ Funktion ^ Beispiel ^ 
 +|''+''|Addition|''2+4'' ergibt '' 6''
 +|''-''|Subtraktion\\ (oder eine Zahl negieren)|''6-4'' ergibt ''2''\\ ''-(5-2)'' ergibt ''-3''
 +|''*''|Multiplikation|''3*4'' ergibt ''12''
 +|''/''|Division|''12/3'' ergibt ''4''
 +|''%''|Modulo|''12%5'' ergibt ''2''
 +|''^''|Potenzieren|''3^3'' ergibt ''27''
 +|''!''|Faktorisieren|''4!'' ergibt ''24''|
  
-The following numeric operators are supported:+==== Vergleichende Operatoren und Bedingungen ====
  
-^ Operator ^ Function ^ Example ^ +Vergleichende Operatoren wie ''<'' or ''=='' können dazu verwendet werden, um zwei Werte miteinander zu vergleichen. Generell ergibt eine solche Operation den Wert ''1'', wenn der Vergleich wahr ist und den Wert ''0'', wenn der Vergleich falsch ist.
-|''+''|Addition|''2+4'' evaluates to '' 6''+
-|''-''|Subtraction\\ (or negating a number)|''6-4'' evaluates to ''2''\\ ''-(5-2)'' evaluates to ''-3''+
-|''*''|Multiplication|''3*4'' evaluates to ''12''+
-|''/''|Division|''12/3'' evaluates to ''4''+
-|''%''|Modulo|''12%5'' evaluates to ''2''+
-|''^''|Potentiate|''3^3'' evaluates to ''9''+
-|''!''|Factorize|''4!'' evaluates to ''24''|+
  
-==== Relational operators and conditions ====+Beispielsweise ergibt der Ausdruck ''3 < 4'' den Wert ''1''.
  
-Relational operators like ''<'' or ''=='' can be used to compare two values with each otherIn generalsuch an operation will return the value ''1'' if the comparison yields true and the value ''0'' if it yields false+Vergleichende Operatoren werden insbesondere in der ''if''-Funktion verwendetDieser Funktion berechnet ihren ersten Parameter. Wenn der Parameter wahr ist (bedeutet: Ergebnis ist >0 oder ein nicht leerer String) gibt die Funktion ihren zweiten Parameter zurück. Im anderen Fallund wenn sie einen dritten Parameter hat, wird dieser dritte Parameter zurückgegeben.
  
-For example, the expression ''3 < 4'' will compute to the value ''1''.+Die ''if''-Funktion akzeptiert jede Anzahl von Parametern und interpretiert diese in einer "if-then-if-then-if-then-...-else"-Kaskade.
  
-Relational operators are especially used in the ''if'' functionThis function evaluates its first parameterIf this parameter is true (meanshas a value > 0 or is a non-empty string) then it returns its second parameter. Elseand if it has a third parameterthe third parameter is returned.+Dies bedeutet, dass z.Bwenn die Funktion 5 Parameter hat: 
 +* Wenn der erste Parameter wahr istwird der zweite zurückgegeben 
 +* Andernfallswenn der dritte Parameter war ist, wird der vierte Parameter zurückgegeben. 
 +* Andernfalls wird der fünfte Parameter zurückgegeben.
  
-The ''if'' function accepts any number of parameters and interprets them in an "if-then-if-then-if-then-...-else" cascade+Beispielsweise ergibt ''if(A==5;50;A==4;40;30)'' den Wert ''50'' wenn ''A=5'' ist, ''40'' wenn ''A=4'' ist und ''30'' für jeden anderen Wert von ''A''.
  
-This means, that if the function was given 5 parameters then: 
-* If the first parameter is true, then the second is returned 
-* Else if the third parameter is true, then the fourth parameter is returned 
-* Else the fifth parameter is returned 
  
-For example ''if(A==5;50;A==4;40;30)'' will evaluate to ''50'' if ''A=50'', to ''40'' if ''A=4'' and to ''30'' for any other value of ''A''.+^ Operator ^ Bedeutung ^ Beispiel ^ 
 +|''==''| Prüft Gleichheit | ''2==2'' ergibt ''1''(=wahr)
 +''<>'' | Prüft Ungleichheit | ''3<>2'' ergibt ''1''(=Wahr)| 
 +|''<'' | Ist kleiner als | ''3<4'' ergibt ''1''(=wahr)| 
 +| ''<='' | Ist kleiner oder gleich als | ''3<=3'' ergibt ''1''(=wahr)| 
 +|''>'' | Ist größer als | ''3>4'' ergibt ''0''(=falsch)| 
 +|''>=''| Ist größer oder gleich als | ''5>=5'' ergibt ''1''(=wahr)|
  
-^ Operator ^ Meaning ^ Example ^ +==== Funktionen ====
-|''==''| Checks for equality | ''2==2'' evaluates to ''1''(=true)| +
-| ''<>'' | Checks for inequality. | ''3<>2'' evaluates to ''1''(=true)| +
-|''<'' | Is less than | ''3<4'' evaluates to ''1''(=true)| +
-| ''<='' | Is less or equal than | ''3<=3'' evaluates to ''1''(=true)| +
-|''>'' | Is greater than | ''3>4'' evaluates to ''0''(=false)| +
-|''>=''| Is greater or equal than | ''5>=5'' evaluates to ''1''(=true)|+
  
-==== Functions ====+Funktionen starten alle mit einem Buchstaben, enthalten nur Buchstaben oder Ziffern und haben eine direkt daran angeschlossene Liste von Parametern, die in Klammern stehen. Mehrere Parameter werden dabei durch '';'' getrennt.
  
-Functions all start with a letter, contain only letters and digits and have a directly attached parameter list in parenthesisMultiple parameters are separated using '';''.+Ein Beispiel für einen Funktionsaufruf mit einem Parameter ist ''sin(90)''Ein Beispiel für einen Funktionsaufruf mit zwei Parametern ist ''rot('test'; 13)''.
  
-An example for a one-parameter function call is ''sin(90)''. An example for a two-parameter function call is ''rot('test'; 13)''.+Die folgenden Funktionen sind definiert:
  
-The following functions are defined:+^ Funktion ^ Synonym ^ Beschreibung ^ Parameter 1 ^ Parameter 2 ^ Beispiel ^ 
 +|''sqrt''|-|Berechnet die Quadratwurzel des gegebenen Parameters|Numerischer Parameter| - |''sqrt(9)'' ergibt ''3''
 +|''sin''/''cos''/''tan'' |-| Berechnet Sinus/Cosinus/Tangens des gegebenen Parameters | Numerischer Parameter in Grad(!)| - | ''sin(90)'' ergibt ''1''
 +|''abs''|-| Berechnet den absoluten Wert | Numerischer Parameter | - | ''abs(-34)'' ergibt ''34''
 +|''round''|-| Rundet Dezimalwerte mathematisch | Zu rundender Wert | OptionalAnzahl der Stellen für die Rundung | ''round(4.65)'' ergibt ''5'', ''round(4.65;1)'' ergibt ''4.7''
 +|''trunc''|-| Schneidet Dezimalwerte auf die (optional) angegebene Anzahl von Stellen | Abzuschneidender Wert | Optional: Anzahl Nachkommastellen, die nach dem Abschneiden verbleiben sollen (Standard:0)| ''trunc(123.456)'' ergibt ''123'', ''trunc(123.456;2)'' ergibt ''123.45''
 +|''if''|-| Wertet Bedingungen aus und gibt davon abhängige Werte zurück| Liste von wenn-dann-sonst Werten. Siehe vorheriges Kapitel für Details. | - | ''if(3<4;5;6)'' ergibt ''5''
 +|''checksum''|''cs''| Berechnet die Quersumme des angegebenen numerischen Wertes. Berechnet den Buchstabenwert, wenn der angegebene Parameter ein Text ist | Positive Ganzzahlen oder Text | - | ''checksum(345)'' ergibt ''12''
 +|''ichecksum''|''ics''| Berechnet die absolute/iterierte Quersumme des angegebenen numerischen Wertes. Startet beim Buchstabenwert, wenn der angegebene Parameter ein Text ist. | Positive Ganzzahl oder Text | - | ''ichecksum(345)'' ergibt ''3''
 +|''lettervalue''|''lv'', ''wordvalue'', ''wv'' | Berechnet den Buchstabenwert des angegebenen Textes | Text | - | ''lettervalue('test')'' ergibt ''64''
 +|''rot''|-| Berechnet einen rotierten Text aus dem angegebenen Text | Text | Anzahl der zu rotierenden Stellen | ''rot('abc'; 1)'' ergibt '''bcd'''
 +|''rot13''|-| Berechnet den ROT-13 Wert aus dem angegebenen Text | Text | - | ''rot13('abc')'' ergibt '''nop'''
 +|''roman''|-| Durchsucht einen gegebenen Text nach römischen Zahlen und gibt den dezimalen Wert zurück | Text | - | ''roman('VI')'' ergibt ''6''.| 
 +|''vanity''|''vanitycode'', ''vc''| Gibt den Vanity-Code eines Textes zurück | Text | - | ''vanity('cgeo')'' ergibt ''2436''.|
  
-^ Function ^ Synonyms ^ Description ^ Parameter1 ^ Parameter 2 ^ Example ^ 
-|''sqrt''|-|calculates square root of given parameter|numeric parameter| - |''sqrt(9)'' evaluates to ''3''| 
-|''sin''/''cos''/''tan'' |-| calculates sinus/cosinus/tangens of given parameter | numeric parameter in degree(!)| - | ''sin(90)'' evaluates to ''1''| 
-|''abs''|-| calculates absolute value | numeric parameter | - | ''abs(-34)'' evaluates to ''34''| 
-|''round''|-| rounds decimal values mathematically | value to round | optional: number of places to round to | ''round(4.65)'' evaluates to ''5'', ''round(4.65;1)'' evaluates to ''4.7''| 
-|''if''|-| evaluates conditions and returns conditional values | list of if-then-else-values. See previous section for details | - | ''if(3<4;5;6)'' evaluates to ''5''| 
-|''checksum''|''cs''| calculates checksum of given numeric value. Calculates lettervalue if given paramter is of type text | positive integer or text | - | ''checksum(345)'' evaluates to ''12''| 
-|''ichecksum''|''ics''| calculates iterative checksum of given numeric value. Starts from lettervalue if given parameter is of type text | positive integer or text | - | ''ichecksum(345)'' evaluates to ''3''| 
-|''lettervalue''|''lv'', ''wordvalue'', ''wv'' | calculates lettervalue of given string value | string | - | ''lettervalue('test')'' evaluates to ''64''| 
-|''rot''|-| calculates rotated string of given string value | string | count to rotate by | ''rot('abc'; 1)'' evaluates to '''bcd'''| 
-|''rot13''|-| calculates rotated-13 of given string value | string | - | ''rot13('abc')'' evaluates to '''nop'''| 
-|''roman''|-| scans a given string value as a roman number and returns its decimal value | string | - | ''roman('VI')'' evaluates to ''6''.| 
-|''vanity''|''vanitycode'', ''vc''| returns the vanity code of a string | string | - | ''vanity('cgeo')'' evaluates to ''2436''.| 
  
 +==== Variablen ====
  
-==== Variables ====+Variablen werden in Formeln als Platzhalter für Werte verwendet. Wenn eine Formel berechnet wird, die eine Variable enthält, benötigt diese einen Wert für jede enthaltene Variable, damit sie korrekt berechnet wird.
  
-Variables are used in a formula as placeholders for valuesWhen a formula containing a variable is evaluatedit needs to be passed a value for each of the contained variables in order to be correctly evaluated+Namen von Variablen unterscheiden Groß-/Kleinschreibung und müssen mit einem Buchstaben beginnenDie restlichen Zeichen können Buchstaben oder Ziffern sein. 
 +Beispiel für gültige Variablennamen sind: ''Test'', ''T1'', ''t'', ''Tt123''. Beispiele für ungültige Variablennamen sind: ''1a''''2''.
  
-Variable names are case sensitive and have to start with an alphanumeric char. Remaining chars can be alphanumeric or digits.  +Variablen, die nur aus einem Buchstaben bestehen, können einfach in Formeln eingegeben werden und werden direkt ausgewertet
-Examples for legal variable names are: ''Test''''T1''''t'', ''Tt123''Examples for non-legal variable names are: ''1a'', ''2''+Zum Beispiel ist die Formel ''A + 2'' gültig. Wenn ''A'' den Wert ''5'' hatergibt die Formel ''7''.
  
-One-letter-variables can just be typed into the formula and will be evaluated alongFor example, the formula ''+ 2'' is valid. If ''A'' has the value ''5'', the formula will evaluate to ''7''.+Wenn mehrere Buchstaben in einer Formel direkt hintereinander geschrieben werden, werden diese als Wiederholung dieser Ein-Buchstaben-Variable angesehenZum Beispiel wird die Formel ''AA + 2'' als zweifache Verwendung der Variable ''A'' interpretiert und die ''2'' anschließend addiert. Wenn ''A=4'' istergibt diese Formel somit ''44 + 2 = 46''. Das folgende Kapitel gibt mehr Informationen zum Thema Verketten von Variablen.
  
-If multiple chars are concatenated within a formula, they will be interpreted as individual one-letter-variables. For examplethe formula ''AA + 2'' will be interpreted as variable ''A'' concatenated two times and adding ''2'' afterwardsIf ''A=4'', this formula will evaluate to ''44 + 2 = 46''. See following section for more details wrt concatenation.+Namen von Variablen mit mehr als einem Buchstaben können im Unix-Bash-Stil verwendet werdenin dem ihnen ein ''$'' vorausgestellt wird. 
 +Beispielsweise kann eine Variable mit der Bezeichnung ''Test'' verwendet werden, in dem in Formeln ''$Test'' eingesetzt wird. Die Formel ''$Test + 2'' ist somit gültigWenn die Variable ''Test'' gleich ''4'' istergibt die Formel eine ''6''.
  
-Variable names longer than one char can be declared in Unix-Bash-Style by prepending their name with ''$''For example, a variable named ''Test'' is can be referenced using ''$Test''. The formulua ''$Test + 2'' is valid. If value for variable ''Test'' is ''4'' the formula will evaluate to ''6''+In Situationen, wo Variablennamen in Konflikt mit darauffolgenden Buchstaben stehen, können die Variablennamen in ''{}'' gesetzt werden, um diese vom folgenden Text zu trennenBeispielsweise verkettet der folgende Ausdruck den Wert der Variable ''Test'' mit dem Wert der Variable ''A''''${Test}A''
  
-In situations where variable name conflicts with following alphas/chars, the variable name can be enclosed in ''{}'' to differentiate it from following text. For example, the following expression will concatenate the value of variable ''Test'' with the value of variable ''A'': ''${Test}A'' +Einige weitere komplexe Beispiele:
-  +
-Some more complex examples:+
  
-  * The formula ''A + $A * $Test - t'' uses three variables named ''A'', ''Test'' and ''t''The variable ''A'' is used in two placesAssuming ''A=2'', ''Test=3'' and ''t=1'', the formula would evaluate to ''7''+  * Die Formel ''A + $A * $Test - t'' nutzt drei Variablen, nämlich  ''A'', ''Test'' und ''t''Die Variable ''A'' wird an zwei Stellen verwendetAngenommen ''A=2'', ''Test=3'' und ''t=1'' ergibt die Formel ''7''
-  * The formula ''AA + b + $A1'' uses three variables ''A'', ''b'' and ''A1''Assuming ''A=2'', ''b=3'' and ''A1=4'', the formula would evaluate to ''29'' ( = 22 + 3 + 4) +  * Die Formel ''AA + b + $A1'' nutzt drei Variablen, nämlich ''A'', ''b'' und ''A1''Angenommen ''A=2'', ''b=3'' und ''A1=4'' ergibt die Formel ''29'' ( = 22 + 3 + 4) 
-  * The formula ''AB(B+1)'' uses two variables ''A'' and ''B''Assuming ''A=2'' and ''B=3'', the formula would evaluate to ''234''  +  * Die Formel ''AB(B+1)'' nutzt zwei Variablen, nämlich ''A'' und ''B''Angenommen ''A=2'' und ''B=3'' ergibt die Formel ''234''  
-  * The formula ''$AB(B)(B+1)'' uses two variables ''AB'' and ''B''Assuming ''AB=2'' and ''B=5'', the formula would evaluate to ''256''  +  * Die Formel ''$AB(B)(B+1)'' nutzt zwei Variablen, nämlich ''AB'' und ''B''Angenommen ''AB=2'' und ''B=5''ergibt die Formel ''256''  
-  * Using ''{}'' syntax, the previous example could also be written like this: ''${AB}B(B+1)''+  * Nutzt man die ''{}''-Syntax könnte das vorherige Beispiel auch wie folgt geschrieben werden: ''${AB}B(B+1)''
  
-==== Concatenations ====+==== Verkettungen ====
  
-If multiple expressions are concatenated directly after another with no separating operatorvalues are concatenated to a consecutive expressionThis expression evaluates to a number if it forms a valid numeric expressionotherwise it evaluates to a text value.+Wenn mehrere Ausdrücke direkt hintereinander ohne trennenden Operator verkettet werdenwerden deren Werte ebenso zu einem fortlaufenden Ausdruck verkettetDieser Ausdruck ergibt eine Zahl wenn es eine gültiger numerischer Ausdruck istsonst zu einem Textwert.
  
-Expressionswhich can be concatenatedinclude e.ginteger digitsvariablesexpressions in parenthesis and the Overflow character (see next subsection).+Ausdrückedie verketten werden könnensind z.BGanzzahlenVariablenAusdrücke in Klammern und das Überlaufzeichen (siehe nächstes Unterkapitel).
  
-For example, the formula ''AA(A+4)55$Test(3)'' contains two variables ''A'' and ''Test''. Assuming ''A=9'' and ''Test=70'', it would evaluate to ''991355703''+Beispielsweise enthält die Formel ''AA(A+4)55$Test(3)'' zwei Variablen ''A'' und ''Test'', Unter der Annahme, dass ''A=9'' und ''Test=70'' istergibt sich das Ergebnis der Formel als ''991355703''
-==== Overflow character ====+==== Überlaufzeichen ====
  
-In concatenated expressionsthe character ''_'' can be used as an overflow signIt is a placeholder for possible spillovers if numeric variables evaluate to a value with more than one digitotherwise it is filled with 0. +In verketteten Ausdrückenkann das Zeichen ''_'' als Überlaufkennzeichnung verwendet werdenEs ist ein Platzhalter für mögliche Überläufe wenn eine numerische Variable einen Wert ergibtder mehr als eine Stelle hat. Ansonsten wird das Platzhalter mit einer gefüllt.
  
-An example should make the usage clear:+Ein Beispiel sollte die Nutzung klarer machen:
  
-  * The Formula ''1A'' with ''A=2'' will evaluate to ''12'' +  * Die Formel ''1A'' mit ''A=2'' ergibt ''12'' 
-  * The Formula ''1_A'' with ''A=2'' will evaluate to ''102'' +  * Die Formel ''1_A'' mit ''A=2'' ergibt ''102'' 
-  * The Formula ''1_A'' with ''A=23'' will evaluate to ''123'' +  * Die Formel ''1_A'' mit ''A=23'' ergibt ''123'' 
-  * The Formula ''%%1__A%%'' with ''A=23'' will evaluate to ''1023'' +  * Die Formel ''%%1__A%%'' mit ''A=23'' ergibt ''1023'' 
-  * The Formula ''%%1__%%A'' with ''A=234'' will evaluate to ''1234''+  * Die Formel ''%%1__%%A'' mit ''A=234'' ergibt ''1234''
  
  
-==== Range expressions ====+==== Wertebereiche ====
  
-You can specify ranges in formulas using ''[]''This is needed when variables are used in a context where a range of values should be iterated overA prominent example is the [[.:waypointcalculator|Generate Waypoints]] function.+Du kannst in Formeln Wertebereiche angeben, in dem du ''[:]'' nutztDies wird benötigt, wenn du Variablen über einen bestimmten Wertebereich auswerten willstEin prominentes Beispiel ist die Funktion zur [[.:waypointcalculator|Generierung von Wegpunkten]].
  
 **FIXME** Link to anchor on waypoint calc page as soon as its updated to cover waypoint generation with ranges. **FIXME** Link to anchor on waypoint calc page as soon as its updated to cover waypoint generation with ranges.
  
-An example for a range expression is ''[0-9]''This specifies a range with 10 values (the integer values to 9).+Ein Beispiel für einen Wertebereich-Ausdruck ist ''[:0-9]''Dies gibt einen Bereich mit 10 Werte (die Zahlenwerte bis 9) an. 
 + 
 +Du kannst mit dem Trennzeichen '','' fortlaufende Werte angeben. Du kannst Werte oder Wertebereiche durch Voranstellen von ''^'' ausschließen. 
 +Die Bereiche werden von links-nach-rechts gelesen und ergeben daraus die Anordnung der Elemente im Bereich. Die folgenden Beispiele zeigen gültige Bereichsangaben: 
 +  
 +  * ''[:0-2, 4]'' ergibt einen Wertebereich, der ''0'', ''1'', ''2'' and ''4'' enthält. 
 +  * ''[:0-3, ^1-2]'' ergibt einen Wertebereich, der  ''0'' and ''3'' enthält. 
 +  * ''[:0-3, ^1-2, 5]'' ergibt einen Wertebereich, der  ''0'', ''3'' and ''5'' enthält. 
 + 
 +Wenn ein Wertebereich in einem Kontext verwendet wird, in dem nur ein Einzelwert erlaubt ist (das ist bei normalen Berechnungen der Fall), wird der erste Wert im Bereich für die Berechnung genommen. Beispielsweise wird der Wertebereich ''[0-9]'' in normalen Berechnungen als ''0'' angenommen, während ''[:8, 0-9]'' als ''8'' angenommen wird. 
 + 
 +Wertebereiche unterstützen aktuell nur positive konstante Ganzzahlen. Ein Bereich muss immer mindestens einen Wert und nicht mehr als zwanzig Werte enthalten 
 +Beispielsweise sind die folgenden Wertebereiche ungültig:
  
-You may specify consecutive values using '','' as a delimiter. You may exclude values or value ranges by prepending a ''^'' to it. Ranges are parsed from left-to-right, giving an order to the elements in the range. For example the following are valid range specifications+  * ''[:]'': leer 
-  * ''[0-2, 4]'' evaluates to a range containing ''0'', ''1'', ''2'' and ''4''. +  * ''[:5, ^0-9]'': ergibt leer 
-  * ''[0-3, ^1-2]'' evaluates to a range containing ''0'' and ''3''. +  * ''[:0-1000]'': ergibt mehr als zwanzig Werte 
-  * ''[0-3, ^1-2, 5]'' evaluates to a range containing ''0'', ''3'' and ''5''.+  * ''[:-5]'': negative Zahlen nicht erlaubt 
 +  * ''[:A]'': Variablen nicht erlaubt
  
-When a range is used in a context where only one value is allowed (this is the case in normal calculation), the first range value is used for calculation. For example, the expression ''[0-9]'' will evalulate to ''0'' in a normal calculation context, while ''[8, 0-9]'' will evalulate to ''8''.+Eine Formel kann eine oder mehrere Wertebereiche gemischt mit normalen anderen Formelelementen enthaltenZum Beispiel sind folgende Formeln gültig:
  
-Ranges currently support only positive constant integer values. A range must always be evaluate to at least 1 value and a range may not evaluate to more than 20 values. For example the following ranges are invalid: +  * ''3*[:0-2]'': ergibt die Werte ''0'', ''3'' und ''6'' 
-  * ''[]'': empty +  * ''A*[:4, 7]'': Für ''A=3'' ergibt dies die Werte ''12'' and ''21'' 
-  * ''[5, ^0-9]'': evaluates to empty +  * ''[:1-2]*[:3-4]'': ergibt ''3'', ''6'', ''4'' und ''8''.
-  * ''[0-1000]'': evaluates to more than 20 entries +
-  * ''[-5]'': negative int not allowed +
-  * ''[A]'': variables not allowed+
  
-A formula may include one or more range definitions mixed with normal other formula parts. For example the following formulas are valid: 
-  * ''3*[0-2]'': evaluates to values ''0'', ''3'' and ''6'' 
-  * ''A*[4, 7]'': for ''A=3'' this evaluates to values ''12'' and ''21'' 
-  * ''[1-2]*[3-4]'': evaluates to ''3'', ''6'', ''4'' and ''8''. 
  
 +==== Kommentare ====
  
-==== Comments ====+Durch Nutzung von ''#''  kannst du in Formeln auch Kommentare eintragen. Die Kommentare enden am nächsten ''#'' oder am Ende der Formel. 
 +Alles, was im Kommentar steht, wird während der Berechnung ignoriert. 
 +Beispiele:
  
-You may enter comments into formula expressions using the ''#'' character. Comments end at next ''#'' or at end of expressions. Everything in a comment is ignored during evaluation. For example: +  * ''A * 5 # Test Kommentar'' mit ''A=3'' ergibt ''15'' 
-  * ''A * 5 # test comment'' for ''A=3'' evaluates to ''15'' +  * ''3.14 # Das ist Pi # * 2 # und das ist zwei'' ergibt ''6.28''
-  * ''3.14 # this is pi # * 2 # and this is two'' evaluates to ''6.28''+
de/cachevariables.1652520897.txt.gz · Zuletzt geändert: 2022/05/14 11:34 von lineflyer