Wird geladen...

C# Mathematikbibliothek

Lernen Sie die C#-Math-Bibliothek kennen und verwenden Sie Methoden wie Pow, Sqrt, Round, Abs und weitere mathematische Funktionen.

Die C# Math Library, bereitgestellt durch die System.Math-Klasse, enthält zahlreiche integrierte Methoden und Konstanten für mathematische Berechnungen in C#-Anwendungen. Da die Math-Klasse statisch ist, können ihre Methoden direkt ohne Objekterstellung verwendet werden. In diesem Artikel betrachten wir die am häufigsten verwendeten System.Math-Methoden in C# anhand praktischer Beispiele.


Betrag (Abs)

Die Methode Math.Abs gibt den absoluten Wert einer Zahl zurück, indem das negative Vorzeichen entfernt wird. Sie wird häufig verwendet, wenn die Größe eines Wertes unabhängig von seinem Vorzeichen von Bedeutung ist.


int a = -15;
Console.WriteLine(Math.Abs(a)); // 15

Minimum und Maximum (Min, Max)

Die Methoden Math.Min und Math.Max werden verwendet, um zwei numerische Werte zu vergleichen und den kleineren bzw. größeren Wert zurückzugeben. Diese Methoden sind besonders nützlich für Validierungen und Grenzprüfungen.


int x = 8, y = 20;
Console.WriteLine(Math.Min(x, y)); // 8
Console.WriteLine(Math.Max(x, y)); // 20

Quadratwurzel (Sqrt)

Die Methode Math.Sqrt berechnet die Quadratwurzel einer gegebenen Zahl. Sie gibt einen Wert vom Typ double zurück und wird häufig in der Geometrie sowie bei wissenschaftlichen Berechnungen eingesetzt.


double zahl = 256;
Console.WriteLine(Math.Sqrt(zahl)); // 16

Potenzieren (Pow)

Die Methode Math.Pow potenziert eine Zahl mit einer anderen Zahl. Sie wird häufig für Exponentialfunktionen verwendet und gibt einen double-Wert zurück.


Console.WriteLine(Math.Pow(2, 3)); // 8

Runden (Round, Ceiling, Floor)

C# stellt über die Math-Klasse mehrere Rundungsmethoden bereit. Math.Round rundet auf den nächstgelegenen Wert, Math.Ceiling rundet immer auf, und Math.Floor rundet immer ab.


double d = 4.7;

Console.WriteLine(Math.Round(d));   // 5 (rundet auf die nächste Zahl)
Console.WriteLine(Math.Ceiling(d)); // 5 (rundet immer auf)
Console.WriteLine(Math.Floor(d));   // 4 (rundet immer ab)

Truncate

Die Methode Math.Truncate entfernt den Nachkommanteil einer Zahl, ohne eine Rundung durchzuführen, indem der Dezimalteil einfach abgeschnitten wird.


double d = 4.9;
Console.WriteLine(Math.Truncate(d)); // 4

Division mit Rest (DivRem)

Die Methode Math.DivRem führt eine Ganzzahldivision durch und gibt sowohl den Quotienten als auch den Rest in einem einzigen Aufruf zurück. Dies kann bei leistungsrelevanten Berechnungen hilfreich sein.


int quotient, rest;
rest = Math.DivRem(17, 5, out quotient);

Console.WriteLine("Quotient: " + quotient); // 3
Console.WriteLine("Rest: " + rest);         // 2

Trigonometrische Funktionen (Sin, Cos, Tan)

Die Methoden Math.Sin, Math.Cos und Math.Tan berechnen trigonometrische Werte auf Basis von Bogenmaß (Radiant). Sie werden häufig in der Geometrie, Computergrafik und Physik verwendet.


double winkel = Math.PI / 4; // 45 Grad (in Radiant)

Console.WriteLine(Math.Sin(winkel)); // 0,707...
Console.WriteLine(Math.Cos(winkel)); // 0,707...
Console.WriteLine(Math.Tan(winkel)); // 1

Winkelumrechnung (Radiant/Grad, PI-Konstante)

Trigonometrische Methoden in C# arbeiten mit Bogenmaß. Mithilfe der Konstanten Math.PI können Winkel bei Bedarf einfach von Grad in Radiant umgerechnet werden.


