Problem polega na tym, że odczyt wartości z inputa wykonuje się tylko raz, podczas ładowania strony, a później po każdym kliknięciu w przycisk korzystasz z tej samej, wtedy odczytanej wartości. A trzeba zauważyć, że podczas pierwszego załadowania strony to pole jest puste, więc parseInt() zwróci NaN.
Żeby to naprawić, przenieś linię:
var dystans = document.getElementById("kilometry").value;
do wnętrza funkcji pokazTekst().
Wtedy wartość zmiennej dystans będzie zawsze aktualna