Почему перевод единиц — задача точности
Физические величины описывают одну и ту же реальность в разных шкалах. Длина остаётся длиной, будь то метры или футы; температура — термодинамическое состояние, независимо от Celsius или Fahrenheit. Ошибки возникают при неверном коэффициенте, смешении аффинных шкал (температура) с отношениями (длина, масса) или путанице двоичных и десятичных префиксов объёма данных. Этот хаб объединяет конвертеры с фиксированными известными соотношениями, чтобы переходить между распространёнными единицами без самодельных таблиц.
Для отдельного моста длин, постоянно нужного в строительстве и travel-заметках, используйте From feet to meters.
Шкалы отношений и аффинные шкалы
Шкалы отношений (длина, масса, объём, размер данных) имеют истинный ноль. Преобразование — умножение на постоянный коэффициент. Удвоение метров удваивает футы.
Аффинные шкалы (Celsius, Fahrenheit, Kelvin) требуют и масштаб, и смещение. Температуру нельзя переводить одним умножением: (0^\circ\mathrm{C}) — не (0^\circ\mathrm{F}), и отношения значений в Celsius физически не столь осмысленны, как отношения в kelvin. Temperature converter держит эти смещения явными.
Смешение двух моделей — классический баг: относиться к °C как к единице отношений или забывать, что Kelvin и Celsius делят размер градуса, но не ноль.
Длина, вес и объём
В быту повторяется небольшой набор: метр, километр, миля, фут; килограмм, грамм, фунт; литр, миллилитр, галлон (US customary, если не указано иное). Точные определения — в метрологических стандартах. Международный фут ровно 0,3048 м, поэтому футы→метры — чистое умножение. Мили и километры различаются на 1,609344 км на международную милю.
Universal converter переключает группы длины, веса и объёма, когда нужно больше одного ярлыка. From feet to meters остаётся узким путём для частой пары imperial→SI. Кухонные чашки и региональные галлоны могут расходиться — указывайте, какой галлон имеете в виду, когда точность важна вне этого набора.
Температура и размер данных
Эталонные формулы: (F = C \times 9/5 + 32); (C = (F - 32) \times 5/9); (K = C + 273.15). Абсолютный ноль — (0,\mathrm{K}). Лучше считать в одном выражении; округление промежуточных шагов может сдвинуть (100^\circ\mathrm{C}) ↔ (212^\circ\mathrm{F}) на ulp.
Интерфейсы хранения исторически путаны. Data size converter использует двоичные (1024) коэффициенты: 1 KB = 1024 B и далее до TB. На наклейках дисков часто десятичные GB стиля (10^9), а ОС показывает gibibyte-суммы — расхождение чаще из-за основания, а не «битого» диска. Имена IEC (KiB, MiB, GiB) делают двоичный смысл явным.
Подинструменты семейства
- From feet to meters — международный фут в метры.
- Universal converter — длина, вес или объём; выбор исходной и целевой единицы.
- Temperature converter — Celsius ↔ Fahrenheit ↔ Kelvin.
- Data size converter — байты до терабайт с двоичными коэффициентами 1024.
Гигиена, что когда использовать, ограничения
В инженерных записях предпочитайте SI; переводите на границах для тех, кто думает футами и фунтами. Храните полную точность в промежуточных; округляйте один раз для отображения. Не подавайте составные строки вроде 5ft 7in в одно скалярное поле без парсера длины.
Быстрая imperial-длина → feet-to-meters. Смешанный DIY / путешествия / кухня → universal. Погода и духовки → только температура. RAM и файлы → размер данных, помня про 1024 против маркетинговых десятичных GB.
Покрытие — базовый набор, не полная библиотека единиц. Бытовой «вес» трактует фунт/килограмм как повседневную массу/вес. Валюта, часовые пояса и календари — другие домены. Эти калькуляторы — обычные числовые преобразования, им не нужны медиакодеки, но сверяйтесь с первичными стандартами, когда перевод влияет на безопасность, медицину, авиацию или legal metrology.
Встраивание той же математики
Храните каноническое значение SI (или kelvin/byte) и форматируйте для UI. Конвертируйте на границах ввода/вывода; не накапливайте туда-обратно через Fahrenheit. Для размера данных отдавайте сырые bytes целым числом. Тестовые векторы: (1,\mathrm{ft} = 0.3048,\mathrm{m}); (0^\circ\mathrm{C} = 32^\circ\mathrm{F} = 273.15,\mathrm{K}); (1024^3) bytes = один двоичный шаг gigabyte.
Итог
Перевод единиц — умножение для шкал отношений и масштаб плюс смещение для температуры, плюс явный выбор основания для цифрового хранения. Хаб даёт ярлык футы→метры, групповой universal converter, температурный инструмент с аффинными преобразованиями и двоичный data size converter. Выбирайте по виду величины, округляйте один раз для людей и храните канонический SI (или сырые bytes) в любой системе учёта.