Calcul matematic și clasa Math
Pentru realizarea diferitelor operații matematice în biblioteca de clase .NET este destinată clasa Math. Aceasta este statică, astfel toate metodele sale sunt de asemenea statice.
Să analizăm principalele metode ale clasei Math:
- Abs(double value): returnează valoarea absolută a argumentului value
double result = Math.Abs(-12.4); // 12.4
- Acos(double value): returnează arccosinusul lui value. Parametrul value trebuie să aibă o valoare între -1 și 1
double result = Math.Acos(1); // 0
- Asin(double value): returnează arcsinusul lui value. Parametrul value trebuie să aibă o valoare între -1 și 1
- Atan(double value): returnează arctangenta lui value
- BigMul(int x, int y): returnează produsul x * y sub forma unui obiect long
double result = Math.BigMul(100, 9340); // 934000
- Ceiling(double value): returnează cel mai mic număr întreg cu virgulă mobilă care nu este mai mic decât value
double result = Math.Ceiling(2.34); // 3
- Cos(double d): returnează cosinusul unghiului d
- Cosh(double d): returnează cosinusul hiperbolic al unghiului d
- DivRem(int a, int b, out int result): returnează rezultatul împărțirii a/b, iar restul este plasat în parametrul result
int result;
int div = Math.DivRem(14, 5, out result);
// result = 4
// div = 2
- Exp(double d): returnează baza logaritmului natural ridicată la puterea d
- Floor(decimal d): returnează cel mai mare număr întreg care nu este mai mare decât d
double result = Math.Floor(2.56); // 2
- IEEERemainder(double a, double b): returnează restul împărțirii lui a la b
double result = Math.IEEERemainder(26, 4); // 2 = 26-24
- Log(double d): returnează logaritmul natural al numărului d
- Log(double a, double newBase): returnează logaritmul numărului a în baza newBase
- Log10(double d): returnează logaritmul zecimal al numărului d
- Max(double a, double b): returnează numărul maxim dintre a și b
- Min(double a, double b): returnează numărul minim dintre a și b
- Pow(double a, double b): returnează numărul a ridicat la puterea b
- Round(double d): returnează numărul d rotunjit la cel mai apropiat număr întreg
double result1 = Math.Round(20.56); // 21
double result2 = Math.Round(20.46); // 20
- Round(double a, int b): returnează numărul a rotunjit la un anumit număr de zecimale, reprezentat de parametrul b
double result1 = Math.Round(20.567, 2); // 20,57
double result2 = Math.Round(20.463, 1); // 20,5
- Sign(double value): returnează numărul 1 dacă numărul value este pozitiv și -1 dacă valoarea value este negativă. Dacă value este 0, returnează 0
int result1 = Math.Sign(15); // 1
int result2 = Math.Sign(-5); // -1
- Sin(double value): returnează sinusul unghiului value
- Sinh(double value): returnează sinusul hiperbolic al unghiului value
- Sqrt(double value): returnează rădăcina pătrată a numărului value
double result1 = Math.Sqrt(16); // 4
- Tan(double value): returnează tangenta unghiului value
- Tanh(double value): returnează tangenta hiperbolică a unghiului value
- Truncate(double value): elimină partea zecimală a numărului value, returnând doar valoarea întreagă
double result = Math.Truncate(16.89); // 16
De asemenea, clasa Math definește două constante: Math.E și Math.PI. De exemplu, să calculăm aria unui cerc:
double radius = 50;
double area = Math.PI * Math.Pow(radius, 2);
Console.WriteLine($"Aria cercului cu raza {radius} este {Math.Round(area, 2)}");