.NET-HILFE

C# Round to 2 Decimal Places (Wie es funktioniert für Entwickler)

Veröffentlicht 29. April 2024
Teilen Sie:

Rundung von Zahlen in der Programmierung ist eine häufige Aufgabe, insbesondere wenn Sie mit Finanzdaten oder Messungen arbeiten, bei denen eine Genauigkeit bis auf eine bestimmte Anzahl von Dezimalstellen erforderlich ist. In C# gibt es mehrere Möglichkeiten, eine Dezimalzahl oder eine doppelte Zahl auf zwei Dezimalstellen zu runden. In diesem Tutorial werden die Konzepte klar erklärt und Sie erhalten umfassende Kenntnisse darüber, wie Sie diese Präzision mit C# erreichen können. Wir werden Folgendes prüfen IronPDF und verschiedene Methoden und Funktionen, die von der Sprache C# zur Verfügung gestellt werden, um Dezimalzahlen bis zu einer bestimmten Genauigkeit zu manipulieren.

Verstehen von Dezimal- und Doppelwerttypen in C##

Bevor wir uns mit dem Runden von Zahlen befassen, ist es wichtig zu verstehen, mit welchen Arten von Zahlen wir es zu tun haben werden. In C# sind decimal und double zwei verschiedene Typen, die für numerische Werte verwendet werden. Eine Dezimal-Variable wird in der Regel verwendet, wenn die höchste Genauigkeit erforderlich ist, z. B. bei Finanzberechnungen. Andererseits wird ein Doppel-Ergebnis verwendet, wenn Fließkommaberechnungen ausreichen und die Leistung ein entscheidenderer Faktor ist als die genaue Genauigkeit. Beide Typen können mit speziellen Methoden in der C#-Bibliothek gerundet werden.

Math.Round zum Runden auf zwei Nachkommastellen verwenden

Die Methode Math.Round ist die einfachste Methode, um Dezimalwerte oder Double-Werte auf eine bestimmte Anzahl von Dezimalstellen zu runden. Sie können diese mathematische Funktion auch verwenden, um Double-Werte auf die nächste Ganzzahl zu runden. Diese Math.Round-Methode ist vielseitig, da Sie angeben können, wie viele Stellen nach dem Dezimalpunkt beibehalten werden sollen, und Sie können auch die Rundungsstrategie wählen, wenn die Zahl genau in der Mitte zwischen zwei Intervallen liegt.

Runden eines Dezimalwerts auf Nachkommastellen

Um eine Dezimalzahl auf zwei Dezimalstellen zu runden, können Sie die Methode Math.Round verwenden, die zwei Parameter benötigt: die zu rundende Zahl und die Anzahl der Dezimalstellen. Hier ein einfaches Beispiel:

decimal d = 3.14519M; // decimal number
decimal roundedValue = Math.Round(d, 2);
Console.WriteLine(roundedValue);  // Outputs: 3.15
decimal d = 3.14519M; // decimal number
decimal roundedValue = Math.Round(d, 2);
Console.WriteLine(roundedValue);  // Outputs: 3.15
Dim d As Decimal = 3.14519D ' decimal number
Dim roundedValue As Decimal = Math.Round(d, 2)
Console.WriteLine(roundedValue) ' Outputs: 3.15
VB   C#

In diesem Beispiel wird der Dezimalwert 3,14519 auf 3,15 gerundet. Die Methode Math.Round nimmt den Dezimalwert d und rundet ihn auf zwei Nachkommastellen.

C# Runden auf 2 Dezimalstellen (Wie es für Entwickler funktioniert): Abbildung 1 - Rundung auf zwei Nachkommastellen Beispielausgabe

Runden eines doppelten Wertes

Das Runden eines Double-Wertes funktioniert ähnlich wie das Runden eines Dezimalwertes. Hier ist der Code, wie Sie eine doppelte Zahl mit einer mathematischen Funktion auf zwei Dezimalstellen runden können:

double num = 3.14519;
double result = Math.Round(num, 2); // round to 2 digits
Console.WriteLine(result);  // Output: 3.15
double num = 3.14519;
double result = Math.Round(num, 2); // round to 2 digits
Console.WriteLine(result);  // Output: 3.15
Dim num As Double = 3.14519
Dim result As Double = Math.Round(num, 2) ' round to 2 digits
Console.WriteLine(result) ' Output: 3.15
VB   C#