double grad = 180;
double radiant = grad * (Math.PI / 180);

Console.WriteLine(radiant); // 3,14159...

Logarithmus (Log, Log10)

Die Methode Math.Log berechnet den natürlichen Logarithmus zur Basis e, während Math.Log10 den Logarithmus zur Basis 10 berechnet. Diese Funktionen werden häufig in wissenschaftlichen und finanziellen Anwendungen eingesetzt.


Console.WriteLine(Math.Log(100));   // Logarithmus zur Basis e
Console.WriteLine(Math.Log10(100)); // Logarithmus zur Basis 10

Maximaler und minimaler Double-Wert

Die Konstanten double.MaxValue und double.MinValue repräsentieren die größten und kleinsten Werte, die ein double annehmen kann. Sie sind nützlich für Vergleiche und zur Initialisierung von Variablen.


Console.WriteLine(double.MaxValue);
Console.WriteLine(double.MinValue);

Kombination von Quadratwurzel und Potenz

Math-Methoden können miteinander kombiniert werden, um komplexere Berechnungen durchzuführen. In diesem Beispiel wird eine Zahl zunächst potenziert und anschließend ihre Quadratwurzel berechnet.


double zahl = 256;
double ergebnis = Math.Sqrt(Math.Pow(zahl, 2)); 
Console.WriteLine(ergebnis); // 256 (zuerst quadriert, dann Wurzel gezogen)

Verwendung mit Betrag

Die Methode Math.Abs wird häufig zusammen mit Berechnungen verwendet, bei denen negative Ergebnisse auftreten können, beispielsweise bei Differenzen zwischen Werten. Durch die Anwendung von Math.Abs wird sichergestellt, dass das Ergebnis stets positiv ist, was bei Vergleichen und Distanzberechnungen hilfreich ist.


int differenz = -50;
Console.WriteLine(Math.Abs(differenz)); // 50

Vorzeichenbestimmung (Sign)

Die Methode Math.Sign gibt je nach Wert einer Zahl -1, 0 oder 1 zurück, abhängig davon, ob die Zahl negativ, null oder positiv ist. Sie ist besonders nützlich, wenn lediglich die Richtung eines Wertes und nicht dessen exakter Betrag benötigt wird.


Console.WriteLine(Math.Sign(-10)); // -1
Console.WriteLine(Math.Sign(0));   // 0
Console.WriteLine(Math.Sign(25));  // 1

Wertbegrenzung (Clamp)

Die Methode Math.Clamp begrenzt einen Wert auf einen festgelegten Bereich. Liegt der Wert unterhalb des Minimalwerts, wird der Minimalwert zurückgegeben; liegt er oberhalb des Maximalwerts, wird der Maximalwert verwendet.


int value = 120;
int result = Math.Clamp(value, 0, 100);
Console.WriteLine(result); // 100

Exponentialfunktion (Exp)

Die Methode Math.Exp berechnet die eulersche Zahl e hoch die angegebene Potenz. Sie wird häufig in wissenschaftlichen, mathematischen und statistischen Berechnungen eingesetzt.


Console.WriteLine(Math.Exp(1)); // e ≈ 2.71828

TL;DR

  • Math.Abs: Gibt den absoluten Wert einer Zahl zurück.
  • Math.Sign: Gibt an, ob eine Zahl negativ, null oder positiv ist.
  • Math.Min, Math.Max: Vergleichen zwei Zahlen und geben den kleineren bzw. größeren Wert zurück.
  • Math.Clamp: Begrenzt einen Wert auf einen definierten Bereich.
  • Math.Sqrt, Math.Pow: Berechnen Quadratwurzel und Potenzen.
  • Math.Round, Math.Ceiling, Math.Floor, Math.Truncate: Rundungs- und Abschneideoperationen.
  • Math.Sin, Math.Cos, Math.Tan: Trigonometrische Funktionen (arbeiten mit Radiant).
  • Math.Log, Math.Log10, Math.Exp: Logarithmische und exponentielle Funktionen.
  • Math.PI: Konstante zur Darstellung des Pi-Werts.

Ähnliche Artikel