Что делает этот калькулятор
Значащие цифры показывают, сколько информативных разрядов несёт число. Этот инструмент округляет любое значение x до выбранного количества значащих цифр n, а заодно представляет результат в научной записи, выдавая мантиссу и степень десяти. Он одинаково хорошо работает с очень большими числами, маленькими дробями и отрицательными значениями.
Как пользоваться
Введите число, которое хотите округлить, в первое поле, а количество значащих цифр — во второе (от 1 до 15). Нажмите «Рассчитать». В верхнем блоке появится округлённое значение, а таблица разложит его на мантиссу × 10^порядок — это удобный вид научной записи.
Разбор формулы
Главная идея — сдвинуть запятую так, чтобы перед ней оказалось ровно n значащих разрядов, округлить до ближайшего целого, а затем сдвинуть обратно. Если d — число целых разрядов в |x| (оно вычисляется как \(d = \lceil \log_{10}|x| \rceil\)), то мы умножаем на \(10^{\,n-d}\), округляем и делим на \(10^{\,n-d}\). Поскольку \(\log_{10}\) определяет порядок величины числа, одного такого масштабирования достаточно, чтобы автоматически обработать вход любого размера.
$$\begin{gathered} \text{Rounded} = \frac{\operatorname{round}\!\left( \text{Number} \cdot 10^{\,p} \right)}{10^{\,p}} \\[1.5em] \text{where}\quad p = \text{Sig. figs} - \left\lceil \log_{10}\left| \text{Number} \right| \right\rceil \end{gathered}$$
Разбор примера
Округлим 12345,678 до 3 значащих цифр. Здесь \(d = \lceil \log_{10}(12345{,}678) \rceil = 5\), поэтому степень масштабирования равна \(n - d = 3 - 5 = -2\), то есть множитель \(10^{-2} = 0{,}01\). Умножаем: \(12345{,}678 \times 0{,}01 = 123{,}45678\), округляем до \(123\), затем делим на \(0{,}01\) и получаем 12300. В научной записи это \(1{,}23 \times 10^4\).
Частые вопросы
Какие цифры считаются значащими? Значащими являются все ненулевые цифры, а также нули между ними и нули в конце после запятой. Нули в начале числа значащими не считаются.
Работает ли калькулятор с отрицательными числами? Да. Знак сохраняется; для определения порядка величины используется только модуль числа.
А что с нулём? У нуля нет определённого порядка величины, поэтому калькулятор просто возвращает 0 независимо от значения n.