Experiment(){
Context(){
AssignmentGroup(){
SubjectCode = "pxlab";
ExperimentName = lang2("The Tower of Hanoi", "Der Turm von Hanoi");
}
Session(){
Instruction(){
Text = lang2(["Tower of Hanoi", " ", "You will see three poles with 4 disks on the leftmost pole. Your task is to move the disks to the rightmost pole.", "The rules are:", "- Only the top disk of a tower may be moved.", "- There may never be a larger disk on top of a smaller one.", " ", "Pointing at a tower and pressing a mouse button picks up the top disk of the tower. Releasing the button drops the disk to the nearest tower.", " ", "Press any key to start!"], "Der Turm von Hanoi\n \nSie sehen drei Stäbe, wobei auf dem linken Stab vier Scheiben liegen. Ihre Aufgabe ist es die Scheiben auf den rechten Stab zu bringen.\n \nDie Regeln sind:\n Nur die obere Scheibe von einem Stapel darf bewegt werden.\nEs darf nie eine größere Scheibe auf einer kleineren Scheibe liegen.\n \nMit der Maus auf einen Stapel zeigen und gleichzeitig eine Maustaste gedrückt halten, nimmt die obere Scheibe. Durch Loslassen der Maustaste wird die Scheibe auf den nächsten Stapel gelegt.\n \nZum Starten bitte eine Taste drücken!");
}
}
SessionEnd(){
SessionEndMessage(){
}
}
Block(){
BlockStartMessage(){
}
}
BlockEnd(){
BlockEndMessage(){
}
}
Trial( TowerOfHanoi.Move, TowerOfHanoi.ProblemState, TowerOfHanoi.ResponseTime){
TowerOfHanoi(){
NumberOfDisks = 4;
}
}
// Command line assignments
AssignmentGroup();
}
Procedure(){
Session(){
Block(){
Trial( ?, ?, ?);
}
}
}
}