# 2.2.2 条件与循环

画五边形的时候，我们把`t1.fd(50)`和`t1.rt(x)`写了五遍，为了不做重复的机械劳动， 我们有了循环。

本节目标：

* 了解`if`和`while`语句

**Learning By Doing 难度：★ 重要性：★★★★★**

*   运行以下代码，观察结果。

    ```python
    iter = 0
    while iter != 5:
      t1.fd(50)
      t1.rt(x)
      iter += 1
    ```

    这段话也画了一个五边形。

**Learning By Reading 难度：★ 重要性：★★★★★**

*   阅读材料，了解[条件语句](http://blog.csdn.net/leexide/article/details/17359943)和

    [while循环](http://www.runoob.com/python3/python3-loop.html)的语法和语义。

**Learning By Doing 难度：★ 重要性：★★★★★**

*   选做练习，记得用上循环语句或条件语句。

    ![](http://s4.sinaimg.cn/large/5fd454d0gx6CyHMOSXNe3&690)

我们选一个看起来最难的图形\~以左上角的图形为例讲解一下\~

它看上去是五个正方形嵌套组成的。 我们一点一点来，小一点的正方形看起来简单一点，于是我们先画出最小的正方形。

```python
iter_side = 0
while iter_side < 4:
    t1.fd(20)
    t1.rt(90)
    iter_side += 1
```

画完了\~

稍大一些的正方形呢？可以想象，只需要把`20`改成`40`就行了。

稍大一些的正方形呢？可以想象，只需要把`40`改成`60`就行了。

稍大一些的正方形呢？可以想象，只需要把`60`改成`80`就行了。

稍大一些的正方形呢？可以想象，只需要把`80`改成`100`就行了。

所以，它们之间非常相似，只有边长有差别。所以我们可以再用一个循环来解决问题。

```python
side_length = 20
while side_length <= 100:
    iter_side = 0
    while iter_side < 4:
        t1.fd(side_length)
        t1.rt(90)
        iter_side += 1
    side_legnth += 20
```
