Add more comments to explain the code in more detail
Some small refactorings to simplify some code
Handle the incomplete numbers formed while entering numbers like 0.0000001
Limit the length of a number that can be entered to MAX_PRECISION