Hallo wendtdir,
bitte benutze die Code Tags um Code zu psoten, damit bleibt Dieser dann auch leserlich.
Zum Problem: Das ";" hinter der if (Bedingung) schient nicht korrekt zu sein (zu viel). Der Compiler meckert es ggf nicht an, weil er nicht auf Logik prüfen kann, sondern nur auf die Syntax - und die ist richtig. Denn jetzt "denkt" der Compiler "das war schon alles hinter der Bedingung.
Merke: wenn man nur eine einzige Zeile als Anweisung hätte, kann man auch ohne geschweifte Klammern schreiben, muss dann aber zwingend in (der gleichen Zeile wie die Bedingung steht*) das Semikolon setzen. Genau das hast du getan. Dem Compiler interessiert es nicht ob es logisch für Dich korrekt ist - oder nicht.
Wenn das Programm also nicht noch mehr wesentliche Fehler enthält, sollte es nach Berichtigung des ";" das tun was Du möchtest. Mal abgeseh davon das der Moment des Rückwärts fahrens praktisch vielleciht etwas zu kurz sein könnte. Optional würde ich der alternativ Anweisung komplett in ein else {} verpacken.
Viele Grüße
Jörg
Lesezeichen