Dieser Codeschnipsel rundet die Double-Zahl 3,14519 mit dem Wert math.round auf die nächste Ganzzahl, 3,15. Das zweite Argument für Math.Round gibt an, dass die Rundung auf zwei Dezimalstellen erfolgen soll.

Handhabung der Mittelpunktsrundung

Ein wichtiger Aspekt der Rundung ist die Behandlung von Fällen, in denen eine Zahl genau in der Mitte zwischen zwei möglichen gerundeten Werten liegt. C# bietet die Möglichkeit, das Rundungsverhalten über das Enum MidpointRounding festzulegen. Dies ermöglicht in solchen Fällen die Kontrolle über die Rundungsrichtung.

double midpointNumber = 2.345; // double value format
double midpointResult = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(midpointResult);  // Outputs answer: 2.35
double midpointNumber = 2.345; // double value format
double midpointResult = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(midpointResult);  // Outputs answer: 2.35
Dim midpointNumber As Double = 2.345 ' double value format
Dim midpointResult As Double = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero)
Console.WriteLine(midpointResult) ' Outputs answer: 2.35
VB   C#

C# Runden auf 2 Dezimalstellen (Wie es für Entwickler funktioniert): Abbildung 2 - Midpoint Rundung auf 2 Dezimalstellen Ausgabe

Im obigen Beispiel weist MidpointRounding.AwayFromZero die Methode an, die Mittelpunktszahl 2,345 auf die nächste von Null entfernte Zahl zu runden, was zu 2,35 führt. Dies ist besonders bei finanziellen Berechnungen nützlich, bei denen häufig aufgerundet wird.

Verwendung von IronPDF mit C# zum Runden von Zahlen und Generieren von PDFs

C# Runden auf 2 Dezimalstellen (Wie es für Entwickler funktioniert): Abbildung 3 - IronPDF

IronPDF ist eine umfassende PDF-Erzeugungsbibliothek, die speziell für die .NET-Plattform entwickelt und in C# geschrieben wurde. Es ist bekannt für seine Fähigkeit, die hochwertige PDFs durch Rendering von HTML, CSS, JavaScript und Bilder. Diese Funktion gewährleistet, dass Entwickler ihre vorhandenen Webentwicklungskenntnisse für die PDF-Erstellung nutzen können. IronPDF nutzt eine Chrome-Rendering-Engine, um pixelgenaue PDF-Dokumente zu erstellen, die das Layout des Webbrowsers widerspiegeln.

Die wichtigsten Merkmale von IronPDF sind HTML zu PDFund stellt sicher, dass Ihre Layouts und Stile erhalten bleiben. Es wandelt Webinhalte in PDF-Dateien um, die sich für Berichte, Rechnungen und Dokumentationen eignen. Sie können HTML-Dateien, URLs und HTML-Strings problemlos in PDFs umwandeln.

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");
    }
}
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");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

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

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

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
VB   C#

IronPDF kann nahtlos in C# integriert werden, um präzise Aufgaben zu bewältigen, wie z. B. das Runden von Dezimalzahlen auf zwei Nachkommastellen, bevor sie in eine PDF-Datei eingebettet werden. Dies ist vor allem bei Finanzberichten oder Rechnungen nützlich, bei denen es auf numerische Genauigkeit ankommt.

Beispiel: Erzeugen einer PDF-Datei mit gerundeten Dezimalwerten

In diesem Beispiel erstellen wir eine einfache C#-Anwendung, die IronPDF verwendet, um ein PDF-Dokument zu erzeugen, das eine Liste von Zahlen enthält, die auf zwei Dezimalstellen gerundet sind. Dies zeigt, wie Sie numerische Berechnungen mit der PDF-Erstellung in einem realen Szenario integrieren können.

Zunächst müssen Sie IronPDF installieren. Sie können dies über NuGet tun:

Install-Package IronPdf

Sobald IronPDF installiert ist, können Sie aus HTML-Inhalten eine PDF-Datei erstellen, einschließlich Zahlen, die auf zwei Dezimalstellen gerundet wurden:

