IRONSOFTWAREHOME
AKTUALNOŚCI DLA PROGRAMISTÓW

C# Math (jak to działa dla programistów)

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Jacob Mellor
Updated: 21 kwietnia 2026

C# jest jednym z popularnych języków programowania do budowania dynamicznych i skalowalnych aplikacji. Jedną z zalet tego języka jest jego obszerna biblioteka wbudowanych funkcji, w szczególności funkcji matematycznych. W tym samouczku szczegółowo omówimy różne funkcje matematyczne dostępne w C#, pomagając Ci zapoznać się z klasą Math i łatwo wykonywać powszechne równania matematyczne.

Pierwsze kroki

W C# klasa Math jest klasą statyczną dostępną w przestrzeni nazw System. Ta klasa zawiera mnóstwo metod zaprojektowanych, aby pomóc deweloperom w przeprowadzaniu operacji matematycznych bez potrzeby pisania ich od zera.

Jak uzyskać dostęp do klasy Math

Aby uzyskać dostęp do klasy Math, należy włączyć przestrzeń nazw System w swojej publicznej klasie Program. Oto jak to zrobić:

using System;

public class Program
{
    // Entry point of the program
    public static void Main()
    {
        // Your code goes here
    }
}

W metodzie public static void Main można wywołać dowolną funkcję z klasy Math, odwołując się do Math.<functionName> i używając parametru wyniku, który również może być liczbą zmiennoprzecinkową.

Podstawowe funkcje matematyczne

Spójrzmy na niektóre podstawowe funkcje matematyczne, które oferuje C#:

Wartość bezwzględna: Wartość bezwzględna wskazanej liczby to jej wartość bez znaku. Funkcja Math.Abs() przyjmuje liczbę i zwraca jej wartość bezwzględną.

double val = -10.5;
double absValue = Math.Abs(val); // Function returns absolute value
Console.WriteLine(absValue); // Output: 10.5

Pierwiastek kwadratowy: Aby znaleźć pierwiastek kwadratowy wskazanej liczby, użyj funkcji Math.Sqrt(). Ta funkcja oblicza pierwiastek kwadratowy i zwraca wartość zmiennoprzecinkową, jak pokazano w poniższym przykładzie:

double value = 16;
double sqrtValue = Math.Sqrt(value);
Console.WriteLine(sqrtValue); // Output: 4

Zaokrąglanie liczb: C# oferuje kilka funkcji do zaokrąglania liczb do najbliższej liczby całkowitej lub wskazanej liczby miejsc dziesiętnych. Funkcja Math.Round() zaokrągla wartość zmiennoprzecinkową do najbliższej liczby całkowitej:

double value = 10.75;
double roundedValue = Math.Round(value); // Rounds to the nearest whole number
Console.WriteLine(roundedValue); // Output: 11

Funkcje trygonometryczne i hiperboliczne

Oprócz podstawowych operacji arytmetycznych klasa Math w C# oferuje również szereg funkcji trygonometrycznych i hiperbolicznych.

Wartość funkcji sinus: Aby znaleźć wartość funkcji sinus określonego kąta (w radianach), użyj Math.Sin().

double angle = Math.PI / 2; // 90 degrees in radians
double sineValue = Math.Sin(angle);
Console.WriteLine(sineValue); // Output: 1

Funkcje hiperboliczne: Są one podobne do funkcji trygonometrycznych, ale są używane do równań hiperbolicznych. Kilka przykładów to Math.Sinh() (sinus hiperboliczny), Math.Cosh() (cosinus hiperboliczny) i Math.Tanh() (tangens hiperboliczny).

double value = 1;
double hyperbolicSine = Math.Sinh(value);
double hyperbolicCosine = Math.Cosh(value);
double hyperbolicTangent = Math.Tanh(value);

Zaawansowane funkcje matematyczne

Dla tych, którzy szukają bardziej zaawansowanych operacji:

Potęga: Funkcja Math.Pow() przyjmuje dwie liczby zmiennoprzecinkowe: podstawę i wykładnik. Zwraca ona liczbę podstawową podniesioną do określonej potęgi.

double baseNum = 2;
double exponent = 3;
double result = Math.Pow(baseNum, exponent);
Console.WriteLine(result); // Output: 8

Logarytm: C# oferuje funkcję Math.Log(), która oblicza logarytm naturalny (podstawy e) wskazanej liczby. Dodatkowo można określić podstawę przy użyciu Math.Log(number, specified base).

double value = 10;
double naturalLog = Math.Log(value); // Natural logarithm base e
double logBase10 = Math.Log(value, 10); // Base 10 logarithm

Complex Numbers in C#

Chociaż ten samouczek dotyczy głównie funkcji podstawowych i średnio zaawansowanych, warto zauważyć, że C# oferuje wsparcie dla liczb zespolonych.

Tworzenie liczby zespolonej: Użyj klasy Complex z przestrzeni nazw System.Numerics. Nie jest ona częścią klasy Math, ale jest niezbędna do operacji matematycznych z udziałem liczb zespolonych.

using System.Numerics;

Complex complexNumber = new Complex(2, 3); // Represents 2 + 3i

Funkcje konwersji w klasie Math

Często deweloperzy muszą konwertować pomiędzy różnymi typami wartości liczbowych:

Konwersja na liczbę całkowitą: Jeśli masz liczbę zmiennoprzecinkową i chcesz ją przekonwertować na liczbę całkowitą, usuwając jej wartość dziesiętną, użyj metody Convert.ToInt32().

double value = 10.99;
int intValue = Convert.ToInt32(value);
Console.WriteLine(intValue); // Output: 11 (rounds 10.99 to the nearest integer)

