var Zahlen = [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; function ZahlenAusgabe(liste) { var s = ""; for (var i = 0; i < liste.length; i++) if (i == liste.length-1) s += (liste[i])+"\n"; else s += (liste[i]+", ")+"\n"; return s; }
ZahlenAusgabe(Zahlen);
ausführen
function ZufallsZahlen(min, max, n) { var Zahlen = []; for (var i = 0; i < n; i++) Zahlen[i] = Math.floor(Math.random()*(max-min+1)+min); return Zahlen; }
var ZahlenListe = ZufallsZahlen(1, 1000, 20); ZahlenAusgabe(ZahlenListe);
function BubbleSort(liste) { var h; for (var j = 0; j < liste.length-1; j++) for (var i = j; i < liste.length; i++) if (liste[i] < liste[j]) { h = liste[i]; liste[i] = liste[j]; liste[j] = h; } }
var ZahlenListe = ZufallsZahlen(1, 1000, 20); console.log("Unsortiert:" + ZahlenAusgabe(ZahlenListe)); BubbleSort(ZahlenListe); console.log("Sortiert:" + ZahlenAusgabe(ZahlenListe));
function BalkenDiagramm(canvas, turtle) { this.Rand = 50; this.MaxBreite = 400-2*this.Rand; this.MaxHoehe = 300-2*this.Rand; this.MinMax = function (liste) { var Ergebnis = [0, 0]; for (var 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; }; this.Balken = function(hoehe, breite) { turtle.forward(breite); turtle.left(90); turtle.forward(hoehe); turtle.left(90); turtle.forward(breite); turtle.left(90); turtle.forward(hoehe); turtle.left(90); turtle.forward(breite); }; this.Darstellung = function(liste) { var ExtremWert = this.MinMax(liste); var Min = ExtremWert[0]; var Max = ExtremWert[1]; var Breite = this.MaxBreite/liste.length; canvas.clear(); turtle.hide(); turtle.move(this.Rand, this.Rand+Max/(Max-Min)*this.MaxHoehe); turtle.right(90); for (var i = 0; i < liste.length; i++) this.Balken(liste[i]/(Max-Min)*this.MaxHoehe, Breite); }; return this; }
Ungeordnete Zufallszahlen:
Geordnete Zufallszahlen:
var ZahlenListe = ZufallsZahlen(1, 1000, 20); var BalkenDiagramm1 = new BalkenDiagramm(canvas1, turtle1); BalkenDiagramm1.Darstellung(ZahlenListe); BubbleSort(ZahlenListe); BalkenDiagramm2 = new BalkenDiagramm(canvas2, turtle2); BalkenDiagramm2.Darstellung(ZahlenListe);