Переменные
Запоминание.
Черепаха стоит в точке поля. Она должна нарисовать две линии и вернуться в эту точку.
Нужно запомнить место, где стояла черепаха. Для этого есть переменные.
#!/home-local/student/Downloads/or/bin/python3
from turtleru import *
import math
# укажем длину линии для функции
def двеЛинии(длина):
цвет("синий")
размерПера(4)
# запомним где черепаха
# моеМесто - это переменная
# моеМесто - имя переменной
# эта переменная запомнила где черепаха
моеМесто=где();
# длина - длина линии
# эту длину мы сказали функции
# длина - тоже переменная
# длина - это имя переменной
вперед(длина)
# В этой функции ДВЕ переменные - моеМесто и длина
жди(1)
цвет("красный")
вперед(длина)
пероВверх()
# моеМесто помнит где стояла черепаха.
# Поставим ее на это место
встатьНа(моеМесто)
# напишем координаты
пиши(моеМесто)
начало()
встатьНа(-200,0)
двеЛинии(100)
конец()
Задача 1.
Запомнить
курс
черепахи в переменную
кудаСмотрю
.
Нарисовать лист из урока 3. Повернуть черепаху на тот же курс как и в начале программы
Изменяем ЗНАЧЕНИЯ переменных
моеМесто
,
длина
и
кудаСмотрю
это ИМЕНА переменных. А координаты черепахи (-200, 0), длина линии (число 100) и курс черпахи (0) это ЗНАЧЕНИЯ.
ЗНАЧЕНИЯ можно изменять и вычислять.
Нарисуем горизонтальную линию. Укажем координаты X. Y будет 0.
Найдем середину линии, напишем координаты середины. Подвинем черепаху в середину и напечатаем чему равна половина длины. Затем вернем черепаху на место
#!/home-local/student/Downloads/or/bin/python3
from turtleru import *
import math
def серединаЛинии(x1,x2):
# запомним место чрепахи
гдеЯ=где()
цвет("зеленый")
размерПера(3)
пероВверх()
# поставим черепаху в нужное место
# x1, x2 - тоже переменные
# они помнят координаты
встатьНа(x1,0)
# нарисуем линию между x1 и x2
пероВниз()
встатьНа(x2,0)
# ВЫЧИСЛИМ середину (половину длины отрезка между x1 и х2)
середина = ( x2 - x1 ) / 2
# нарисуем половину линии (отрезка)
# другим цветом
цвет("рыжий")
# изменим ЗНАЧЕНИЕ x1 на координату середины
x1 = ( x2 + x1 ) / 2
# можно написать
# x1 = x1 + середина
# переместим черепаху и нарисуем линию
встатьНа(x1,0)
# напечатаем ЗНАЧЕНИЕ середина
пиши(середина)
# вернем черепаху на место (где была)
пероВверх()
встатьНа(гдеЯ)
начало()
серединаЛинии(-200, 300)
конец()
Задача 2
Написать функцию
def линия(размер)
, чтобы нарисовать такой рисунок.
шаг = размер / 5
Вначале нужно запомнить
угол
куда смотрит черепаха (переменная
угол
). Затем ВЫЧИСЛИТЬ
шаг
.
Для рисования цветных линий нужно запомнить точки
точка1
,
точка2
и
точка3
.
Задача 3
Черепаха стоит в центре будущего прямоугольника. Запомнить эту точку. Задать длину и ширину прямоугольника (длина, ширина).
Написать функцию
recTr(длина, ширина,какой)
. Вычислить координаты углов прямоугольника. Запомнить координаты углов прямоугольника.
Нарисовать прямоугольник с центром в этой точке. Провести диагонали. Закрасить четыре треугольника разными цветами. Для этого написать функцию
треугольникКрась(место1, место2, место3, какой)
, которая рисует закрашеннный прямоугольник по трем точкам.
Задача 4
Черепаха должна нарисовать вот такой узор:
Написать функцию
узор(длинаб ширина, какой)
.
В ней:
- Вычислить размер шага (длину черточки) переменная
шаг
.
- Для рисования узора запомнить все места, где начинаются и кончаются черточки. Верхние точки:
точкаВ1, точкаВ2, точкаВ3, точкаВ4, точкаВ5, точкаВ6
. Нижние точки: точкаН1, точкаН2, точкаН3, точкаН4, точкаН5, точкаН6
. Всего должно быть 12 таких переменных.
- Рисовать линии узора между этими точками. Если
пероВниз()
и черепаха стоит на точка1
, то черепаха РИСУЕТ линию между точками по команде встатьНа(точка2)
Задача 5
Указать в функции
узор(длина, ширина, угол, какой)
куда повернута черепаха вначале. Это переменная
угол
. Запомнить места поворотов
узора.
Получить вот такой рисунок.
Задача 6
Написать ДВЕ функции для рисования пятиконечной звезды.
Первая функция
звезда1(размер)
ищет и запоминает координаты точек на окружности. Затем по ним проводит линии звезды
Вторая функция
звезда2(размер, угол)
ВЫЧИСЛЯЕТ размер отрезка для соединения точек. Затем рисует звезду. После этого черепаха должна стоять в ЦЕНТРЕ окружности звезды.
Изменение переменных
ЗНАЧЕНИЯ переменных можно изменять.
Например.
угол = куда()
# изменяем ЗНАЧЕНИЕ переменной:
угол = 270
# или изменяем по-другому
угол = куда() + 90
# или так:
угол += 90
# "старое значение" переменной угол увеличили НА 90
угол -= 30
# угол уменьшили НА 30
# или
угол *= 3
# угол увеличили В 3 раза
угол /= 4
# угол уменьшили В 4 раза
#
Пример программы
#!/home-local/student/Downloads/or/bin/python3
from turtleru import *
import math
def линииНа(размер):
размерПера(4)
пероВниз()
цвет("синий")
# напишем размер синей линии
пиши(размер)
вперед(размер)
# увеличим размер НА 50
размер += 50
цвет("зеленый")
# напишем размер зеленой линии
пиши(размер)
вперед(размер)
# увеличим размер еще НА 50
размер += 50
цвет("красный")
# напишем размер красной линии
пиши(размер)
вперед(размер)
# увеличим размер еще НА 50
размер += 50
цвет("рыжий")
# напишем размер рыжей линии
пиши(размер)
вперед(размер)
пероВверх()
х = мойХ()
# увеличим координату У на рамер/5
у = мойУ() + размер / 5
# изменим положение и поворот черепахи
встатьНа(х,у)
право(180)
пероВниз()
цвет("рыжий")
# напишем размер рыжей линии
пиши(размер)
вперед(размер)
# уменьшим размер НА 50
размер -= 50
цвет("красный")
# напишем размер красной линии
пиши(размер)
вперед(размер)
# уменьшим размер еще НА 50
размер -= 50
цвет("зеленый")
# напишем размер зеленой линии
пиши(размер)
вперед(размер)
# уменьшим размер еще НА 50
размер -= 50
цвет("синий")
# напишем размер синей линии
пиши(размер)
вперед(размер)
пероВверх()
начало()
пероВверх()
встатьНа(-300,0)
линииНа(100)
конец()
Можно написать функцию
линииНа(размер, изменитьНа)
from turtleru import *
import math
# изменитьНа - на сколько будем изменять размер
def линииНа(размер,изменитьНа):
размерПера(4)
пероВниз()
цвет("синий")
пиши(размер)
вперед(размер)
размер += изменитьНа
цвет("зеленый")
пиши(размер)
вперед(размер)
размер += изменитьНа
цвет("красный")
пиши(размер)
вперед(размер)
размер += изменитьНа
цвет("рыжий")
пиши(размер)
вперед(размер)
начало()
пероВверх()
встатьНа(-550,0)
# размер будет 80, а изменитьНа будет 40
# длина линии будет увеличиваться
линииНа(80,40)
# размер будет 200, а изменитьНа будет -40
# длина линии будет уменьшаться
линииНа(200,-40)
конец()
Задача 7.
Написать функцию
спираль(размер, изменитьНа)
.
Получить похожую картинку. Цифры могут быть другие.
Задача 8.
Нарисуем солнце
Написать функцию
=сол1(какой, радиус, луч, угол)
. Какой - это цвет луча, радиус круга солнца, луч - длина луча, угол - поворот первого луча относительно верха картинки. Функция рисует 10 лучей.
Написать вторую функцию
сол2(радиус, размер)
, которая использует функцию сол1(...), изменяет угол поворота, размеры и цвет.
Получить вот такую картинку:
Задача 9.
Написать функцию
квадрат(размер, угол)
. Угол - это угол поворота сторны квадрата.
Написать функцию
квадрат3(размер,угол)
, которая рисует три разноцветных квадрата (один в другом).
Задача 10.
Написать функцию
спираль(размер, изменитьНа, угол)
. Угол может быть +90 или -90.
С помощью этой же функции получить вот такую картинку:
Задача 11.
Написать функцию для рисования двух спиралей:
Задача 12
Написать функцию для рисования вот такого узора:
Использовать функции, написанные для задач 6,7,8
--
TatyanaOvsyannikova2011 - 18 Mar 2017