Dziesiętny na binarny: C# nie ma bezpośredniej metody w klasie Math do tego celu. Możesz jednak użyć funkcji Convert.ToString(value, 2) z przestrzeni nazw System.

int value = 42;
string binary = Convert.ToString(value, 2); // Converts 42 to binary
Console.WriteLine(binary); // Output: 101010

Błędy i obsługa wyjątków w funkcjach matematycznych

Podczas korzystania z funkcji matematycznych czasami można napotkać błędy, takie jak dzielenie przez zero. Ważne jest, aby radzić sobie z tymi potencjalnymi pułapkami:

Dzielenie przez zero: Użyj instrukcji warunkowej, aby sprawdzić dzielnik przed wykonaniem dzielenia.

double numerator = 10;
double denominator = 0;

if (denominator != 0)
{
    double result = numerator / denominator;
    Console.WriteLine(result);
}
else
{
    Console.WriteLine("Cannot divide by zero!");
}

Obsługa przepełnienia: Kiedy operacja matematyczna prowadzi do wyniku zbyt dużego dla jego typu danych, następuje przepełnienie. Użyj bloków checked, aby wychwycić ten wyjątek.

try
{
    checked
    {
        int result = checked(int.MaxValue + 1); // This will cause an overflow
    }
}
catch (OverflowException ex)
{
    Console.WriteLine("Overflow occurred: " + ex.Message);
}

Wprowadzamy Iron Suite: Potężna Suite dla programistów C#

Jak zagłębiamy się w możliwości C#, warto zauważyć, że ekosystem wokół tego języka programowania bardzo się rozwijał. Jednym z takich wkładów jest Iron Suite, wszechstronny zestaw narzędzi dostosowany do programistów C#. Oferuje on zestaw produktów, które mogą wzmocnić twoje aplikacje, zapewniając, że są one solidne i bogate w funkcje.

IronPDF

C# Matematyka (jak działa dla programistów) Rysunek 1 - IronPDF

Czy kiedykolwiek czułeś potrzebę pracy z plikami PDF w swoich aplikacjach C#? IronPDF for PDF Integration in C# Applications jest twoim głównym rozwiązaniem. Umożliwia on niezwykle łatwe tworzenie, edytowanie, a nawet wyodrębnianie zawartości z plików PDF. Kiedy połączysz to z funkcjami matematycznymi C#, możesz generować raporty, wykresy i inne wizualizacje matematyczne oraz bezproblemowo osadzać je w swoich dokumentach PDF.

Charakterystyczną cechą IronPDF jest jego HTML to PDF Conversion Feature, zachowującą wszystkie układy i style. Generuje pliki PDF na podstawie treści internetowych, odpowiednie do raportów, faktur i dokumentacji. Pliki HTML, adresy URL i ciągi znaków HTML można bez trudu konwertować do formatu PDF.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}

IronXL

C# Matematyka (jak działa dla programistów) Rysunek 2 - IronXL

Manipulacja danymi jest istotnym aspektem programowania, a jeśli chodzi o arkusze kalkulacyjne, IronXL for Excel Interop in C# pokrywa potrzeby. Niezależnie od tego, czy tworzysz, odczytujesz, czy edytujesz pliki Excel, IronXL integruje się bezproblemowo z C#. Dzięki mocy funkcji matematycznych C# możesz wykonywać obliczenia na swoich danych Excel bezpośrednio w ramach aplikacji.

IronOCR

C# Matematyka (jak działa dla programistów) Rysunek 3 - IronOCR

Optical Character Recognition (OCR) nie jest już futurystycznym konceptem, ale rzeczywistością dzięki IronOCR for Extracting Text from Images and PDFs. Jeśli masz aplikację zajmującą się obrazami lub skanowanymi dokumentami i chcesz wyodrębnić tekst, zwłaszcza dane liczbowe lub równania matematyczne, IronOCR w połączeniu z C# może bezproblemowo rozpoznać i przetłumaczyć je na dane użyteczne.

IronBarcode

C# Matematyka (jak działa dla programistów) Rysunek 4 - IronBarcode

W dzisiejszym świecie kody kreskowe odgrywają integralną rolę w identyfikacji produktów. Z IronBarcode for Generating and Reading Barcodes in C#, deweloperzy C# mogą łatwo generować, odczytywać i pracować z kodami kreskowymi. Może to być szczególnie użyteczne, jeśli rozwijasz systemy magazynowe lub sprzedażowe, gdzie obliczenia matematyczne i kody kreskowe się przeplatają.

Wnioski

C# Matematyka (jak działa dla programistów) Rysunek 5 - Licencja

Środowisko C# jest ogromne i potężne, a dzięki narzędziom takim jak Iron Suite możesz podnieść swoje aplikacje na nowe wyżyny. Należy zauważyć, że każdy produkt wchodzący w skład Iron Suite, czy to IronPDF, IronXL, IronOCR, czy IronBarcode, rozpoczyna się od licencji zaczynającej się od $999. Ponadto, dla tych, którzy chcą spróbować przed inwestycją, każdy produkt oferuje 30-dniowy okres próbny dla szerokich funkcji Iron Suite za cenę zaledwie dwóch produktów. Taka okazja nie tylko oferuje oszczędności kosztów, ale także zapewnia wszechstronny zestaw narzędzi do spełnienia różnych potrzeb rozwojowych.

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Dyrektor ds. technologii

Jacob Mellor jest Chief Technology Officer w Iron Software i wizjonerskim inżynierem, pionierem technologii C# PDF. Jako pierwotny deweloper głównej bazy kodowej Iron Software, kształtuje architekturę produktów firmy od jej początku, przekształcając ją wspólnie z CEO Cameron Rimington w firmę liczącą ponad 50 osób, obsługującą NASA, Teslę i światowe agencje rządowe.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta