Passer au contenu du pied de page
.NET AIDE

C# Round to 2 Decimal Places (Comment ça fonctionne pour les développeurs)

L'arrondissement des nombres en programmation est une tâche courante, surtout lorsque vous travaillez avec des données financières ou des mesures nécessitant une précision jusqu'à un certain nombre de décimales. En C#, il existe plusieurs façons d'arrondir un nombre décimal ou un double à deux décimales. Ce tutoriel expliquera clairement les concepts et vous fournira des connaissances complètes sur la façon d'atteindre cette précision en utilisant C#. Nous examinerons les capacités de la bibliothèque IronPDF et les diverses méthodes et fonctions fournies par le langage C# pour manipuler les nombres décimaux à une précision spécifiée.

Comprendre les types de valeurs décimales et double en C#

Avant de plonger dans les techniques d'arrondissement des nombres, il est important de comprendre les types de nombres avec lesquels nous allons traiter. En C#, decimal et double sont deux types différents utilisés pour les valeurs numériques. Une variable decimal est généralement utilisée lorsque le plus haut niveau de précision est nécessaire, par exemple dans les calculs financiers. D'autre part, un résultat double est utilisé là où les calculs en virgule flottante sont suffisants et où la performance est un facteur plus critique que la précision exacte. Ces deux types peuvent être arrondis en utilisant des méthodes spécifiques dans la bibliothèque C#.

Utiliser Math.Round pour arrondir à deux décimales

La méthode Math.Round est l'approche la plus simple pour arrondir les valeurs décimales ou les valeurs doubles à un nombre spécifié de décimales. Vous pouvez également utiliser cette fonction mathématique pour arrondir les valeurs doubles à l'entier le plus proche. Cette méthode Math.Round est polyvalente car elle vous permet de spécifier combien de chiffres vous souhaitez conserver après le point décimal, et elle vous permet également de choisir la stratégie d'arrondissement si le nombre est exactement à mi-chemin entre deux intervalles.

Arrondir une valeur décimale à des décimales

Pour arrondir un nombre décimal à deux décimales, vous pouvez utiliser la méthode Math.Round qui prend deux paramètres : le nombre à arrondir et le nombre de décimales. Voici un exemple simple :

decimal d = 3.14519M; // decimal number
// Round the decimal value to two decimal places
decimal roundedValue = Math.Round(d, 2);
Console.WriteLine(roundedValue);  // Outputs: 3.15
decimal d = 3.14519M; // decimal number
// Round the decimal value to two decimal places
decimal roundedValue = Math.Round(d, 2);
Console.WriteLine(roundedValue);  // Outputs: 3.15
Dim d As Decimal = 3.14519D ' decimal number
' Round the decimal value to two decimal places
Dim roundedValue As Decimal = Math.Round(d, 2)
Console.WriteLine(roundedValue) ' Outputs: 3.15
$vbLabelText   $csharpLabel

Dans cet exemple, la valeur décimale 3.14519 est arrondie à 3.15. La méthode Math.Round prend le décimal d et l'arrondit à deux décimales.

C# Round to 2 Decimal Places (How It Works For Developers): Figure 1 - Rounding to Two Decimal Places Example Output

Arrondir une valeur double

L'arrondissement d'une valeur double fonctionne de manière similaire à l'arrondissement d'une valeur décimale. Voici le code comment vous pouvez arrondir un nombre double à deux décimales :

double num = 3.14519;
// Round the double value to two decimal places
double result = Math.Round(num, 2);
Console.WriteLine(result);  // Output: 3.15
double num = 3.14519;
// Round the double value to two decimal places
double result = Math.Round(num, 2);
Console.WriteLine(result);  // Output: 3.15
Dim num As Double = 3.14519
' Round the double value to two decimal places
Dim result As Double = Math.Round(num, 2)
Console.WriteLine(result) ' Output: 3.15
$vbLabelText   $csharpLabel

Ce fragment de code arrondit efficacement le nombre double 3.14519 à la valeur la plus proche avec deux décimales, 3.15. Le deuxième argument pour Math.Round spécifie que l'arrondissement doit être fait à deux décimales.

