PMG2224 1/Zusatz Test

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Javascript</language>
'''Bearbeiten Sie die Aufgaben. Kommentieren Sie Ihren Quellcode.'''


 1.
 Prüfen Sie, ob ein gegebenes Jahr ein Schaltjahr ist.
 Ein Schaltjahr liegt vor, wenn 4 ein Teiler der Jahreszahl ist sowie bei Jahrhunderten die durch 400 teilbar sind. Jahrhunderte, die nicht durch 400 teilbar sind (wie z.B. 1900), sind kein Schaltjahr.

 Eine durch 4 teilbare Zahl $z$ erfüllt die Gleichung $z$  $mod (4) = 0$
 '''modulo''': '''Rest''' bei der Division durch 4 ist Null (bei allen Vielfachen von 4)!
 in Javascript mit '''%''' geschrieben; im Beispiel '''z % 4 == 0'''



<code id="6466308d8703f">
</code>

<run id="6466308d87cd8">
</run>




 2a. Implementieren Sie den Algorithmus wie im Struktogramm angegeben.
 [[Bild:Struktogramm2.jpg|centre|120px|Struktogramm]]

<code id="6466308d87246">
</code> 
<run id="6466308d87d82">
</run> 


 2b. Setzen Sie den Algorithmus mit einer Zählschleife um, (also die Schleife mit vorangestellter Bedingung ersetzen).
<code id="6466308d87355">
</code>  

<run id="6466308d87dcf">
</run>



 3. Implementieren Sie das Vertauschen zweier Zahlen. Dies bedeutet, dass der Wert einer Variablen $x$ auf eine Variable $y$ überscheiben wird und umgekehrt.

<code id="646633382b82c">
</code>


<run id="646633382b8db">
</run>



 4.
 ''Switch-case'' führt <u>anstelle mehrfacher</u> ''if else''-Abfragen die Alternativen in einer überschaubaren Liste von Anweisungen auf.
 Eine ''switch''-Anweisung vergleicht den Wert der Bedingung mit dem Wert, der neben jeder ''case''-Marke aufgeführt ist.
 Wenn die Bedingung in ''case'' zutrifft, werden diese Anweisungen ausgeführt.
 
 switch (variable) {
    case wert1 :
        anweisungen;
        break;
    case wert2 :
        anweisungen;
        break;
    default :
        anweisungen;
 }
 
 Setzen Sie dies beispielhaft um: Für ganzzahlige Werte der Variablen $a$ sollen verschiedene Texte ausgegeben werden, für $a=1$ "ROT", $a=2$ "BLAU", $a=3$ "GELB", $sonst$ "SCHWARZ".


<code id="646633382b880">
</code>

<run id="646633382b924"></run>


 
 Das ProgrammingWiki unterstützt einige [[Canvas_Befehle | Canvas Befehle]]. Ein Canvas ist eine rechteckige Leinwand, auf die wir bekanntlich mittels Javascript zeichnen können.

<canvas width=500 height=500></canvas>

 5a. Programmieren Sie ein Treppenmuster ungefähr so wie in dieser Skizze. Die Linien sollen jeweils 40px lang sein.
 __
   |__
      |__
         |__
            |__
     
<code id="646634bcaac20">
function draw(){
   canvas.clear();

   //1. Iteration
   canvas.line(0,0,40,0);
   canvas.line(40,0,40,40);

   //2. Iteration
   canvas.line(40,40,80,40);
   canvas.line(80,40, 80,80);

  //fortsetzen
  //ggf. als Schleife

}

</code>
<run id="646634bcaac82">
draw();
</run>



 5b. Mit der Canvas-Funktion ''rect'' können wir Rechtecke zeichnen.
 Aufbau: ''rect(x, y, breite, höhe)''
 Beispiel: Gezeichnet wird Rechteck mit den Abmessungen 480x480 an die Position x=10,y=10.
    Ergänzen Sie ein zweites Rechteck mit den Abmessungen 460x460 an die Position x=20,y=20!
    Ergänzen Sie ein drittes Rechteck mit den Abmessungen 440x440 an die Position x=30,y=30! 
    '''Z.:''' Ergänzen Sie weitere kleinere Rechtecke (Schleife verwenden).

<code id="646639ec2f114">
function draw(){

   var c = document.getElementById('canvas1');
   var ctx = c.getContext('2d');
   ctx.clearRect(0,0,500,500);
   ctx.beginPath();
   
   ctx.rect(10,10,480,480);

   ctx.stroke();
   ctx.closePath();
}
</code>
<run id="646639ec2f184">
draw();
</run>