Bergervei/Javascript-Spielwiese

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Javascript</language>
== Gebrauch des Smileys ==
<code id="575e4fe7ef3fd">
function ggT(m, n) {
 if (n == 0)
  return m;
 else
  return ggT(n, m % n);
}
</code>

<check execute="(ggT(123, 69) == 3) && (ggT(9797, 303) == 101) && (ggT(31, 5) == 1)">
true
</check>

<run id="575e4fe7ef477">
ggT(123, 9);
</run>

== Turtlegrafik ==

<code id="57617d4f30174" hidden>
function center(turtle) {
 turtle.move(200, 150);
}

function black(turtle) {
 turtle.penColor(0, 0, 0);
}

function red(turtle) {
 turtle.penColor(255, 0, 0);
}

function brown(turtle) {
 turtle.penColor(100, 50, 0);
}

function orange(turtle) {
 turtle.penColor(255, 100, 0);
}

function yellow(turtle) {
 turtle.penColor(255, 200, 0);
}

function green(turtle) {
 turtle.penColor(0, 255, 0);
}

function blue(turtle) {
 turtle.penColor(0, 0, 255);
}

function pink(turtle) {
 turtle.penColor(200, 50, 200);
}
</code>

<code id="57618d00e9982">
var farbliste = ["red", "orange", "yellow", "green", "blue", "pink"];

function n_eck(turtle, x, n) {
 var winkel = 360 / n;
 for (var i = 1; i <= n; i++) {
  turtle.forward(x);  
  turtle.right(winkel); 
 }
}

function farbstern(turtle, x, n, m) {
 var winkel = 360 / m;
 var farbe;
 for (var i = 1; i <= m; i++) {
  farbe = farbliste[Math.floor((i - 1) * farbliste.length / m)];
  switch (farbe) {
   case "red":
    red(turtle); break;
   case "brown":
    brown(turtle); break;
   case "orange":
    orange(turtle); break;
   case "yellow":
    yellow(turtle); break;
   case "green":
    green(turtle); break;
   case "blue":
    blue(turtle); break;
   case "pink":
    pink(turtle); break;
   default:
    black(turtle); break;
  }
  n_eck(turtle, x, n);
  turtle.right(winkel);
 }
}
</code>

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

<run id="57618d00e99ff">
canvas1.clear(); 
turtle1.move(200, 150);
farbstern(turtle1, 75, 5, 55);
</run>

<code id="5b0c70d02658f">
function kreis(turtle, x, y, r) {
 var winkel = 180 / r / Math.PI;
 var n = 360 / winkel;
 turtle.move(x - r, y);
 for (var i = 1; i <= n; i++) {
  turtle.forward(1);
  turtle.right(winkel);
 }
}
</code>

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

<run id="5b0c70d026631">
canvas2.clear();
kreis(turtle2, 200, 150, 50);
</run>