Jetzt aber zurück zu den Tonleitern. Wir wollen die ja mehrmals und hoch und runter spielen. Dazu kann man 2 Schleifen hintereinander bauen: eine Schleife hoch, eine Schleife runter, und dann noch eine weitere Schleife um diese beiden Schleifen herum legen. In Code 4 ist zu sehen wie das funktioniert. Die Schleifenverschachtelung ist dabei so aufgebaut:
3.times do → Hier beginnt die äußere Schleife
13.times do → Hier beginnt die erste innere Schleife
… mache etwas
end → Hier endet die erste innere Schleife
13.times do → Hier beginnt die zweite innere Schleife
mache etwas anderes
end → Hier endet die zweite innere Schleife
end → Hier endet die äußere Schleife
Die äußere Schleife umfasst dabei die beiden inneren. Insgesamt gibt es 3 „end“ Befehle, da es 3 Schleifen gibt, nämlich 2 innere und eine äußere.
################################
# Variables and Loops -2
# Hans Gruendel
# 25.08.2015
#
################################
tone = 60
3.times do
13.times do
play tone
sleep 1
tone = tone + 1
end
13.times do
tone = tone – 1
play tone
sleep 1
end
end
In Abbildung 7 ist zu sehen, wie es in Sonic Pi aussieht.
Aufgaben
Wo ist einfach genau der Unterschied zwischen den folgenden 2 Codevarianten? Welche Töne werden ausgegeben? Probiere es am besten aus.
tone = 60
13.times do
play tone
sleep 1
tone = tone + 1
end
tone = 60
13.times do
tone = tone + 1
play tone
sleep 1
end
Fertige eine Liste mit mindestens 5 Einträgen an mit Variablennamen die möglich sind und 5 weitere die nicht funktionieren. Versuche dabei ein möglichst breites Spektrum abzudecken, also Zahlen, Sonderzeichen etc. Teste alle Namen in Sonic Pi.
Falls Du langsam genug von dem voreingestellten Sound hast: Zeit mal den Sound zu verändern. In Sonic Pi funktioniert das mit dem „use_synth“ Befehl. Ihm wird ein Parameter mitgegeben, nämlich der Name des Synths. Probiere es mal aus.
Gelernt fürs Programmieren |
|
Nr |
Thema |
1 |
Code, der sich wiederholt, ist besser zu vermeiden. Dieses Prinzip wird später noch mehrmals angesprochen, weil es wirklich wichtig ist. Jede Programmiersprache besitzt Befehle, die genau das ermöglichen. |
2 |
Einrückungen sind wichtig, um die Lesbarkeit zu verbessern. Und Sonic Pi nimmt uns sogar noch die Arbeit beim Einrücken ab. Zuerst Einfach die Alt und M-Taste zusammen drücken, und schon wird automatisch alles in diesem Tab eingerückt. Es gibt sogar Programmiersprachen, die zu der richtigen Einrückung verpflichten, weil sonst das Programm nicht läuft. ALT + M sollte man auch benutzen, um zu schauen, ob man die Schleifen richtig codiert hat. |
3 |
Variablen sollen selbsterklärende Namen tragen. Sie sollen statt Zahlen verwendet werden. |
Tabelle 4: Gelernt fürs Programmieren – 2.
das sollte man machen |
das sollte man lassen |
Immer mal automatisch einrücken. Die Tastenkombination ALT + M sollte häufig benutzt werden. Man kann damit leicht erkennen, ob der Song richtig strukturiert ist |
Zu viel von Hand einrücken sollte man lassen: Das ist letztendlich ein Zeitverlust. |
Variablen verwenden |
Zahlen im Code ohne Erklärung verwenden. |