Инструменты пользователя

Инструменты сайта


turtle

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
turtle [2013/10/15 20:18]
super_admin [Исполнитель черепашка]
turtle [2021/09/20 15:09] (текущий)
super_admin
Строка 1: Строка 1:
 ====== Исполнитель черепашка ====== ====== Исполнитель черепашка ======
-**Описание задачи**+**Условие задачи**
  
 {{:​wiki:​turtle_task.jpg|}} {{:​wiki:​turtle_task.jpg|}}
Строка 7: Строка 7:
  
 Если исполнитель "​черепашка"​ совершает два **предопределенных** действия:​ перемещение вперед на **заданное расстояние** и поворот направо на **заданный угол**, то при определенном количестве повторов,​ "​черепашка"​ вернется в ту точку из которой началось движение,​ если число, которое получается при делении 360 на величину угла, целое. Чем больше угол поворота,​ тем за меньшее количество повторов "​черепашка"​ вернется в исходную точку. Если угол поворота равен 1, замкнутая фигура будет иметь 360 углов. Если исполнитель "​черепашка"​ совершает два **предопределенных** действия:​ перемещение вперед на **заданное расстояние** и поворот направо на **заданный угол**, то при определенном количестве повторов,​ "​черепашка"​ вернется в ту точку из которой началось движение,​ если число, которое получается при делении 360 на величину угла, целое. Чем больше угол поворота,​ тем за меньшее количество повторов "​черепашка"​ вернется в исходную точку. Если угол поворота равен 1, замкнутая фигура будет иметь 360 углов.
 +
 +//​Сумма внешних углов правильного многоугольника - 360 градусов.//​
  
 **Очевидно,​ что величина угла и количество повторов взаимосвязаны.** **Очевидно,​ что величина угла и количество повторов взаимосвязаны.**
Строка 33: Строка 35:
  
  
-После того, как данное задание ​будет выполнено, испытайте свои навыки на следующих заданиях (ссылки указывают на одно задание):​+==== Дополнительные варианты фигур ====
  
-  ​[[https://​docs.google.com/​document/​d/​1-x1yy_p-bxphPDQ5iep5pVOlRjSzUxpr_S2Jzym50WI/​edit?​authkey=CN7Qq_0J | Дополнительные задачи]]  +**Необычный восьмиугольник**
-  * [[http://​intepra.ru/​wp-content/​uploads/​2011/​03/​cherepashka3.pdf | Дополнительные задачи (pdf) ]]+
  
-**//​Попробуйте сперва решить задачу в уме (можно пользоваться черновиком) и только для проверки правильности решения,​ используйте среду исполнителя!//​**+<​code>​ 
 +repeat 8[ 
 + ​repeat 8[ 
 +   ​forward 50 
 +   turn 45 
 + ] 
 +turn 45 
 +]
  
-Повышенный уровень сложности:​+</​code>​
  
-  * [[http://​intepra.ru/​wp-content/​uploads/​2011/​03/​terrapin_ru_4.html|Снежинка]] 
   * [[http://​intepra.ru/​turtle/​terrapin_ru.htm|Орнамент]]   * [[http://​intepra.ru/​turtle/​terrapin_ru.htm|Орнамент]]
-  * [[http://​en.literateprograms.org/​Turtle_graphics_%28JavaScript%29|ссылка на прототип]] ​ 
  
  
Строка 62: Строка 68:
  
 Полагаю Вас не должно "​испутать"​ то, что имена переменных на данном примере не соответствуют именам переменных в предыдущих примерах и обозначают:​ n - количество повторов,​ x - расстояние,​ которое преодолевает "​Черепашка"​ за одно действие,​ а угол программа вычисляет автоматически. ​ Полагаю Вас не должно "​испутать"​ то, что имена переменных на данном примере не соответствуют именам переменных в предыдущих примерах и обозначают:​ n - количество повторов,​ x - расстояние,​ которое преодолевает "​Черепашка"​ за одно действие,​ а угол программа вычисляет автоматически. ​
 +
 +
 ==== Упражнение ==== ==== Упражнение ====
  
Строка 77: Строка 85:
 Сравните результат,​ который у Вас получился с [[help_turtle_chart|данным результатом]] (если желаете оценить свой уровень - заранее не смотрите подсказку). Сравните результат,​ который у Вас получился с [[help_turtle_chart|данным результатом]] (если желаете оценить свой уровень - заранее не смотрите подсказку).
  
 +**Фрактальная графика (дерево)**
 +
 +<code python>
 +import random
 +def tree(size):
 + width(size/​25)
 + go(size)
 + if (size > 2):
 + scale = random.randrange(20)/​100.0 + 0.6
 + angle = random.randrange(10) + 30.0
 + turn(angle/​2)
 + tree(size*scale)
 + turn(-angle)
 + tree(size*scale)
 + turn(angle/​2)
 + go(-size)
 +
 +reset()
 +color("​green"​)
 +go(-50)
 +tree(50)
 +</​code>​
 +
 +{{:​practicum:​pytree.png?​300|}}
  
 +<code Python>
 +from turtle import *
 +import random
 +def tree(size):
 + width(size/​25 + 1)
 + fd(size)
 + if (size > 2):
 + scale = random.randrange(11)/​50.0 + 0.4
 + angle = random.randrange(5) + 40.0
 + rt(angle/​2)
 + tree(size*scale)
 + lt(angle)
 + tree(size*scale)
 + rt(angle/​2)
 + fd(-size)
 + 
 +reset()
 +lt(90)
 +color("​green"​)
 +fd(-70)
 +tree(70)
 +</​code>​
  
  
  
turtle.1381853921.txt.gz · Последние изменения: 2019/06/24 20:29 (внешнее изменение)