Черепаха живет на квадратном острове со стороной 500 шагов. Первоначально черепаха находится в центре острова и смотрит на север. Когда черепаха ползет, она оставляет след на песке кончиком своего хвоста. У черепахи есть следующие команды перемещения:
**вперед(//n//)** - проползти вперед **//n//** шагов. **назад(//n//)** - проползти назад (то есть двигаясь в сторону хвоста) **//n//** шагов.
**вправо(//n//)** - повернуть вправо на угол **//n//** градусов. **влево(//n//)** - повернуть влево на угол **//n//** градусов.
**поднять хвост** - после выполнения этой команды черепаха при перемещении не оставляет след на песке. **опустить хвост** - после выполнения этой команды черепаха при перемещении оставляет след на песке.
Значение **//n//** может быть десятичной дробью, а также отрицательным числом.
**!!Каждое выполненное задание сохраняется в отдельном файле с именем вида ~~/kumir/17/A.kum!!**
===Задание 17/A=== Напишите алгоритм **алг нарисовать квадрат(арг вещ длина стороны)**, при выполнении которого черепаха рисует квадрат со стороной **длина стороны** и возвращается в исходное положение.
Решение сохраните в файле **~~/kumir/17/A.kum**.
Пример исполнения алгоритма **нарисовать квадрат(200)** http://server.179.ru/~dk/turtle/2011/17/17-A.png
===Задание 17/B=== Напишите алгоритм **алг нарисовать ряд квадратов(арг цел количество, вещ длина стороны)**, при выполнении которого черепаха рисует ряд из **количество** квадратов со стороной **длина стороны**. Используйте алгоритм из предыдущей задачи для рисования одного квадрата.
Решение сохраните в файле **~~/kumir/17/B.kum**.
Пример исполнения алгоритма **нарисовать ряд квадратов (5, 20)** http://server.179.ru/~dk/turtle/2011/17/17-B.png
===Задание 17/C=== Используя алгоритм **нарисовать квадрат** нарисуйте такую картинку: http://server.179.ru/~dk/turtle/2011/17/17-C.png
Решение сохраните в файле **~~/kumir/17/C.kum**.
===Задание 17/D=== Напишите алгоритм **алг нарисовать большой квадрат(арг цел количество, вещ длина стороны)**, который рисует большой квадрат, сторона которого составлена из **количество** меньших квадратов со стороной **длина стороны**.
Решение сохраните в файле **~~/kumir/17/D.kum**.
Пример исполнения алгоритма **нарисовать большой квадрат(7, 30)** http://server.179.ru/~dk/turtle/2011/17/17-D.png
===Задание 17/E=== Напишите алгоритм **алг нарисовать орнамент из квадратов(арг цел количество, вещ длина стороны)**, который рисует орнамент из **2×количество** квадратов со стороной **длина стороны**.
Пример исполнения алгоритма **нарисовать орнамент из квадратов (4, 40)** http://server.179.ru/~dk/turtle/2011/17/17-E.png
===Задание 17/F=== Напишите алгоритм **алг нарисовать орнамент из квадратов(арг цел количество, вещ длина стороны)**, который рисует орнамент из **2×количество** квадратов со стороной **длина стороны**, где каждый последующий квадрат повернут на 45 градусов.
Пример исполнения алгоритма **нарисовать орнамент из квадратов (4, 40)** http://server.179.ru/~dk/turtle/2011/17/17-F.png
===Задание 17/G=== Напишите алгоритм **алг нарисовать меандр(арг вещ длина стороны)**, который рисует один повторяющийся фрагмент узора-меандра.
Напишите алгоритм **алг нарисовать ряд меандров(арг цел количество, арг вещ длина стороны)**, который рисует линию из повторяющихся узоров-меандров.
Используя этот алгоритм нарисуйте такой узор:
http://server.179.ru/~dk/turtle/2011/17/17-G.png
===Задание 17/H=== Напишите алгоритм **алг нарисовать вложенные квадраты(арг цел количество, вещ длина стороны)**, который рисует последовательность из **количество** вложенных квадратов, самый маленький из которых имеет сторону **длина стороны**, расстояние между сторонами соседних квадратов также равно **длина стороны**.
Пример исполнения алгоритма **нарисовать вложенные квадраты (16, 25)** http://server.179.ru/~dk/turtle/2011/17/17-H.png
Возможно при решении этой задачи будет полезен цикл **нц для** имеющий следующий вид:
**нц для //i// от //a// до //b// ... кц**
где **//i//** - величина-счетчик типа **цел**, **//a//** - начальное значение величины, **//b//** - конечное значение. Цикл будет выполнен **//b//-//a//+1** раз и величина **//i//** будет принимать значения **//a//**, **//a//+1**, **//a//+2**, ..., **//b//**.
===Задание 17/I=== Напишите алгоритм **алг нарисовать вложенные квадраты(арг цел количество, вещ длина стороны)**, который рисует последовательность из **количество** вложенных квадратов, самый маленький из которых имеет сторону **длина стороны**, расстояние между сторонами соседних квадратов также равно **длина стороны**.
Пример исполнения алгоритма **нарисовать вложенные квадраты (10, 20)** http://server.179.ru/~dk/turtle/2011/17/17-I.png
===Задание 17/J=== Напишите алгоритм **алг нарисовать квадрат c диагоналями (арг вещ длина стороны)**, при выполнении которого черепаха рисует квадрат со стороной **длина стороны** и внутренними диагоналями и возвращается в исходное положение.
Для вычисления квадратного корня из действительного числа используется функция **sqrt(//число//))**.
Пример исполнения алгоритма **нарисовать квадрат с диагоналями(200)** http://server.179.ru/~dk/turtle/2011/17/17-J.png
===Задание 17-K=== Замените в заданиях B-F алгоритм **нарисовать квадрат** на **нарисовать квадрат с диагоналями**. Посмотрите, что у вас получилось.
===Задание 17/L=== Нарисуйте равнобедренный прямоугольный треугольник и постройте "Пифагоровы штаны" на этом треугольнике. Аргументы алгоритма - длина катета треугольника. http://server.179.ru/~dk/turtle/2011/17/17-L.png
===Задание 17/M=== Нарисуйте прямоугольный треугольник с углом в 30° и постройте "Пифагоровы штаны" на этом треугольнике. Аргументы алгоритма - длина меньшего катета треугольника. http://server.179.ru/~dk/turtle/2011/17/17-M.png
===Задание 17/N=== Напишите алгоритм рисующий квадрат, заштрихованный вертикально. Аргументы алгоритма - сторона квадрата, количество линий штриховки.
Пример рисунка для случая сторона квадрата = 200, количество линий штриховки = 4. http://server.179.ru/~dk/turtle/2011/17/17-N.png
===Задание 17/O=== Напишите алгоритм, рисующий квадрат, заштрихованный наклонными линиями, если число наклонных линий - нечетно. Аргументы алгоритма - сторона квадрата, количество наклонных линий штриховки, пересекающих одну сторону. http://server.179.ru/~dk/turtle/2011/17/17-O.png
===Задание 17/P=== Напишите алгоритм, рисующий квадрат, заштрихованный наклонными линиями, если число наклонных линий - четно. Аргументы алгоритма - сторона квадрата, количество наклонных линий штриховки, пересекающих одну сторону. http://server.179.ru/~dk/turtle/2011/17/17-P.png
===Задание 17/Q=== Напишите алгоритм, которые по трем аргументам - **вещ сторона квадрата, цел высота, цел ширина** рисует кирпичную стену. Стена состоит из квадратиков со стороной **сторона квадрата**, количество квадратов: **высота×ширина**, кирпичик состоит из двух квадратиков. http://server.179.ru/~dk/turtle/2011/17/17-Q.png
===Задание 17/R=== Напишите алгоритм, рисующий квадрат со сходящимися к центру спиральными линиями. Аргументы алгоритма - сторона квадрата, количество поворотов в спирали.
Ниже приведены примеры для вызова алгоритма с аргументами (220, 1), (220, 2), (220, 3), (220, 10).
http://server.179.ru/~dk/turtle/2011/17/17-R.png
===Задание 17/S=== Напишите алгоритм, рисующий прямоугольник, заштрихованный наклонными линиями. Аргументы алгоритма - ширина и высота прямоугольника, общее число наклонных линий. http://server.179.ru/~dk/turtle/2011/17/17-S.png
((!/ТестыКштриховке))
---- адрес оригинала: ((/Информатика/Архив/2011/7Б/20110210))