前提
ハノイの塔をJavaScriptで作っています。
実現したいこと
ハノイの塔を自動で行うようにしたいのですが、エラーが発生してしまいました。
1以上の数字が入力された場合は正しく処理を行い、0以下の数字が入力された場合は処理を行わないようにしたいのですがエラーが出てしまいます。
初心者なので説明していただけると幸いです。
発生している問題・エラーメッセージ
Uncaught SyntaxError: Unexpected token 'else'
該当のソースコード
JavaScript
1function hanoi(disk, tower1, tower2, tower3) { 2 3 if 4 (disk == 0) 5 return 6 hanoi(disk-1, tower1, tower3, tower2); 7 console.log(`${disk}の円盤を${tower1}から${tower2}に移動`); 8 hanoi(disk-1, tower3, tower2, tower1); 9 else 10 (disk <= -1) 11 console.log(`移動する円盤がありません。`); 12} 13 14hanoi(0, "tower1", "tower2", "tower3");
試したこと
ifの時同様に
return
console.log(移動する円盤がありません。
);
をelse文の下に記入してみました。
しかし、解決には至りませんでした。
ご教授いただけると幸いです。
以下は試した時のコードです。
Javascript
1function hanoi(disk, tower1, tower2, tower3) { 2 3 if 4 (disk == 0){ 5 return 6 hanoi(disk-1, tower1, tower3, tower2); 7 console.log(`${disk}の円盤を${tower1}から${tower2}に移動`); 8 hanoi(disk-1, tower3, tower2, tower1); 9 } 10 else 11 (disk <= 0){ 12 return 13 console.log(`移動する円盤がありません。`); 14 } 15} 16 17hanoi(-1, "tower1", "tower2", "tower3");
else if を調べてみてはどうでしょうか。