Rumah pembangunan bahagian belakang tutorial php 两个FLOAT相加出现的奇怪现象~解决思路

两个FLOAT相加出现的奇怪现象~解决思路

Jun 13, 2016 am 10:08 AM
float printf quot

两个FLOAT相加出现的奇怪现象~~~~

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->list ( $usec, $sec ) = explode ( ' ', microtime () );printf("秒:%.16f", (float)$sec);printf("微秒:%.16f", (float)$usec);printf("相加:%.16f", ( float ) $usec + ( float ) $sec);
Salin selepas log masuk

输出结果是:
秒:1327048300.0000000000000000
微秒:0.9687510000000000
相加:1327048300.9687509536743164 

我知道浮点数是一个近似值,但是我现在打印$usec且保留小数点后16位的时候,它就是没有小数啊?那不就可以认为它就等于1327048300吗?
它两个相加为什么不是1327048300.9687510000000000呢??

谢谢!!

------解决方案--------------------
Warning
浮点数精度
显然简单的十进制分数如同 0.1 或 0.7 不能在不丢失一点点精度的情况下转换为内部二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10) 通常会返回 7 而不是预期中的 8,因为该结果内部的表示其实是类似 7.9999999999...。
这和一个事实有关,那就是不可能精确的用有限位数表达某些十进制分数。例如,十进制的 1/3 变成了 0.3333333. . .。

所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数或者 gmp 函数
------解决方案--------------------
连什么是有效数都弄不清楚,真不明白你们爹妈花许多钱供你们上大学是为什么
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah nilai maksimum terapung? Apakah nilai maksimum terapung? Oct 11, 2023 pm 05:54 PM

Nilai maksimum apungan: 1. Dalam bahasa C, nilai maksimum apungan ialah 3.40282347e+38 Menurut piawaian IEEE 754, eksponen maksimum jenis apungan ialah 127, dan bilangan digit mantissa ialah 23. Dengan cara ini, nombor titik terapung maksimum ialah 3.40282347 e+38. Dalam bahasa Java, nilai apungan maksimum ialah 3.4028235E+38. Dalam bahasa Python, nilai apungan maksimum ialah 1.7976931348623157e+308;

Apakah ketepatan apungan? Apakah ketepatan apungan? Oct 17, 2023 pm 03:13 PM

Ketepatan apungan boleh mencapai 6 hingga 9 tempat perpuluhan. Menurut piawaian IEEE754, bilangan digit bererti yang boleh diwakili oleh jenis apungan adalah lebih kurang 6 hingga 9 digit. Perlu diingatkan bahawa ini hanyalah ketepatan maksimum teori Dalam penggunaan sebenar, disebabkan ralat pembundaran nombor titik terapung, ketepatan jenis apungan selalunya lebih rendah. Apabila melakukan operasi nombor titik terapung dalam komputer, kehilangan ketepatan mungkin berlaku disebabkan oleh had ketepatan nombor titik terapung. Untuk meningkatkan ketepatan nombor titik terapung, anda boleh menggunakan jenis data ketepatan yang lebih tinggi, seperti dua kali ganda atau panjang.

Apakah panjang apungan pangkalan data? Apakah panjang apungan pangkalan data? Oct 10, 2023 pm 03:57 PM

Panjang apungan pangkalan data biasa ialah: 1. Panjang jenis apungan dalam MySQL boleh menjadi 4 bait atau 8 bait 2. Panjang jenis apungan dalam Oracle boleh 4 bait atau 8 bait. , Panjang jenis apungan dalam SQL Server ditetapkan pada 8 bait 4. Panjang jenis apungan dalam PostgreSQL boleh menjadi 4 bait atau 8 bait, dsb.

Apakah maksud float dalam bahasa C? Apakah maksud float dalam bahasa C? Oct 12, 2023 pm 02:30 PM

Terapung dalam bahasa C ialah jenis data yang digunakan untuk mewakili nombor titik terapung ketepatan tunggal Nombor titik terapung ialah nombor nyata yang diwakili dalam tatatanda saintifik dan boleh mewakili nilai yang sangat besar atau sangat kecil. Pembolehubah jenis apungan boleh menyimpan nilai dengan 6 digit bererti selepas titik perpuluhan Dalam bahasa C, jenis apungan boleh digunakan untuk mengendalikan dan menyimpan nombor titik apungan boleh digunakan untuk mewakili perpuluhan, pecahan, saintifik tatatanda, dsb. yang memerlukan perwakilan tepat, tidak seperti jenis integer, nombor titik terapung boleh mewakili nombor selepas titik perpuluhan, dan boleh melakukan empat operasi aritmetik pada perpuluhan.

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Apakah yang termasuk float32 bait? Apakah yang termasuk float32 bait? Oct 10, 2023 pm 04:07 PM

Bait float32 termasuk bit tanda, bit eksponen dan bit mantissa, dan digunakan untuk mewakili nombor titik terapung 32-bit. Pengenalan terperinci: 1. Bit tanda (1 bit), digunakan untuk mewakili tanda nombor, 0 mewakili nombor positif, 1 mewakili nombor negatif 2. Bit eksponen (8 bit), digunakan untuk mewakili bahagian eksponen a nombor titik terapung, melalui bit eksponen , anda boleh melaraskan julat saiz nombor titik terapung 3. Bit mantissa (23 bit) digunakan untuk mewakili bahagian mantissa nombor titik terapung, dan bit mantissa menyimpan; bahagian perpuluhan nombor titik terapung. Bit tanda menentukan tanda nombor titik terapung, dan bit eksponen dan bit mantissa bersama-sama menentukan saiz dan ketepatan nombor titik terapung.

Apakah masalah yang akan menyebabkan susun atur terapung? Apakah masalah yang akan menyebabkan susun atur terapung? Oct 10, 2023 pm 03:31 PM

Reka letak terapung boleh menyebabkan masalah seperti mengosongkan terapung, masalah pertindihan elemen, masalah pembalut teks dan masalah reka letak responsif. Pengenalan terperinci: 1. Kosongkan masalah terapung Apabila menggunakan susun atur terapung, elemen terapung akan terlepas daripada aliran dokumen, yang mungkin menyebabkan bekas induk tidak dapat membungkus elemen terapung dengan betul bekas induk akan runtuh, menyebabkan kekacauan reka letak;

Apakah nilai atribut float? Apakah nilai atribut float? Oct 10, 2023 pm 02:03 PM

Nilai atribut apungan termasuk kiri, kanan, tiada, warisi, clearinline-start dan inline-end. Pengenalan terperinci: 1. kiri, elemen terapung ke kiri, iaitu, elemen akan berada sedekat mungkin dengan sebelah kiri bekas, dan elemen lain akan mengelilinginya di sebelah kanan 2. kanan, elemen terapung ke kanan, iaitu, elemen akan berada sedekat mungkin dengan bekas Di sebelah kanan, elemen lain akan mengelilinginya di sebelah kiri 3. Nilai lalai tiada, elemen tidak akan terapung, dan akan disusun mengikut aliran dokumen biasa, dsb.

See all articles