Gérer l'arrondissement au point milieu

Un aspect important de l'arrondissement est la manière de gérer les cas où le nombre est exactement au point milieu entre deux valeurs arrondies possibles. C# offre une option pour spécifier le comportement d'arrondissement à travers l'énumération MidpointRounding. Cela permet de contrôler la direction de l'arrondissement dans ces cas.

double midpointNumber = 2.345; // double value
// Round with a strategy that rounds midpoints away from zero
double midpointResult = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(midpointResult);  // Outputs: 2.35
double midpointNumber = 2.345; // double value
// Round with a strategy that rounds midpoints away from zero
double midpointResult = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(midpointResult);  // Outputs: 2.35
Dim midpointNumber As Double = 2.345 ' double value
' Round with a strategy that rounds midpoints away from zero
Dim midpointResult As Double = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero)
Console.WriteLine(midpointResult) ' Outputs: 2.35
$vbLabelText   $csharpLabel

C# Round to 2 Decimal Places (How It Works For Developers): Figure 2 - Midpoint Rounding to 2 Decimal Output

Dans l'exemple ci-dessus, MidpointRounding.AwayFromZero indique à la méthode d'arrondir le nombre à mi-point 2.345 au numéro le plus proche éloigné de zéro, donnant 2.35. Ceci est particulièrement utile dans les calculs financiers où l'arrondissement est couramment utilisé.

Utiliser IronPDF avec C# pour arrondir les nombres et générer des PDF

C# Round to 2 Decimal Places (How It Works For Developers): Figure 3 - IronPDF

IronPDF est une bibliothèque complète de génération de PDF spécialement conçue pour la plateforme .NET et écrite en C#. Elle est bien considérée pour sa capacité à créer des PDFs de haute qualité en rendant HTML, CSS et JavaScript, et des images. Cette capacité assure que les développeurs peuvent tirer parti de leurs compétences existantes en développement web pour la génération de PDF. IronPDF utilise un moteur de rendu Chrome pour produire des documents PDF parfaitement pixellisés, reflétant la mise en page vue dans les navigateurs web.

La caractéristique clé d'IronPDF est sa capacité de conversion de HTML en PDF, assurant que vos mises en page et styles sont préservés. Elle convertit le contenu web en PDFs, adaptés pour les rapports, factures, et documents. Vous pouvez facilement convertir des fichiers HTML, des URLs et des chaînes HTML en PDFs.

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
$vbLabelText   $csharpLabel

IronPDF peut être intégré de manière transparente avec C# pour gérer des tâches précises, telles que l'arrondissement de décimales à deux décimales avant de les incorporer dans un PDF. Cela est particulièrement utile dans les rapports financiers ou les factures où la précision numérique est importante.

Exemple : Génération d'un PDF avec des valeurs décimales arrondies

Dans cet exemple, nous créerons une simple application C# qui utilise IronPDF pour générer un document PDF contenant une liste de nombres arrondis à deux décimales. Cela démontre comment vous pouvez intégrer des calculs numériques à la génération de PDF dans un scénario réel.

Tout d'abord, vous devrez installer IronPDF. Vous pouvez le faire via NuGet :

Install-Package IronPdf

Une fois IronPDF installé, voici comment vous pouvez créer un PDF à partir de contenu HTML, y compris des nombres qui ont été arrondis à deux décimales :

using IronPdf;
using System;

