Apabila melakukan operasi bahagi di Golang, jika kedua-dua nombor adalah jenis integer, hasilnya akan jenis integer, iaitu bahagian perpuluhan terus dibuang dan hanya bahagian integer sahaja yang dikekalkan. Dalam kes ini, hasil pengiraan tidak dapat memenuhi keperluan sebenar. Oleh itu, semasa menjalankan operasi bahagi, beberapa helah diperlukan untuk mengendalikan keputusan dan mengekalkan bahagian perpuluhan. Artikel ini akan memperkenalkan beberapa kaedah untuk melakukan pengiraan bahagi di Golang dan mengekalkan bahagian perpuluhan.
1. Gunakan nombor titik terapung untuk pengiraan pembahagian
Di Golang, jenis nombor titik terapung boleh mewakili perpuluhan dan jenis integer boleh ditukar kepada jenis nombor titik terapung untuk melaksanakan operasi bahagi dan gunakan fungsi Printf untuk mengeluarkan perpuluhan. Contoh kod berikut menunjukkan cara menggunakan nombor titik terapung untuk melakukan pengiraan pembahagian dan mengekalkan bahagian perpuluhan:
a := 10.0 b := 3.0 result := a / b fmt.Printf("%.2f", result) //输出2位小数
Dalam kod di atas, a dan b ialah kedua-dua jenis nombor titik terapung dan hasilnya juga merupakan titik terapung jenis nombor Kekalkan nilai hasil 2 tempat perpuluhan dan output. Kaedah ini sangat mudah, tetapi kecekapan pengiraan yang sepadan adalah rendah dan tidak sesuai untuk pengiraan jumlah data yang besar.
2. Gunakan penukaran jenis untuk pengiraan pembahagian
Selepas pembahagi atau dividen ditukar kepada jenis float64, pengiraan pembahagian dilakukan. Contoh kod berikut menunjukkan cara menggunakan penukaran jenis untuk melakukan pengiraan pembahagian dan mengekalkan bahagian perpuluhan:
a := 10 b := 3 result := float64(a) / float64(b) fmt.Printf("%.2f", result) //输出2位小数
Dalam kod di atas, a dan b ditukar kepada jenis float64, nilai hasil diperoleh melalui pengiraan pembahagian , dan akhirnya hasilnya ialah Nilai dikekalkan kepada 2 tempat perpuluhan dan output. Kaedah ini lebih cekap dari segi pengiraan daripada kaedah titik terapung, tetapi masih agak rumit.
3. Gunakan perpustakaan matematik untuk pengiraan pembahagian
Perpustakaan matematik Golang menyediakan pelbagai fungsi untuk mengira nombor titik terapung, termasuk pembahagian. Contoh kod berikut menunjukkan cara menggunakan perpustakaan matematik untuk melakukan pengiraan pembahagian dan mengekalkan bahagian perpuluhan:
a := 10.0 b := 3.0 result := math.Round(a/b*100) / 100 fmt.Printf("%.2f", result) //输出2位小数
Dalam kod di atas, fungsi math.Round digunakan untuk mengembalikan integer terdekat dan mengekalkannya kepada dua tempat perpuluhan. Kaedah ini lebih mudah dan lebih cekap dari segi pengiraan daripada kaedah kedua.
Ringkasan
Apabila melakukan operasi bahagi di Golang, anda perlu memberi perhatian untuk mengekalkan bahagian perpuluhan. Ia boleh dilaksanakan menggunakan pelbagai kaedah seperti nombor titik terapung, penukaran jenis atau perpustakaan matematik Dalam aplikasi sebenar, kaedah yang paling sesuai boleh dipilih mengikut situasi. Apabila melakukan pengiraan data, cuba kurangkan bilangan pengiraan dan tingkatkan kecekapan pengiraan, supaya dapat mencapai fungsi yang diperlukan dengan lebih baik.
Atas ialah kandungan terperinci bahagian golang mengekalkan perpuluhan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!