Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммирование

Раздел Информатика
Класс 7 класс
Тип Другие методич. материалы
Автор
Дата
Формат doc
Изображения Есть
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

Тузов Александр Анатольевич

учитель информатики,
МБОУ Болшевская средняя общеобразовательная школа № 6


ОПЫТ ИСПОЛЬЗОВАНИЯ МОДУЛЯ TURTLE
ЯЗЫКА ПРОГРАММИРОВАНИЯ PYTHON
ПРИ ИЗУЧЕНИИ ТЕМЫ
"АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ"


Аннотация: в статье рассматривается опыт автора по использованию модуля Turtle языка Python как графического исполнителя.

Ключевые слова: графический исполнитель, система команд исполнителя, python, turtle, Чертежник, Рисователь, Черепаха


Tuzov Alexander Аnatolyevich

it teacher,
MBOU Bolshevskaya Secondary School №6


EXPERIENCE OF MODULE TURTLE
PROGRAMMING LANGUAGE PYTHON IN STUDYNG THE TOPIC
"ALGORITHMS AND PROGRAMMING"


Abstract: The article discusses the author's experience on the use of Turtle module of Python as a graphic artist. .

Keywords: graphic artist, the instruction set of the executive, python, turtle, Draftsman, the painter, Turtle

«Чтобы хорошо разбираться в велосипеде,
нужно изобрести хотя бы парочку»

Г..В. Курячий,
из беседы с автором

Когда речь идёт об исполнителях, которые изучаются в школьном курсе «Алгоритмизация и программирование» в различных классах, то учитель и ученик часто сталкиваются с таким их разнообразием, что невольно встает вопрос: какие исполнители использовать оптимальнее? Здесь, конечно, необходимо учитывать различные факторы: интуитивную понятность СКИ, читаемость программы, наличие программного обеспечения, использование в ОГЭ и ЕГЭ.

В последние годы мне приходилось работать в средах Стрелочка, Исполнители (автор К.Ю. Поляков)

Однако, в связи с тем, что в ОГЭ используется среда Кумир (niisi.ru/kumir/), на первый взгляд кажется, что данная среда с исполнителями Черепаха, Чертёжник и пр. ограничивает учителю свободу маневра. Но, как говорится в одной известной книге, не хлебом единым...

Первым импульсом к размышлению автора в данном направлении стала книга [1]. Читать её было просто наслаждение. Я впервые знакомился с новым для меня языком программирования по книге для детей и был просто очарован им. И полностью согласен с Марком Саммерфилдом, пишущим в предисловии к [2]: "Язык Python является, пожалуй, самым простым в изучении и самым приятным в использовании из языков программирования, получивших широкое распространение"

Чтобы ответить на вопрос о возможности использования модуля Turtle языка Python как графического исполнителя, был произведен сравнительный анализ Turtle и графических исполнителей системы Кумир.

Из учебника [3] Л.Л. Босовой были взяты задачи к §3.2 на рисование графических объектов. На внеурочных занятиях с учениками 7-го класса в рамках подготовки к школьной научно-практической конференции было получено несколько вариантов решений выбранных задач с использованием 4-х видов графических исполнителей Черепаха, Чертежник, Рисователь (Кумир), Turtle (Python). В качестве примера можно рассмотреть решение одной из них

Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммирование


Рис. 1 Использование исполнителя Чертежник (среда Кумир)

Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммирование



Рис. 2 Использование исполнителя Рисователь (среда Кумир)


Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммирование


Рис. 3 Использование исполнителя Черепаха (среда Кумир)



Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммирование


Рис. 4 Использование модуля Turtle (Python)


Исполнитель Черепаха удобнее для начального этапа изучения работы графического исполнителя, но программы получаются громоздкими и трудночитаемыми. Исполнитель Чертежник оптимален для рисования различных геометрических орнаментов, но в его СКИ отсутствуют программы рисования элементарных геометрических фигур. В СКИ исполнителя Рисователь отсутствуют элементарные команды (вперед, назад, сместиться на вектор). Однако, модуль Turtle из Python, как мы видим, лишен перечисленных выше недостатков, характерных для исполнителей Кумира. СКИ Turtle содержит разнообразный набор команд: вперед, назад, повернуть, поднять (опустить) перо, нарисовать окружность, правильный многоугольник с n-сторонами и т.д. Учащиеся могут знакомиться с новыми командами Turtle по мере освоения предыдущих. В итоге можно наращивать как сами стандартные задачи так и их решения новыми возможностями (Turtle может менять вид, скорость движения, оставлять следы и.т.д.).

