Вы открыли для себя самое интересное с числами с плавающей запятой! Хитрость заключается в том, чтобы угадать, сколько цифр есть после плавающей запятой (не должно быть слишком точным!) И использовать это с format
для округления.
format "%.*g" [string length $a] [expr {fmod($a, 1.0)}]
Это дает 0.9999383
с вашими тестовыми данными, но при этом делает несколько предположений относительно ввода ...