Второй этап - циферки в сегментный код (с удалением старшего незначащего нуля, подстановкой знака - и запятой). Третий этап - отсылка данных в индикатор. И все на том массиве базируется.
Так что многократное обращение не столь уж и лишнее. Это ж десятипозиционный кракозябровый семисегментник в качестве индикатора, а не символьник или дисплей ПК.
Другое дело изменить алгоритм обработки с выделением цифирек для сотен тысяч - единиц.
То уж с математикой дружить надо (и жуткими формулами)....
В том тесте особо не до оптимизации было - сделано для получения наглядного результата и проверки части предположений "на будущее" (в том числе и по питанию). Датчик несколько лет вылеживался - мог и испортиться за то время.
Чего более конкретного чуток позже будет - как надумается чего бы надо от датчика получить и куды б его для того запихнуть.


