Объекты и классы. Модуль turtle
Цель: изучить основы объектно-ориентированного подхода; рассмотреть понятия класса, конструктора, метода.
Справка по модулю turtle
Класс Turtle содержит следующие методы (функции):
| Метод | Назначение | Пример |
|---|---|---|
forward(n) |
Движение вперёд на n пикселей в сторону, куда направлена Черепаха | turtle.forward(50) |
backward(n) |
Движение назад на n пикселей | turtle.backward(20) |
right(a) |
Поворот Черепахи направо на угол a градусов | turtle.right(45) |
left(a) |
Поворот Черепахи налево на угол a градусов | turtle.left(60) |
Экземпляр класса Turtle хранит данные о текущем положении и направлении объекта. Чтобы получить эти значения используются следующие методы (функции). Эти методы возвращают значение и могут использоваться внутри других выражений:
| Метод | Назначение | Пример |
|---|---|---|
xcor() |
Возвращает координату x Черепахи | x = turtle.xcor() |
ycor() |
Возвращает координату y Черепахи | y = turtle.ycor() |
heading() |
Возвращает текущее направление Черепахи (в градусах) | a = turtle.heading() |
Экспедиция на Марс
Помогите марсоходу выполнить ряд миссий по исследованию планеты1.
Скачайте архив mars.zip и распакуйте его на рабочем диске. Для каждой последующей миссии открывайте файл, указанный в скобках в названии миссии с помощью среды программирования IDLE.
Миссия № 1 - Периметр (m01.py)
Марсоход находится на площадке размером 330x330 метров. Ваша задача проехать исследуемую площадку по периметру. Путь следования марсохода изображен белым цветом.
В этой и следующих задачах 1 метр = 1 пиксель.
turtle которые понадобятся для решения задачи.
forward(320). Чтобы повернуть используйте следующую инструкцию: left(90) или right(90).
Миссия № 2 - Кратеры (m02.py)
Исследуя поверхность Марса, марсоход обнаружил три кратера. Напишите программу с помощью которой марсоход посетит все три кратера по заданному маршруту. Для написания программы используйте информацию на карте.
turtle которые понадобятся для решения задачи. Они же использовались в предыдущей задаче.
Миссия № 3 - Объезд (m03.py)
Марсоходу необходимо объехать особенно большой кратер по-кругу. Используя информацию на карте, напишите программу движения марсохода по указанной траектории. После каждого поворота на экран выводится текущее направление марсохода в следующем формате:
Текущий курс марсохода: 30.0 град.
Текущий курс марсохода: 60.0 град.
Текущий курс марсохода: 90.0 град.
...Напишите функцию n_gon(num, steps) с помощью которой черепаха сможет изображать многоугольник с num сторонами. Длина стороны - steps.
Миссия № 4 - Разведка (m04.py)
Марсоходу необходимо посетить три площадки, при этом не врезавшись в гору (обозначена тёмно-красным цветом). Напишите Марсоход должен остановиться на стартовой позиции. Порядок посещения площадок выберите самостоятельно.
Программа должна вывести на экран координаты каждой площадки в следующем формате:
Координаты: (30, -130)Таблица 2 содержит методы с помощью которых можно узнать текущие координаты ровера.
Миссия № 5 - Карта поверхности (m05.py)
Марсоходу необходимо составить детальную карту поверхности планеты. Для этого ему нужно проехать по указанному на карте маршруту. Напишите программу движения марсохода.
Длина стороны одной клетки - 47 метров (47 пикселей).
%.
Миссия № 6 - Зигзаг (m06.py)
Вам необходимо разработать программу альтернативного движения марсохода по поверхности планеты для составления карты. Маршрут движения марсохода показан на рисунке.
Сноски
Условия заданий, исходные коды шаблонов и изображения основаны на заданиях с ресурса 101computing.net.↩︎












