Das Problem liegt wohl hauptsächlich in der Anzeige, die die sprintf erzeugt wird.
Beispiel für Fehler: lapPerFuel enthält bereits "4.5". Wird jetzt ein "." eingegeben, kommt es zu einem Fehler.
TypeError: [sprintf] expecting number but found string
sprintf_format