Bevezetés a matematikai funkciókba a C # -ben
A C # matematikai könyvtára a fejlesztők számára a matematika általános, trigonometrikus, statisztikai és logaritmikus függvényeit és tulajdonságait nyújtja. Ez használatra kész, plug and play könyvtár. A könyvtár az Object osztálytól örökölte a C # szuper szülő osztályát. A rendszer névtérben található.
Megjegyzés: Az egyik nagyon fontos dolog, amelyet szem előtt kell tartani, hogy a Math osztály tulajdonságai és módszerei statikusak, azaz nem kell létrehozniuk a Math osztály egyik objektumát a meghívásukhoz.C # Matematikai tulajdonságok
Nézzük meg a matematikai könyvtár különféle matematikai tulajdonságait.
1. E4
E a logaritmikus bázis, amelyet a matematikai egyenletekben az „e” kisbetű határoz meg. Ez a statikus tulajdonság megtartja a természetes logaritmikus bázis értékét.
Kód:
using System;
public class Program
(
public static void Main()
(
Console.WriteLine("The value of logarithmic base E is " + Math.E);
)
)
Kimenet:
2. PI
A Pi, amelyet népszerű módon p jelként írnak, a kör kerületének és az átmérőnek a hányadosa (nagyjából 3, 14). Ez a statikus állandó tartja p értékét.
Kód:
using System;
public class Program
(
public static void Main()
(
Console.WriteLine("The value of PI is " + Math.PI);
)
)
Kimenet:
C # Matematikai funkciók
Nézzük meg a rendelkezésünkre álló C # Math könyvtár különféle matematikai funkcióit:
1. Abszolút funkció
Egy adott szám (egész szám, tizedes, lebegőpontos stb.) Abszolút értékét adja vissza. Bármely szám abszolút értéke a legnagyobb lehetséges decimális érték, amely nagyobb vagy egyenlő, mint 0, de kevesebb, vagy egyenlő magával a számmal.
Kód:
using System;
public class Program
(
public static void Main()
(
int num1 = 231;
double num2 = -1.23456789;
Console.WriteLine("The absolute value of (0) is (1) ", num1, Math.Abs(num1));
Console.WriteLine("The absolute value of (0) is (1) ", num2, Math.Abs(num2));
)
)
Kimenet:
2. BigMul-Big szorzás
Ez a függvény két nagyon nagy egész szám teljes szorzási eredményét adja vissza. Két 32 bites egész számot vesz igénybe, és 64 bites szorzót eredményez.
Kód:
using System;
public class Program
(
public static void Main()
(
int num1 = Int32.MaxValue;
Console.WriteLine("Multiplication of (0)x(0) without Math function - (1)", num1, num1*num1);
Console.WriteLine("Multiplication of (0)x(0) by Math BigMul function - (1)", num1, Math.BigMul(num1, num1));
)
)
Kimenet:
3. Padló és mennyezet
A padló () és a mennyezet () funkciók megadott számú padló és mennyezet értékeit adják vissza. Bármely szám alsó értéke a legnagyobb egész, kisebb vagy egyenlő maga a számmal. Bármely szám felső határértéke a legkisebb egész szám, amely magasabb a számmal vagy azzal egyenlő.
Kód:
using System;
public class Program
(
public static void Main()
(
double num1 = 548.65;
Console.WriteLine("Floor value of (0) is (1)", num1, Math.Floor(num1));
Console.WriteLine("Ceil value of (0) is (1)", num1, Math.Ceiling(num1));
)
)
Kimenet:
4. Sin, Cos & Tan
Ezek a trigonometrikus függvények a megadott szög szinusz-, koszinusz- és érintőértékét biztosítják.
Kód:
using System;
public class Program
(
public static void Main()
(
double angle = 120.5;
Console.WriteLine("Sine value of (0) is (1)", angle, Math.Sin(angle));
Console.WriteLine("Cosine value of (0) is (1)", angle, Math.Cos(angle));
Console.WriteLine("Tangent value of (0) is (1)", angle, Math.Tan(angle));
)
)
Kimenet:
5. Sinh, Cosh és Tanh – hiperbole
Ezek a trigonometrikus függvények a megadott szög hiperbolikus szinusz-, koszinusz- és érintőértékét biztosítják.
Kód:
using System;
public class Program
(
public static void Main()
(
double angle = 120.5;
Console.WriteLine("Hyperbolic Sine value of (0) is (1)", angle, Math.Sinh(angle));
Console.WriteLine("Hyperbolic Cosine value of (0) is (1)", angle, Math.Cosh(angle));
Console.WriteLine("Hyperbolic Tangent value of (0) is (1)", angle, Math.Tanh(angle));
)
)
Kimenet:
6. Asin, Acos és Atan
Ezek a trigonometrikus függvények visszaadják azt a szöget, amelyhez a megadott szám a szinusz, koszinusz vagy érintő érték.
Kód:
using System;
public class Program
(
public static void Main()
(
double value = 1;
Console.WriteLine("The angle of sin((0)) is (1)", value, Math.Asin(value));
Console.WriteLine("The angle of cos((0)) is (1)", value, Math.Acos(value));
Console.WriteLine("The angle of tan((0)) is (1)", value, Math.Atan(value));
)
)
Kimenet:
7. DivRem – Division & maradék
Ez a funkció kiszámítja a két egész szám felosztásának eredményét. Az eredményt nem adja vissza törtértékben. Ehelyett a hányadost a függvény visszatérési értékeként adjuk vissza, a fennmaradó értéket pedig kimeneti paraméterként.
Kód:
using System;
public class Program
(
public static void Main()
(
int divisor = 8;
int dividend = 45;
int remainder = 0;
int quotient = Math.DivRem(dividend, divisor, out remainder);
Console.WriteLine("(0) divided by (1) results in (2) as the quotient and (3) as the remainder.", dividend, divisor, quotient, remainder);
)
)
Kimenet:
8. Exp-Exponenciális
Az exp függvény visszatér e- t a megadott szám teljesítményére.
Kód:
using System;
public class Program
(
public static void Main()
(
int power = 4;
Console.WriteLine("(0) to the power of (1) is (2).", Math.E, power, Math.Exp(power));
)
)
Kimenet:
9. Napló, Log2 és Log10-Logaritmus
A napló funkció egy adott szám logaritmusát adja vissza egy meghatározott bázisra. Ha nem ad meg bázist, akkor az alapértelmezett bázis e, ami a természetes logaritmushoz vezet.
Megjegyzés: A Log2 a .Net Core-ban került bevezetésre. Ez a módszer a .Net keretrendszerben nem érhető el.
Kód:
using System;
public class Program
(
public static void Main()
(
double num1 = 4.5;
int new_base = 12;
Console.WriteLine("Log((0)) to the base 'e' is (1).", num1, Math.Log(num1));
Console.WriteLine("Log((0)) to the base 10 is (1).", num1, Math.Log10(num1));
Console.WriteLine("Log((0)) to the base 2 is (1).", num1, Math.Log(num1, 2));
Console.WriteLine("Log((0)) to the base (1) is (2).", num1, new_base, Math.Log(num1, new_base));
)
)
Kimenet:
10. Min és max
Ezek a funkciók összehasonlítják a megadott két számot, és visszaadják a kettő kisebb vagy nagyobb számát.
Kód:
using System;
public class Program
(
public static void Main()
(
double num1 = 4.5;
double num2 = -3.4;
int num3 = 981;
int num4 = 123;
Console.WriteLine("Minimum of (0) and (1) is (2).", num1, num2, Math.Min(num1, num2));
Console.WriteLine("Maximum of (0) and (1) is (2).", num1, num2, Math.Max(num1, num2));
Console.WriteLine("Minimum of (0) and (1) is (2).", num3, num4, Math.Min(num3, num4));
Console.WriteLine("Maximum of (0) and (1) is (2).", num3, num4, Math.Max(num3, num4));
)
)
Kimenet:
11. Pow-Power
A pow () függvény visszatér a megadott számhoz a megadott teljesítményre.
Kód:
using System;
public class Program
(
public static void Main()
(
int num1 = 11;
double num2 = 3.4;
Console.WriteLine("(0) to the power (1) is (2).", num1, num2, Math.Pow(num1, num2));
Console.WriteLine("The cube of (0) is (1).", num1, Math.Pow(num1, 3));
)
)
Kimenet:
12. Kerek
A () függvény, amint a neve is sugallja, a megadott számot a legközelebbi egész számra vagy a megadott tizedesjegyre egészíti fel.
A kerek () függvénynek néhány fontos változata van. Két vagy három érv szükséges.
- Az első érv a kerekített szám.
- A második argumentum a tizedes pont utáni számjegyek száma. Ha ez nincs megadva, a számot a legközelebbi egészre kerekítik.
- A harmadik érv a kerekítés módja. Ez a két érték felsorolása, amely a MidpointRounding enumból származik.
A két mód a következő:
- AwayFromZero: Amikor egy szám két szám közé esik, akkor azt a legközelebbi számra kell kerekíteni, amely a nullától távolabb van.
- ToEven: Ha egy szám két szám közé esik, akkor azt a legközelebbi páros számra kell kerekíteni.
Ha nincs megadva, az AwayFromZero mód az alapértelmezett mód.
Kód:
using System;
public class Program
(
public static void Main()
(
double num1 = 2.45;
double num2 = 24.5;
Console.WriteLine("(0) rounded to the nearest integer is (1)", num1, Math.Round(num1));
Console.WriteLine("(0) rounded to the nearest single-point decimal is (1)", num1, Math.Round(num1, 1));
Console.WriteLine("(0) rounded to the nearest single-point decimal away from zero is (1)", num1, Math.Round(num1, 1, MidpointRounding.AwayFromZero));
Console.WriteLine("(0) rounded to the nearest single-point decimal to even is (1)", num1, Math.Round(num1, 1, MidpointRounding.ToEven));
Console.WriteLine("\n(0) rounded to the nearest integer away from zero is (1)", num2, Math.Round(num2, MidpointRounding.AwayFromZero));
Console.WriteLine("(0) rounded to the nearest integer to even is (1)", num2, Math.Round(num2, MidpointRounding.ToEven));
)
)
Kimenet:
13. Sqrt-négyzetgyökér
Ez a függvény adja meg az adott szám négyzetgyökét.
Kód:using System;
public class Program
(
public static void Main()
(
int num1 = 196;
double num2 = 404.1;
Console.WriteLine("Square root of (0) is (1).", num1, Math.Sqrt(num1));
Console.WriteLine("Square root of (0) is (1).", num2, Math.Sqrt(num2));
)
)
Kimenet:
14. Vágja le
A csonkítási funkció a megadott szám szerves részét adja vissza. Tehát egyszerűen elveti a tizedes pont után bármit, és mindent visszaad a tizedes pont előtt.
Megjegyzés: Vegye figyelembe, hogy ez különbözik a Kerek funkciótól. A kerek függvény a számhoz legközelebbi egész értéket ad vissza. Lehet, hogy egész szám nagyobb, mint maga a szám. Míg a Csonkítás funkció mindig a szám egész számát jeleníti meg. Pl. - A (4.9) forduló eredménye 5. A csonkolás (4.9) eredménye 4.
Kód:
using System;
public class Program
(
public static void Main()
(
double num1 = 404.92;
Console.WriteLine("Truncated value of (0) is (1).", num1, Math.Truncate(num1));
Console.WriteLine("Rounded-off value of (0) is (1).", num1, Math.Round(num1));
)
)
Kimenet:
Következtetés
Ez a cikk szinte az összes matematikai funkciót lefedi a C # Math könyvtárban. Ez a könyvtár nagyon hasznosnak bizonyul a plug-n-play matematikai tulajdonságok és funkciók miatt, ezáltal megkönnyítve a fejlesztést.
Ajánlott cikkek
Ez a C # matematikai funkcióinak útmutatója. Itt tárgyaljuk a c # matematikai függvény tulajdonságait és funkcióit a megfelelő kódokkal és kimenetekkel. Megnézheti más kapcsolódó cikkeinket, hogy többet megtudjon-
- Polimorfizmus a C # -ben
- JavaScript matematikai funkciók
- PHP matematikai funkciók
- Anonim funkciók a Matlab-ban
- Polimorfizmus a Java-ban
- Négyzetgyökér a PHP-ben
- Négyzetgyökér a JavaScript-ben