עיגול מספרים

C#:
עיגול מספרים

איך לעשות:

הנה הכרטיס המושלם לעיגול מספרים ב-C#:

using System;

public class RoundingExamples
{
    public static void Main()
    {
        double originalNumber = 123.4567;

        // עיגול למספר שלם הקרוב ביותר
        double rounded = Math.Round(originalNumber);
        Console.WriteLine(rounded); // פלט: 123

        // ציון מספר המקומות העשרוניים
        double roundedTwoDecimalPlaces = Math.Round(originalNumber, 2);
        Console.WriteLine(roundedTwoDecimalPlaces); // פלט: 123.46

        // עיגול למעלה בלי תלות בספרה הבאה
        double roundedUp = Math.Ceiling(originalNumber);
        Console.WriteLine(roundedUp); // פלט: 124

        // עיגול למטה בלי תלות בספרה הבאה
        double roundedDown = Math.Floor(originalNumber);
        Console.WriteLine(roundedDown); // פלט: 123
    }
}

צלילה עמוקה

בימים ההם, עיגול היה משימה פשוטה לקיצוץ עלויות חישוב. כל מחזור ספירה נספר, וקיצוץ מספרים חסך זמן יקר. קפיצה ל-C# המודרני, והעניין הוא לנהל כפולים ועשרוניים בעלי נטייה נודעת לשגיאות דיוק וחוסרים בהצגה.

מעבר ל-Math.Round, Math.Floor ו-Math.Ceiling, ה-enumeration MidpointRounding מאפשר לנו לקבוע את גורל הספרות המרכזיות העניות - זהו צומת הדרכים בין כללי הבנקאות להוגנות של “עגל חצי למעלה”.

לקהלים קשים יותר, כמו יישומי מתמטיקה או פיננסים רציניים, יש לנו את decimal על פני double, מקטין דרמה של עיגול על ידי הצעת דיוק גבוה יותר - פחות עיגולים, פחות בעיות.

ראו גם