Persyaratan: Sering digunakan untuk pembulatan dan tidak terlalu sensitif terhadap persyaratan presisi.
Untuk mencapai pembulatan dua tempat desimal, pengembang menulis kode berikut,
Kodenya sangat sederhana, pengembangHasil sebenarnya adalah 12,12, yang bertentangan dengan hasil pembulatan yang diharapkan sebesar 12,13。
Alasan untuk hasil ini adalah bahwa Math.Round tidak menggunakan aturan pembulatan secara default, melainkan putaran untuk genap.
Bulatkan hingga lima untuk membuat pasangan
Apa yang disebut pembulatan enam hingga lima untuk membuat pasangan berarti bahwa setelah menentukan digit signifikan, jika digit signifikan berikutnya kurang dari atau sama dengan 4, itu dibulatkan ke bawah; jika lebih besar dari atau sama dengan 6, bulatkan ke atas dengan satu. Ketika digit signifikan berikutnya adalah 5,
- Jika angka sebelum 5 ganjil, bulatkan lima ke atas dan maju satu
- Jika 5 sebelum bilangan genap, lewati 5 (0 genap).
Secara statistik, pembulatan ke genap lebih akurat daripada pembulatan lima, karena ketika ada banyak perhitungan, pembulatan setiap lima menjadi satu dapat menghasilkan angka yang lebih besar.
Misalnya:
1,15 + 1,25 + 1,35 + 1,45 = 5,2
Jika digit signifikan adalah satu tempat desimal, hasilnya diperoleh dengan menggunakan prinsip pembulatan
1,2 + 1,3 + 1,4 + 1,5 = 5,4
Hasil yang diperoleh dengan membulatkan menjadi lima genap adalah
1,2 + 1,2 + 1,4 + 1,4 = 5,2
Ini menunjukkan bahwa aturan pembulatan menghasilkan hasil yang lebih tepat.
Matematika.Putaran
Jadi bagaimana Anda menggunakan Math.Round untuk mencapai pembulatan yang diharapkan?
Faktanya, Math.Round di C# menyediakan banyak metode kelebihan beban, termasuk dua metode:
Kedua metode menyediakan parameter ketiga yang disebut mode, yang merupakan variabel pencacahan MidpointRounding dengan dua nilai yang dapat dipilih
- AwayFromZero - pembulatan ke atas
- ToEven - pembulatan ke pembulatan genap
Jadi jika kita menginginkan hasil bulat yang ideal, kita dapat menggunakan kode berikut:
MidpointEnumeration Rounding, seperti yang ditunjukkan di bawah ini:
Referensi:Login hyperlink terlihat. |