Fredo: 2mal for

Hey Leute,

Ich hab ein Problem.
Und zwar hätt ich gern, dass in der Methode
public void paint(Graphics g)
hintereinander 2 for-Schleifen ausgeführt werden.

Java führt aber nur eine aus und hört dann auf.
Was soll ich machen? Ich hab schon versucht die zweite for-Schleife in die erste zu schreiben, aber da ist auch nichts passiert.

Hier der nötige Quelltext-Auszug:

public void paint(Graphics g) {

for ( int i = 100; i <= 200 ; i+=1){

//Laufbahn1
       double LB1y = Math.sqrt(500*i-50) + 50;   //LB:Laufbahn
       int LB1y2 = (int)LB1y;

g.fillRect(i,LB1y2,20,20);

}

for ( int n = -100; n>= 200 ; n--){

//Laufbahn2
       double LB2y = -(Math.sqrt(500*n-50) + 50);
       int LB2y2 = (int)LB2y;

g.fillRect(n,LB2y2,20,20);

}
  }

Danke schonmal Fredo

  1. Hi,

    vielleicht hab ich grad n Denkfehler, aber deine 2. Schleife ist eine Endlosschleife oder? Zaehlst Du nicht von -100 solange runter bis du groesser/gleich 200 bist?

    1. Hi,

      vielleicht hab ich grad n Denkfehler, aber deine 2. Schleife ist eine Endlosschleife oder? Zaehlst Du nicht von -100 solange runter bis du groesser/gleich 200 bist?

      Sorry hab mich nur verschrieben ist eig -200!

      Bringt aber trotzdem nichts..

      Danke trotzdem

      MfG Fredo

  2. Aloha!

    In Deiner zweiten Schleife steckt ein Fehler:

    for ( int n = -100; n>= 200 ; n--){

    Setze n auf -100. Okay.
    Solange n größer oder gleich +200 ist, ... Ist nicht der Fall, also steigt Java hier aus.

    Und wenn es das nicht täte, hättest Du hier:

    //Laufbahn2
           double LB2y = -(Math.sqrt(500*n-50) + 50);

    ein Problem, denn 500 mal was Negatives minus 50 ist wieder negativ, also kannst Du daraus nicht die Quadratwurzel ziehen.
    Schau Dir also noch mal die ganzen Vorzeichen an.

    Viele Grüße vom Længlich

  3. Habs schon danke...

  4. Kann mir einer sagen wie ich einen Punkt zeichnen kann der sich zum beispiel im Kreis bewegt??

    Muss ich jedesmal neu zeichnen und löschen oder geht das auch simpler??

    ich kann leider setLocation auf keine Zeichnung anwenden oder??

    MfG Fredo