Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เมธอด Math.IEEERemainder() ใน C#

เมธอด Math.IEEERemainder() ใน C# คืนค่าเศษจากการหารตามมาตรฐาน IEEE 754 (ต่างจากตัวดำเนินการ % ปกติ)

ไวยากรณ์

public static double IEEERemainder(double dividend, double divisor);

ตัวอย่างที่ 1

using System;

public class Demo
{
    public static void Main()
    {
        double val1 = 90;
        double val2 = 7;
        
        // IEEE Remainder
        var rem = Math.IEEERemainder(val1, val2);
        Console.WriteLine(rem);
    }
}

ผลลัพธ์

-1

ตัวอย่างที่ 2: หารด้วยศูนย์

using System;

public class Demo
{
    public static void Main()
    {
        double val1 = 1;
        double val2 = 0;
        
        var rem = Math.IEEERemainder(val1, val2);
        Console.WriteLine(rem);
    }
}

ผลลัพธ์

NaN

ความแตกต่างจาก % (Modulo): IEEE Remainder = Dividend - (Divisor × Round(Dividend/Divisor)) ใช้การปัดเป็นจำนวนเต็มใกล้เคียง (Round to Nearest) ไม่ใช่การปัดทิ้ง (Truncate) เช่น 90/7 ≈ 12.857 → Round = 13 → 90 - 7×13 = -1