I tried this, to see what is going on ... @z doesn't change ...
DECLARE @num FLOAT = 1.0005
DECLARE @exponent AS INT = 0
declare @x float
declare @z float
WHILE @num - FLOOR(@num) > 0.000001
BEGIN
SET @exponent += 1
SET @num *= 10
set @x = FLOOR(@num)
set @z = @num - FLOOR(@num)
END