using IronPdf;
using System;
class Program
{
    static void Main()
    {
        License.LicenseKey = "License-Key";
        // Create a PDF document
        var Renderer = new ChromePdfRenderer();
        // Sample data that might come from a database or computation
        double initialValue = 2.345678;
        double roundedValue = Math.Round(initialValue, 2);
        // HTML content including the rounded value
        var htmlContent = $@"
            <html>
            <head>
                <title>PDF Report</title>
            </head>
            <body>
                <h1>Financial Report</h1>
                <p>Value after rounding: {roundedValue}</p>
            </body>
            </html>";
        // Convert HTML to PDF
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("Report.pdf");
        Console.WriteLine("PDF generated successfully.");
    }
}
using IronPdf;
using System;
class Program
{
    static void Main()
    {
        License.LicenseKey = "License-Key";
        // Create a PDF document
        var Renderer = new ChromePdfRenderer();
        // Sample data that might come from a database or computation
        double initialValue = 2.345678;
        double roundedValue = Math.Round(initialValue, 2);
        // HTML content including the rounded value
        var htmlContent = $@"
            <html>
            <head>
                <title>PDF Report</title>
            </head>
            <body>
                <h1>Financial Report</h1>
                <p>Value after rounding: {roundedValue}</p>
            </body>
            </html>";
        // Convert HTML to PDF
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("Report.pdf");
        Console.WriteLine("PDF generated successfully.");
    }
}
Imports IronPdf
Imports System
Friend Class Program
	Shared Sub Main()
		License.LicenseKey = "License-Key"
		' Create a PDF document
		Dim Renderer = New ChromePdfRenderer()
		' Sample data that might come from a database or computation
		Dim initialValue As Double = 2.345678
		Dim roundedValue As Double = Math.Round(initialValue, 2)
		' HTML content including the rounded value
		Dim htmlContent = $"
            <html>
            <head>
                <title>PDF Report</title>
            </head>
            <body>
                <h1>Financial Report</h1>
                <p>Value after rounding: {roundedValue}</p>
            </body>
            </html>"
		' Convert HTML to PDF
		Dim pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent)
		pdfDocument.SaveAs("Report.pdf")
		Console.WriteLine("PDF generated successfully.")
	End Sub
End Class
VB   C#

C# Runden auf 2 Dezimalstellen (Wie es für Entwickler funktioniert): Abbildung 4 - PDF-Ausgabe

Dieses Beispiel zeigt, wie Sie die Präzision der mathematischen C#-Operationen mit den Dokumentenerstellungsfunktionen von IronPDF kombinieren können, um detaillierte und genaue PDF-Berichte zu erstellen. Ganz gleich, ob es sich um eine Finanzübersicht, einen technischen Bericht oder ein anderes Dokument handelt, bei dem es auf numerische Genauigkeit ankommt, diese Methode stellt sicher, dass Ihre Daten klar und korrekt dargestellt werden.

Schlussfolgerung

C# Runden auf 2 Dezimalstellen (So funktioniert es für Entwickler): Abbildung 5 - Lizenzierung

Das Runden von Zahlen auf eine bestimmte Anzahl von Dezimalstellen ist ein grundlegender Aspekt beim Umgang mit Dezimal- und Doppelwerten in C#. In diesem Lernprogramm haben wir untersucht, wie man mit der Funktion Math.Round auf zwei Dezimalstellen runden kann. Wir haben auch besprochen, wie man mit Situationen umgeht, in denen die Zahl genau in die Mitte zwischen zwei Zahlen fällt, auf die gerundet werden könnte. IronPDF bietet eine kostenloser Test für Entwickler, um die Funktionen zu testen, bevor sie sich zum Kauf entscheiden. Wenn Sie sich entscheiden, dass es das richtige Werkzeug für Ihre Bedürfnisse ist, beginnt die Lizenzierung für die kommerzielle Nutzung bei 749 $.

< PREVIOUS
Factory Pattern C# (Wie es für Entwickler funktioniert)
NÄCHSTES >
C# Substring (Wie es funktioniert für Entwickler)

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 11,308,499 Lizenzen anzeigen >