IEEERemainder: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 3: Zeile 3:
=== Beschreibung ===
=== Beschreibung ===


Die Funktion ''IEEEremainder'' berechnet die Remainder-Operation auf zwei Argumente, wie es in dem IEEE 745 Standtard beschrieben ist [https://de.wikipedia.org/wiki/IEEE_754#Aritmetik_und_Quadratwurzel]. Die Funktion erwartet zwei Zahlen und gibt das entsprechende Ergebnis zurück.
Die Funktion ''IEEEremainder'' berechnet die Remainder-Operation auf zwei Argumente, wie es in dem IEEE 745 Standtard beschrieben ist [https://de.wikipedia.org/wiki/IEEE_754#Aritmetik_und_Quadratwurzel]. Die Funktion erwartet zwei Zahlen und gibt das Ergebnis von ''f1-(f2* Math.Round(f1/f2))'' zurück.


=== Syntax ===
=== Syntax ===
Zeile 13: Zeile 13:


=== Return Value ===
=== Return Value ===
*Gibt den Rest-Wert zurück, wenn f1 durch f2 geteilt wird
* Gibt das gerundete Ergebnis von f1-(f2 Q) zurück. Q ist dabei das gerundete EErgebnis von f1/f2. '''Hinweis''': Wenn f1/f2 genau zwischen zwei ganzen Zahlen liegt, wird die gerade ganze Zahl zurückgegeben.
* Wenn der f1-(f2 Q) gleich 0 ist, wird bei positivem f1 ''+0'' und bei negativem f1 ''-0'' zurückgegeben.
* Wenn f2 gleich 0 ist, wird NaN zurückgegeben.
 
===Unterschied zu Modulo===
Beide geben den Rest nach der Division zurück, verwenden aber unterschiedliche Formeln:
 
IEEEremainder = dividend -(divisor * Math.Round(dividend / divisor))
 
Modulo = (Math.Abs(dividend) - (Math.Abs(divisor) * (Math.Floor(Math.Abs(dividend) / Math.Abs(divisor))))) * Math.Sign(dividend)
 
Beispiel:
 
3/2    IEEEremainder-->returns -1    Modulo-->returns 1
11/3  IEEremainder-->returns -1    Modulo-->returns 2
28/5  IEEEremainder-->returns -2    Modulo-->returns 3


=== Beispiele ===
=== Beispiele ===
Zeile 20: Zeile 35:
   
   
  IEEEremainder(3,2)  --> returns -1
  IEEEremainder(3,2)  --> returns -1
IEEEremainder(27,4)  -->returns -1
IEEEremainder(17.8,4)  -->returns 1.8


==== Benutzung mit Variablen ====
==== Benutzung mit Variablen ====

Version vom 14. August 2019, 15:25 Uhr

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion IEEEremainder berechnet die Remainder-Operation auf zwei Argumente, wie es in dem IEEE 745 Standtard beschrieben ist [1]. Die Funktion erwartet zwei Zahlen und gibt das Ergebnis von f1-(f2* Math.Round(f1/f2)) zurück.

Syntax

IEEEremainder(Gleitkommazahl f1, Gleitkommazahl f2)

Parameter

  • f1 - Zähler
  • f2 - Nenner

Return Value

  • Gibt das gerundete Ergebnis von f1-(f2 Q) zurück. Q ist dabei das gerundete EErgebnis von f1/f2. Hinweis: Wenn f1/f2 genau zwischen zwei ganzen Zahlen liegt, wird die gerade ganze Zahl zurückgegeben.
  • Wenn der f1-(f2 Q) gleich 0 ist, wird bei positivem f1 +0 und bei negativem f1 -0 zurückgegeben.
  • Wenn f2 gleich 0 ist, wird NaN zurückgegeben.

Unterschied zu Modulo

Beide geben den Rest nach der Division zurück, verwenden aber unterschiedliche Formeln:

IEEEremainder = dividend -(divisor * Math.Round(dividend / divisor))
Modulo = (Math.Abs(dividend) - (Math.Abs(divisor) * (Math.Floor(Math.Abs(dividend) / Math.Abs(divisor))))) * Math.Sign(dividend)

Beispiel:

3/2    IEEEremainder-->returns -1    Modulo-->returns 1
11/3   IEEremainder-->returns -1     Modulo-->returns 2
28/5   IEEEremainder-->returns -2    Modulo-->returns 3

Beispiele

Standardfälle

IEEEremainder(4,2)   --> returns 0

IEEEremainder(3,2)   --> returns -1

IEEEremainder(27,4)  -->returns -1
IEEEremainder(17.8,4)  -->returns 1.8

Benutzung mit Variablen

IEEEremainder([pos=1],[pos=2])

IEEEremainder([var=a],[var=b])