Tag Math.Round

[.NET] ปัญหาราวๆ กับตัวเลขจอมแสบ

หากได้ทำงานเกี่ยวกับระบบด้วยการเงินแล้วเนี่ย ตัวเลขสำคัญมากนะครับ ปัญหาของผมเกิดจากการพัฒนาระบบงานบน .NET ด้วย C# แล้วต้องไปเทียบตัวเลขกับ ระบบงานที่เป็น VB6 แล้วปรากฏว่า มันหายไป 0.01 เลขปริศนาที่หายไป แต่ฝ่ายบัญชีไม่ยอมมมมมม ถ้าหายไปสัก 50 ล้าน มันยังหาได้ง่ายกว่าเลย แล้วใครหละที่เป็นโจร ? จริงแล้วมันเป็นปัญหาที่สะสมมานานตั้งแต่ของ VB6 ที่มีการปัดทศนิยมเศษ 5 แปลกๆ ทำให้ทีมที่ทำระบบเดิมในยุคนั้นมีการ Custom Function ขึ้นมาแก้ปัญหาจุจิกนี้ โดยเฉพาะครับ ซึ่งมีแนวคิดว่าเจอ 5 ปัดขึ้น สำหรับแนวคิดนี้นิยมใช้ในการบัญชี การเงินครับ หลังจากดู Legacy Code เรามาดูอัลกอริทึมที่ VB6…