Yeah, string stuff is likely to be slower. I've noticed these float errors before, and there really is nothing you can do about it. It's just a recurring math error. Mind you, Ross' double-integer method sounds promising... Plus it'll give you a greater number range, since normal floats only go to about 35,000...