В примере используются 100 GB в десятичном определении и устойчивая скорость 100 Мбит/с с десятичной приставкой «мега». Это арифметика идеальной линии, а не наблюдение за загрузкой или обещание провайдера. DownloadTime не тестирует соединение, не добавляет процент накладных расходов, не проверяет сервер и не прибавляет длительность к часам устройства. Определения единиц должны оставаться явными: 100 GiB — больший объём и другой результат, хотя число 100 выглядит так же.

Переведите 100 GB в точное число бит

Один десятичный гигабайт равен ровно 1 000 000 000 байт. Значит, 100 GB — это 100 000 000 000 байт. В одном байте ровно восемь бит, поэтому размер передачи равен 800 000 000 000 бит. Введённые 100 Мбит/с — это 100 000 000 бит/с. Запись обеих величин в битах убирает внешнее сходство GB и Мбит/с и показывает множитель восемь. Промежуточные значения — целые, двоичное округление с плавающей точкой не требуется.

Разделите общее число бит на устойчивые биты в секунду

Точный расчёт: 800 000 000 000 бит ÷ 100 000 000 бит/с = 8 000 секунд. Частное уже целое, поэтому осторожное округление до следующей секунды ничего не меняет. В 8 000 секундах есть два полных часа, они занимают 7 200 секунд. Остаток 800 секунд содержит 13 полных минут, то есть 780 секунд, и ещё 20 секунд. Читаемая идеальная длительность — 2 часа 13 минут 20 секунд.

Сравнивайте результат только при тех же единицах

Если источник на самом деле указывает 100 GiB, размер равен 107 374 182 400 байт, а идеальная длительность при 100 Мбит/с — 8 589,934592 секунды, то есть осторожно 8 590 целых секунд. Если приложение показывает 100 MB/с, а не 100 Мбит/с, численно такая скорость в байтах в восемь раз больше. Это другие сценарии, а не поправки к текущему. Реальная передача всё равно может идти дольше, если введённая устойчивая скорость не сохраняется. Пример задаёт только прозрачную математическую базу.