Mencapai Ketepatan Berganda dalam Bahagian Integer C#
Cabaran:
Bagaimanakah kita boleh mendapatkan hasil titik terapung berketepatan dua apabila membahagikan dua integer dalam C#?
Penyelesaian:
Kuncinya ialah dengan secara eksplisit menghantar sekurang-kurangnya satu daripada operan integer kepada dua kali sebelum melakukan pembahagian. Ini memaksa operasi bahagi dijalankan menggunakan aritmetik titik terapung, menghasilkan hasil berganda.
<code class="language-csharp">double num3 = (double)num1 / num2; </code>
Dalam contoh ini, num1
dilemparkan kepada dua kali ganda. Sistem jenis C# kemudiannya akan mempromosikan num2
kepada dua kali ganda sebelum pembahagian, memastikan hasil ketepatan dua kali ganda. Sebagai alternatif, anda boleh menghantar kedua-duanya:
<code class="language-csharp">double num3 = (double)num1 / (double)num2;</code>
Adalah penting untuk ambil perhatian bahawa jika satu atau kedua-dua operan sudah berganda, C# secara automatik melakukan pembahagian berganda, menghasilkan hasil berganda tanpa pemutus eksplisit.
<code class="language-csharp">double num1 = 10.0; int num2 = 5; double num3 = num1 / num2; // num3 will be a double</code>
Bacaan Selanjutnya:
Untuk pemahaman yang lebih mendalam tentang tuangan jenis dan aritmetik titik terapung dalam C#, rujuk sumber dalam talian seperti Dot Net Perls.
Atas ialah kandungan terperinci Bagaimanakah Saya Mendapat Keputusan Berganda Apabila Membahagikan Dua Integer dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!