Freigeben über


StrictMath.Fma Methode

Definition

Überlädt

Fma(Double, Double, Double)

Gibt die fused multiplizierte Add-Ins der drei Argumente zurück; d. h. gibt das genaue Produkt der ersten beiden Argumente zurück, die mit dem dritten Argument addiert und dann einmal auf die nächste doublegerundet werden.

Fma(Single, Single, Single)

Gibt die fused multiplizierte Add-Ins der drei Argumente zurück; d. h. gibt das genaue Produkt der ersten beiden Argumente zurück, die mit dem dritten Argument addiert und dann einmal auf die nächste floatgerundet werden.

Fma(Double, Double, Double)

Gibt die fused multiplizierte Add-Ins der drei Argumente zurück; d. h. gibt das genaue Produkt der ersten beiden Argumente zurück, die mit dem dritten Argument addiert und dann einmal auf die nächste doublegerundet werden.

[Android.Runtime.Register("fma", "(DDD)D", "", ApiSince=33)]
public static double Fma(double a, double b, double c);
[<Android.Runtime.Register("fma", "(DDD)D", "", ApiSince=33)>]
static member Fma : double * double * double -> double

Parameter

a
Double

ein Wert

b
Double

ein Wert

c
Double

ein Wert

Gibt zurück

(a  ×  b + c) berechnet, als ob mit unbegrenztem Bereich und Genauigkeit, und einmal auf den nächsten double Wert gerundet

Attribute

Hinweise

Gibt die fused multiplizierte Add-Ins der drei Argumente zurück; d. h. gibt das genaue Produkt der ersten beiden Argumente zurück, die mit dem dritten Argument addiert und dann einmal auf die nächste doublegerundet werden.

Die Rundung erfolgt mithilfe des java.math.RoundingMode#HALF_EVEN rundet auf den nächsten geraden Rundungsmodus.

Wenn sie dagegen a * b + c als regulärer Gleitkommaausdruck ausgewertet wird, sind zwei Rundungsfehler beteiligt, die erste für den Multiplikationsvorgang, die zweite für den Additionsvorgang.

Sonderfälle: <ul><li> Wenn ein Argument naN ist, lautet das Ergebnis NaN.

<li> Wenn eines der ersten beiden Argumente unendlich und der andere null ist, lautet das Ergebnis NaN.

<li> Wenn das genaue Produkt der ersten beiden Argumente unendlich ist (mit anderen Worten, mindestens eines der Argumente ist unendlich und der andere ist weder Null noch NaN) und das dritte Argument ist eine Unendlichkeit des entgegengesetzten Zeichens, ist das Ergebnis NaN.

</ul>

Beachten Sie, dass fusedMac(a, 1.0, c) dasselbe Ergebnis wie (a + c) zurückgegeben wird. fusedMac(a, b, +0.0) Es wird <>jedoch nicht</em> immer dasselbe Ergebnis wie (a * b) zurückgegeben, da fusedMac(-0.0, +0.0, +0.0)-0.0 * +0.0+0.0 () -0.0fusedMac(a, b, -0.0) ist ; entspricht jedoch ().a * b

Hinzugefügt in 9.

Java-Dokumentation für java.lang.StrictMath.fma(double, double, double).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Fma(Single, Single, Single)

Gibt die fused multiplizierte Add-Ins der drei Argumente zurück; d. h. gibt das genaue Produkt der ersten beiden Argumente zurück, die mit dem dritten Argument addiert und dann einmal auf die nächste floatgerundet werden.

[Android.Runtime.Register("fma", "(FFF)F", "", ApiSince=33)]
public static float Fma(float a, float b, float c);
[<Android.Runtime.Register("fma", "(FFF)F", "", ApiSince=33)>]
static member Fma : single * single * single -> single

Parameter

a
Single

ein Wert

b
Single

ein Wert

c
Single

ein Wert

Gibt zurück

(a  ×  b + c) berechnet, als ob mit unbegrenztem Bereich und Genauigkeit, und einmal auf den nächsten float Wert gerundet

Attribute

Hinweise

Gibt die fused multiplizierte Add-Ins der drei Argumente zurück; d. h. gibt das genaue Produkt der ersten beiden Argumente zurück, die mit dem dritten Argument addiert und dann einmal auf die nächste floatgerundet werden.

Die Rundung erfolgt mithilfe des java.math.RoundingMode#HALF_EVEN rundet auf den nächsten geraden Rundungsmodus.

Wenn sie dagegen a * b + c als regulärer Gleitkommaausdruck ausgewertet wird, sind zwei Rundungsfehler beteiligt, die erste für den Multiplikationsvorgang, die zweite für den Additionsvorgang.

Sonderfälle: <ul><li> Wenn ein Argument naN ist, lautet das Ergebnis NaN.

<li> Wenn eines der ersten beiden Argumente unendlich und der andere null ist, lautet das Ergebnis NaN.

<li> Wenn das genaue Produkt der ersten beiden Argumente unendlich ist (mit anderen Worten, mindestens eines der Argumente ist unendlich und der andere ist weder Null noch NaN) und das dritte Argument ist eine Unendlichkeit des entgegengesetzten Zeichens, ist das Ergebnis NaN.

</ul>

Beachten Sie, dass fma(a, 1.0f, c) dasselbe Ergebnis wie (a + c) zurückgegeben wird. fma(a, b, +0.0f) Es wird <>jedoch nicht</em> immer dasselbe Ergebnis wie (a * b) zurückgegeben, da fma(-0.0f, +0.0f, +0.0f)-0.0f * +0.0f+0.0f () -0.0ffma(a, b, -0.0f) ist ; entspricht jedoch ().a * b

Hinzugefügt in 9.

Java-Dokumentation für java.lang.StrictMath.fma(float, float, float).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: