質問編集履歴

1 ミスの編集

111

111 score 17

2015/02/22 12:42  投稿

pythonのturtleの動き(再帰)がわかりません
```lang-python
# -*- coding: utf-8 -*-
from turtle import *
def branch(length):
   if length < 10:
       return
   forward(length)
   left(30)
   branch(length/2)
   right(60)
   branch(length/2)
   left(30)
   forward(-length)
   
branch(200)
input()
```
ぼくが考えているのは
branch(200)で呼び出して
forward(200)
left(30)
forward(100)
left(30)
forward(50)
left(30)
forward(25)
left(30)
forward(12.5)
left(30)
12.5/2が10より小さい。ここでbreak ---一つ目の再帰終わり
right(60)
branch(length/2) ---2つ目の再帰 ←ここです
これ以降の動きがわかりません
まずこのlengthにはなにが入るんですか?
12.5/2をしたものでしょうか?
12.5/2/2をしたものでしょうか?
そしてbreakされて一つ目の再帰が終了しましたが2つ目の再帰に入ったら1つ目の再帰をまたbreakするまで繰り返すんですか?
いったいどうなってるんでしょうか
動きが複雑でわかりません
  • Python 3.x

    18851 questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る