goto NextStep;
=>
Continue (das Gegenstück zum
Break)
Ansonsten ist diese Schleife, mit dem exit am ende vollkommen vermurkst, wenn das Exit immer die Schleife beendet, ist das schonmal ein guter Hinweis, daß da was nicht stimmt.
Aber wurde ja nun schon umgeschrieben.
PS: Mit goto kann man auch rückwärts springen, was dann das Exit-while-Goto durch ein goto ersetzt hätte.