title: fractal tree using recursion on python3
body: <p>I can't understand the recursion.
  The <code>main()</code> function aligns the turtle. The <code>tree()</code> function is called with <code>branchLen = 75</code>. So, it passes the "if" condition and goes up. According to my understanding, the turtle should take 5 consecutive right turns with its length decreasing as 75, 60, 45, 30, 15. After this, it won't satisfy the "if " condition anymore. The code would run only till line 5 (first recursive call). So, a single line leaning toward RHS should be displayed. There shouldn't be any left turns. 
  But this does not happen, a full symmetrical tree is made. 
  Please explain how.<br>
  See the link for more clarity on the question.<br>
  Thanks!<br>
  <a href="https://interactivepython.org/runestone/static/pythonds/Recursion/pythondsintro-VisualizingRecursion.html" rel="nofollow noreferrer">https://interactivepython.org/runestone/static/pythonds/Recursion/pythondsintro-VisualizingRecursion.html</a></p>
  
  <pre><code>def tree(branchLen,t):
      if branchLen &gt; 5:
          t.forward(branchLen)
          t.right(20)
          tree(branchLen-15,t)
          t.left(40)
          tree(branchLen-15,t)
          t.right(20)
          t.backward(branchLen)
  
  def main():
      t = turtle.Turtle()
      myWin = turtle.Screen()
      t.left(90)
      t.up()
      t.backward(100)
      t.down()
      t.color("green")
      tree(75,t)
      myWin.exitonclick()
  
  main()
  </code></pre>