class Program
{
    static void Main()
    {
        // Make sure to set the license key if using a trial or licensed version
        License.LicenseKey = "License-Key";

        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()
    {
        // Make sure to set the license key if using a trial or licensed version
        License.LicenseKey = "License-Key";

        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()
		' Make sure to set the license key if using a trial or licensed version
		License.LicenseKey = "License-Key"

		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
$vbLabelText   $csharpLabel

C# Round to 2 Decimal Places (How It Works For Developers): Figure 4 - PDF Output

Cet exemple montre comment vous pouvez combiner la précision des opérations mathématiques de C# aux capacités de génération de documents d'IronPDF pour créer des rapports PDF détaillés et précis. Que ce soit un résumé financier, un rapport technique, ou tout autre document où la précision numérique est importante, cette méthode garantira que vos données sont présentées clairement et correctement.

Conclusion

C# Round to 2 Decimal Places (How It Works For Developers): Figure 5 - Licensing

Arrondir des nombres à un nombre spécifié de décimales est un aspect fondamental du traitement des valeurs décimales et doubles en C#. Dans ce tutoriel, nous avons exploré comment arrondir à deux décimales en utilisant la fonction Math.Round. Nous avons également discuté comment gérer les situations où le nombre se situe précisément au milieu de deux nombres qui pourraient être arrondis. IronPDF propose un essai gratuit sur leur page de licences pour permettre aux développeurs d'explorer ses fonctionnalités avant de faire un achat. Si vous décidez que c'est l'outil approprié pour vos besoins, la licence pour un usage commercial commence à $799.

Questions Fréquemment Posées

Quel est le moyen le plus efficace d'arrondir les nombres à deux décimales en C# ?

Le moyen le plus efficace d'arrondir les nombres à deux décimales en C# est d'utiliser la méthode Math.Round, qui vous permet de spécifier le nombre de décimales et la stratégie d'arrondi.

Pourquoi choisir le décimal plutôt que le double pour les calculs financiers en C# ?

Les décimaux sont préférés aux doubles pour les calculs financiers en C# en raison de leur plus grande précision, cruciale pour manipuler de l'argent et d'autres opérations numériques précises.

Comment l'arrondi au milieu peut-il être contrôlé en C# ?

En C#, l'arrondi au milieu peut être contrôlé à l'aide de l'énumération MidpointRounding, qui vous permet de définir comment gérer les nombres qui se trouvent exactement à mi-chemin entre deux valeurs arrondies possibles.

Comment le contenu HTML peut-il être converti en PDF en C# ?

Vous pouvez convertir le contenu HTML en PDF en C# en utilisant IronPDF, qui rend efficacement des chaînes HTML, fichiers et pages Web en PDFs de haute qualité, en maintenant la mise en page et le style d'origine.

Qu'est-ce qui est nécessaire pour utiliser une bibliothèque C# pour la génération de PDF ?

Pour utiliser IronPDF pour générer des PDFs en C#, vous devez installer le package IronPDF via NuGet, qui fournit les outils nécessaires pour la création et la manipulation de PDFs.

Quelles méthodes peuvent être utilisées pour intégrer des nombres arrondis dans un PDF ?

Vous pouvez utiliser IronPDF pour intégrer des nombres arrondis dans un PDF en arrondissant d'abord vos nombres à l'aide de Math.Round puis en les incorporant sans problème dans votre contenu PDF.

Quels sont les avantages de l'utilisation d'IronPDF pour la génération de documents en C# ?

IronPDF est avantageux pour la génération de documents en C# car il permet la conversion de HTML en PDF tout en préservant les styles, prend en charge divers standards Web et permet l'intégration de données numériques précises.

Comment puis-je m'assurer de la bonne stratégie d'arrondi dans les applications financières ?

Pour garantir la bonne stratégie d'arrondi dans les applications financières, utilisez MidpointRounding.AwayFromZero avec Math.Round, qui arrondit les valeurs médianes vers l'extérieur de zéro, conformément aux pratiques d'arrondi financier standard.

Qu'est-ce qui doit être pris en compte lors de l'enregistrement d'un fichier PDF en C# ?

Lors de l'enregistrement d'un fichier PDF en C# généré par IronPDF, il est important d'utiliser la méthode SaveAs, en spécifiant le chemin de fichier souhaité et en vous assurant que le fichier est accessible aux utilisateurs concernés.

Comment fonctionne la licence pour l'utilisation d'IronPDF dans des projets commerciaux ?

Pour l'utilisation commerciale d'IronPDF, vous devez obtenir une licence, disponible à divers niveaux. Un essai gratuit est également disponible pour les développeurs afin d'évaluer les capacités du logiciel avant l'achat.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite