YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Japanese subtitles

← 06xps-02 I Could Wile Away The Hours Solution

Get Embed Code
3 Languages

Showing Revision 1 created 10/23/2014 by Udacity.

  1. 問題はJavaScriptインタプリタに
  2. Pythonのwhileループと同じように働く
    ループを加えることでした
  3. 確かめるために まず0、2、4を出力する
    JavaScriptのコードを書きました
  4. 皆さんの予想どおり ここの式を評価して
  5. この条件式がTrueならば
    ループの本体を評価します
  6. 本体を評価したあと 再度条件式を確認します
  7. Trueのままなら またループの本体を評価して
  8. 条件式がFalseになるまでこの手順を繰り返し
    その後はwhile文の後ろの処理を続けていきます
  9. whileループはwhileキーワードと式と
  10. 複文からなる文です
  11. 構文木ではタプルで表現され
  12. 最初の要素は“while”で
    while文の構文木であることを示します
  13. 次の要素は式で
    本体を実行するかどうかの条件式です
  14. 最後の要素が文の列で 本体を表します
  15. これには2通りのやり方があります
  16. 1つ目はPythonのwhileを使う方法で
  17. もう1つはループを再帰的に実装することです
  18. プログラミングではwhileループも再帰呼び出しも
  19. 同じ表現力を持つと覚えておいてください
  20. 従って今回はwhileを再帰呼び出しでも実装します
  21. これが1つ目の解答例です
  22. 最初の2行で条件文とループ本体を
    構文木から取り出して
  23. それを単純にPythonの
    whileループに使っています
  24. これによって条件文がTrueの間
    ループ本体が実行されます
  25. わかりやすいですね
  26. これが再帰を使った解答例です
  27. 最初の2行はPythonのwhileを使った解法と同じで
  28. 条件文とループ本体を取り出しています
  29. その後 条件文を評価し
  30. それがTrueだった場合 ループ本体を実行し
  31. 自身を再帰呼び出しします
  32. よく考えてみると
    これによって条件文がFalseでない間
  33. ずっと評価し続けることがわかります
  34. Falseになったら ただ何もしません
  35. これでwhileループと同じ機能が作れました