Bergervei/Java-Turtle-Test

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Java</language>
<eval id="4d053667f21e8">
int[] Zahlen = {1,2,3,4,5,6,7,8,9};
Zahlen[2]; 
</eval>

<code id="4d053667f2074">
public void ZahlenAusgabe(int[] liste) { 
 for (int i = 0; i < liste.length; i++)
  System.out.println("Element "+i+" = "+liste[i]);
}
</code>

<eval id="4d053667f2240">
ZahlenAusgabe(Zahlen);
</eval>

<code id="4d053667f20de">
public int[] ZufallsZahlen(int min, int max, int n) { 
 int[] Zahlen = new int[n]; 
 for (int i = 0; i < n; i++)
  Zahlen[i] = (int)(Math.random()*(max-min+2)+min-1);
 return Zahlen;
}
</code>

<eval id="4d053667f22a2">
ZahlenAusgabe(ZufallsZahlen(-10, 10, 30));
</eval>

<code id="4d053667f2157">
Turtle BalkenTurtle = new Turtle(1);

double Rand = 50;
double MaxBreite = 400-2*Rand;
double MaxHoehe = 300-2*Rand;

public int[] MinMax(int[] liste) {
 int[] Ergebnis = new int[2];
 Ergebnis[0] = 0;
 Ergebnis[1] = 0;
 for (int i = 0; i < liste.length; i++) {
  if (Ergebnis[0] > liste[i]) Ergebnis[0] = liste[i];
  if (Ergebnis[1] < liste[i]) Ergebnis[1] = liste[i];
 }
 return Ergebnis;
}

public void Balken(double hoehe, double breite) {
 BalkenTurtle.forward(breite); BalkenTurtle.left(90); 
 BalkenTurtle.forward(hoehe); BalkenTurtle.left(90);
 BalkenTurtle.forward(breite); BalkenTurtle.left(90);
 BalkenTurtle.forward(hoehe); BalkenTurtle.left(90);
 BalkenTurtle.forward(breite); 
}

public void BalkenDiagramm(int[] liste) {
 double Breite = MaxBreite/liste.length;
 double[] ExtemWert = new double[2]; ExtremWert = MinMax(liste);
 double Min = ExtremWert[0];
 double Max = ExtremWert[1]; 
 canvas.clear();
 BalkenTurtle.hide();
 BalkenTurtle.move(Rand,Rand+Max/(Max-Min)*MaxHoehe);
 BalkenTurtle.right(90);
 for (int i = 0; i < liste.length; i++)
  Balken(liste[i]/(Max-Min)*MaxHoehe, Breite);
 System.out.println("ok");
}
</code>

<eval id="4d053667f232a">
ZahlenAusgabe(MinMax(ZufallsZahlen(-100, 100, 1000)));
</eval>

<canvas w="400" h="300"></canvas>

<eval id="4d053667f238e">
BalkenDiagramm(ZufallsZahlen(-1000, 1000, 30));
</eval>