Ты должен иметь два типа значения одновремено, как число и как текст в разных переменных. Т.е. цифровое и визуальное. И перед выводом на экран из цифрового получаешь визуальное и корректируешь его для правильного отображения на экране. Далее расписывать не буду. Сам думай-осмысливай.