Я застрял!
Когда я запускаю код, он повторяет 82374928408977024.
Но я точно знаю (или, по крайней мере, я уверен), что 15323523 * 2 + 82374928378329992 равно 82374928408977038.
Слишком большие строки? Кроме того, я хотел бы повторить результат в формате простого числа без научных обозначений.
<?php
$number = "15323523";
$result = $number * 2 + 82374928378329992;
echo sprintf('%f', $result);
?>
Большое спасибо всем, кто может мне помочь с этим.
82374928408977038
для представления требуется 56 бит, потому что его можно разделить на 2.
82374928408977024
может быть представлен как 2 ^ 7 * 643554128195133, для которого требуется только 50 битов, что соответствует 52 битам значимости и является ближайшим числом, которое может быть представлено.
Как примечание стороны, 82374928378329992
тоже не подходит
Других решений пока нет …