Под руководством Вашего покорного слуги группой любознательных учащихся 7-го класса были решены все задачи из рабочей тетради [4] для графического исполнителя.

Пример программы на Python c использованием процедурам и циклов

from turtle import *

# Установка размеров экрана: ширина, высота, цвет фона

# Обозначение цвета как в HTML

screensize(1200,1200,'Bisque')

reset() # сброс настроек черепашки и очистка окна

setworldcoordinates(-50,-50,1150,1150)

speed(8) # устанавливаем самую медленную скорость пера

shape('classic') # форма указателя = черепашка

width(3) # установка толщины пера в пикселях

def kvadrat():

down()

color('green')

setheading(90)

for i in range(4):

fd(100)

rt(90)

rt(90)

fd(100)

lt(90)

up()


def rombaba_large():

color('orangered')

setheading(90)

fd(50)

down()

goto(xcor()+100,ycor()+100)

goto(xcor()+100,ycor()-100)

goto(xcor()-100,ycor()-100)

goto(xcor()-100,ycor()+100)

#

up()

goto(xcor()+200,ycor()-50)

setheading(90)

up()

goto(0,200)

for j in range(5):

kvadrat()

rombaba_large()

done() # Черепашка ждет закрытия окна

Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммирование


Рис. 5 Экран вывода решения задачи с импользованием модуля Turtle (Python)


Также нельзя не отметить то, что уже наработан опыт использования графический модуль Turtle в старшей школе, например, при изучении рекурсии.


Пример решения задачи из 10-го класса (строим треугольник Серпинского)


from turtle import *

iter=4 # Количество итераций

screensize(1200,1200,'Bisque')

reset() # сброс настроек черепашки и очистка окна

setworldcoordinates(-50,-50,1150,1150)

speed(1) # устанавливаем самую медленную скорость пера

# Процедура строит тр-к по координатам вершин

def tr(x1,y1,x2,y2,x3,y3):

# Первая сторона тр-ка

penup() ; goto(x1,y1); pendown() ; goto(x2,y2); goto(x3,y3); goto(x1,y1)

def draw(x1,y1,x2,y2,x3,y3,n):

# Делим основной тр-к на 4 части

if n>0:

Опыт использования модуля Turtle языка Python при изучении темы Алгоритмизация и прогаммированиеx1n=(x1+x2)/2

y1n=(y1+y2)/2

x2n=(x2+x3)/2

y2n=(y2+y3)/2

x3n=(x3+x1)/2

y3n=(y3+y1)/2

tr(x1n,y1n,x2n,y2n,x3n,y3n)

draw(x1,y1,x1n,y1n,x3n,y3n,n-1)

draw(x2,y2,x1n,y1n,x2n,y2n,n-1)

draw(x3,y3,x2n,y2n,x3n,y3n,n-1)


tr(320,10,600,470,40,470)

draw(320,10,600,470,40,470,iter) Рис. 6 Треугольник Серпинского

Литература


  1. Jason R. Briggs, "Python for kids", No Starch Press, 2012 year, p. 344
    [Электронный ресурс]. URL:: it-ebooks.info/book/2226/ (дата обращения: 09.04.2015)

  2. Марк Саммерфилд, Программирование на Python 3. Подробное руководство, Санкт-Петербург-Москва, Символ-Плюс, 2009 г., 608 с.

  3. Босова Л.Л. Информатика и ИКТ : учебник для 7 класса, Москва, БИНОМ. Лаборатория знаний, 2013 г., 237 с.

  4. Босова Л.Л. Информатика и ИКТ : рабочая тетрадь для 7 класса,
    Москва, БИНОМ. Лаборатория знаний, 2013 г., 111 с.

  5. Тузов А.А. Обработка информации в 5-м классе: калькулятор vs Python Shell. XXV Международная конференция «Применение новых технологий в образовании», «ИТО-Троицк-2014», 25-26 июня 2014 года, г.Москва, г.о. Троицк
    [Электронный ресурс]. URL::
    http://tmo.ito.edu.ru/2014/section/229/93473/ (дата обращения: 09.04.2015).





7

© 2010-2022