Frage von MrRayman, 34

Syntaxfehler in Java: Was habe ich falsch gemacht?

Ich habe dieses Programm geschreiben: Jedoch habe ich einen Fehler in den fettgeschriebenen (oder mit* gekennzeichneten) Zeile einen Fehler gemacht.

Ich habe ein " ; " vergessen. Wenn ich es hin setzte, will er das else in der Zeile darunter nicht annehmen. Was kann ich alles falsch gemacht haben?

   else //Wenn S_Kurve wahr ist
    {
        
        while ((HPosition < Abstand/2) || BeschleunigtNoch(HZeit))  //Annäherung an den halben Abstand und Beschleunigt noch
        {
                HZeit = (HZeit + Zeitschritt);
                HPosition = (S_KurveWeg(HZeit));
        }
        
      **If(BeschleunigtNoch(HZeit))**  //Fall1: Auto hat auf der Hälte des Weges noch nicht seine maximale Geschindigkeit erreicht
        {
            return(2*HZeit);//Nur die Hälte des Weges wurde berechent
        }
        
        else //Fall2: Auto erreicht schon vor der Hälte des Weges die Maximale Geschwindigkeit
        {
            while (HPosition < Abstand/2)
            {
                HZeit= (HZeit + Zeitschritt);
                HPosition = HPosition + (vmax*Zeitschritt);
            }
            return (2*HZeit);//Nur die Hälte des Weges wurde berechnet
        }
        
    }
Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von Suboptimierer, 34

Ist Java so tolerant oder muss If nicht klein geschrieben werden?

Kommentar von MrRayman ,

Danke, genau das war es.

Kommentar von Suboptimierer ,

Bitteschön!

Kommentar von IDC16 ,

x3

Antwort
von spaghetticode, 22

Benutze bitte die Codeformatierung (die beiden Dreicksklammern über dem Editor). Gib bitte den ganzen Code an. Gib bitte die Fehlermeldung(en) des Compilers an. Gibt es keine Fehlermeldung, erläutere uns, welche Daten du dem Programm mitgibst, welches Verhalten du erwartest, und welches Verhalten stattdessen eintritt.

Antwort
von Allw1553nd3r, 15

Das {while ist aus kommentiert, da der // hinter dem else den ganzen Rest der Zeile betrifft.

Antwort
von scrysis, 27

Glaub du hast beim ersten while einer runde Klammer anstatt einer geschweiften

Keine passende Antwort gefunden?

Fragen Sie die Community