середу, 14 листопада 2018 р.

Практична робота 9-Б

І. Що таке список❓❓❓ 

Практическая работа

1.Создайте два любых списки и свяжите их с переменными.
2.Выньте из первого списка второй элемент.
3.Измените во втором списке последний объект. Выведите список на экран.
4.Соедините оба списка в один, присвоив результат новой переменной. Выведите полученный список на экран.
5."Снимите" срез из объединенного списка так, чтобы туда попали некоторые части обоих первых списков. Срез свяжите с какой-то новой переменной. Выведите значение этой переменной.
6.Добавьте к этому списку-среза два новых элемента и снова выведите его.




Практическая работа
 1. Создать список из 10 случайных элементов (от -10 до 10). Найти сумму этих элементов
 2. Создать список из 10 случайных элементов (от -10 до 10). Напечатать только положительные из них

 3. Создать список из 10 случайных элементов (от -10 до 10). Изменить знак для всех элементов списка
x

Графічні можливості модуля TURTLE

Графічні можливості модуля turtle
Основні алгоритмічні конструкції, зокрема цикли і багато іншого, з учнями варто вивчати, використовуючи візуалізацію виконання програм. Такі можливості вперше були реалізовані в мові програмування LOGO. Це мова управління візком ("черепашкою") яка має хвіст, що може залишати за собою слід. PYTHON має всі функції такої "черепахової" графіки, які зібранв в окремий модуль  Turtle
Розглянемо, що таке модуль.
Модуль - це самостійна програма, що розширює функціонал вже існуючих програм.
Функціонал - це перелік можливостей, що здатна виконувати програма.
Підключення модуля turtle у Python відбувається наступним чином:
from turtle import *
Ця стрічка розширює графічний функціонал.
Тепер ми можемо створювати різні картинки. Після запуску такого роду програм відкривається окреме вікно (з назвою tk) з вказівником, що має вигляд трикутника. Будемо називати його «черепашкою».
Мал. 1
Черепашка дивиться строго направо і готова виконувати команди.Малює вона ніби пером. За настройками напочатку виконання перо в неї опущене і при пересуванні буде залишати слід. Яким же чином черепашку можна пересувати?
Команди переміщення черепашки
forward(60) - проповзти вперед 60 кроків (пікселів).
left(50) - повернутися наліво на 50 градусів.
right(90) - повернутися направо на 90 градусів.
circle(30) - намалювати коло радіуса 30, яке повністю знаходиться зліва від положення  черепашки.
circle(-30) - намалювати коло радіуса 30, яке повністю знаходиться справа від положення  черепашки.
Виявляється крім цих команд, черепашка ще орієнтується у вікні як у системі координат. Напочатку виконання програми вона знаходиться у точці (0, 0) і готова перейти у будь-яку точку з заданими координатами. ЇЇ система координат нічим не відрізняється від звичної для нас:
Мал. 2
Ця система координат невидима. Команда переміщення черепашки у координати (50, 90) має вигляд
goto(50, 90)
При цьому напрямок, в якому дивиться черепашка не змінюється, ця команда не повертає черепашку.
Команди малювання
down() - опустити перо. Після цієї команди черепашка почне залишати слід при будь-якому своєму пересуванні.
up() - підняти перо. Після цієї команди при пересуванні черепашка не буде залишати слід, поки ми знову не дамо командуdown()
width(3) - встановити товщину сліду (пера) черепашки 3 пікселів.
сolor('red') - встановити червоний колір пера (сліду) черепашки. Колір має бути текстовим рядком з назвою кольору англійською мовою, наприклад, ‘red', ‘yellow', ‘green', ‘blue', ‘brown'. Без використання цієї команди черепашка малює чорним пером.
fill() - використовується для малювання зафарбованих областей. Починаючи малювати зафарбовану область, дайте команду begin_fill(), а закінчивши малювання області -end_fill()
Написання програм, що малюють квадрати
 Напишемо програму, що малює квадрат зі стороною 100 пікселів блакитного кольору у першій координатній чверті .
Уявимо собі, що має бути результатом виконання програми.

  Мал. 3
(Координатні осі і точки ми не малюємо, лише контур квадрата)
Намагайтеся подумки повторювати рухи черепашки, особливо зверніть увагу, як вона повертає. На мал.3 відмічено кути, на які має повертати черепашка. Всі вони прямі, тобто дорівнюють 90 градусів. Поворот здійснюється завжди вліво.
Напишемо програму. По-перше, треба підключити модуль графічних можливостей:
from  turtle import *
По-друге, треба встановити колір. Чому саме напочатку малювання? Ви спочатку берете олівець блакитного кольору, а потім починаєте ним малювати. Так само і колір сліду черепашки змінюється  тільки після відповідної команди:
color('blue')
Після підключення модуля для малювання сторони можна використати команду forward(100)
Щоб черепашку зорієнтувати у першу чверть, треба повернути її наліво. На скільки градусів? Оскільки кути квадрата прямі, і 180-90=90, то остаточно команда виглядатиме так: left (90)
Після цієї команди черепашка буде дивитися вверх, далі треба їй сказати намалювати другу сторону і повернутися для малювання третьої. Це будуть команди:
forward(100)
left (90)
Аналогічно домальовуємо третю і четверту сторони квадрата:
forward(100)
left (90)
forward(100)
left (90)
Остання команда повороту необхідна для зорієнтування черепашки у початковий напрямок, тобто строго направо. Це просто необхідно, адже при малюванні складних малюнків важливо знати, куди дивиться черепашка.
Маємо програму:
from turtle import *
color('blue')
forward(100)
left(90)
forward(100)
left(90)
forward(100)
left(90)
forward(100)
left(90)
Запам'ятавши її під ім'ям, наприклад kvadrat.py, і запустивши на виконання натиском F5, ми побачимо, як черепашка просувається по екрану. В кінці виконання матимемо:
   Мал. 4
 Як змінити програму, щоб точка з координатами (0, 0) була не лівою нижньою точкою квадрата, а його центром?
   Мал. 5
Треба перенести точку початкового малювання у точку А. Якщо сторона квадрата дорівнює 100 пікселів, то координати точки А (-50, -50). Але переносячи черепашку у точку з такими координатами, варто пам'ятати, що при перенесенні черепашка не повинна залишати слід. Цього можна досягнути такою послідовністю команд:
up()
goto(-50,-50)
down()
А далі так само малюємо квадрат. Остаточно програма kvadrat2.py матиме вигляд:
from turtle import *
up()
goto(-50,-50)
down()
color('blue')
forward(100)
left(90)
forward(100)
left(90)
forward(100)
left(90)
forward(100)
left(90)
 Квадрат можна намалювати і використовуючи команду goto.
Для цього треба знати координати вершин і обходити їх послідовно за годинниковою стрілкою чи проти, але лише в одному напрямку.
Подамо код готової програми:
from turtle import *
color('blue')
goto(100,0)
goto(100,100)
goto(0,100)
goto(0,0)
Результат виконання програми буде такий самий як на мал.4.
Для того, щоб намалювати квадрат з центром у точці (0, 0), треба знову ж таки знати координати вершин А, В, С, D.
 Мал. 6
Починати малювати  при цьому можна з будь-якої точки. Подамо програму, що малює квадрат за годинниковою стрілкою, починаючи з точки D:
from turtle import *
color('blue')
up()
goto(-50, 50)
down()
goto(50,50)
goto(50,-50)
goto(-50,-50)
goto(-50,50)
Виділена частина програми є ніби підготовкою перед малюванням.
Вправи для тренування:
1. Змініть програму kvadrat2.py, щоб вона малювала квадрат також з точки D, але проти годинникової стрілки.
2. Намалюйте квадрат, сторони якого не паралельні осям координат.
3. Намалюйте прямокутник зі сторонами 40 і 20 так, щоб сторона паралельна осі Oх була меншою.
4. Намалюйте червоний ромб зі сторонами 50 з товщиною сліду 3.
5. Намалюйте 2 відрізки, що перетинаються під прямим кутом.

Програми, що малюють КОЛО
Напишемо програму, яка малює жовте коло радіуса 40 з центром у точці (0,0)  і товщиною лінії 4.
Уявимо, який має бути результат виконання цієї програми:
       Мал. 7
Здавалося б, що може бути простіше:
  • 1. підключив модуль turtle from turtle import *
  • 2. встановив колір сліду color('yellow')
  • 3. встановив товщину сліду width(4)
  • 4. намалював коло circle(40)
Але є одна особливість малювання кола: circle(40) малює коло радіуса 40, яке повністю знаходиться зліва від положення  черепашки. Оскільки черепашка напочатку дивиться строго вправо, то точка початку малювання (в даному випадку точка (0,0)) буде найнижчою точкою кола. Коло буде лише дотикатися осі Ох.
Якби черепашка дивилася б наліво, то командою circle(40)  малювалося б коло, а точка початку малювання була б найвищою точкою. Якби черепашка дивилася б строго вверх, то точка початку малювання була б найправішою точкою кола. Якби черепашка дивилася б строго вниз, то точка початку малювання була б найлівішою точкою кола. Робимо висновок: залежно від того, коди дивиться черепашка, отримуємо різні положення кола.
Напочатку програми черепашка дивиться вправо. Тому початок малювання має бути найнижчою точкою кола. Це точка А. Знайдемо її координати: оскільки радіус кола за умовою дорівнює 40 пікселів, то ОА=40, то координати точки А(0, -40).
Підготовка до малювання кола буде такою:
1. підняти перо, щоб при пересуванні у точку А, черепашка не залишала сліду       up()
2. пересунути черепашку у точку А                  goto(0,-40)
3. опустити перо, щоб черепашка почала залишати слід при пересуванні      down()
4. лише після цього малювати коло.
Остаточно програма виглядатиме так:
from turtle import *
up()
goto(0,-40)
down()
color('yellow')
width(4)
circle(40)
Зверніть увагу, що спочатку ми переносимо черепашку, а потім малюємо з нової позиції коло, а не навпаки.Результат виконання програми тепер є правильним:
         Мал. 8

вівторок, 13 листопада 2018 р.

Домашнє завлання 6 клас

Модуль turtle

import turtle - імпорт команд для черепашки
Принцип роботи схожий на програму Scratch
che = turtle.Pen() - створення черепашки che
che.forward(50) - черепашка che рухається вперед на 50 пікселів

Команди очищення намальованого

che.reset() - очистити і повернути в початкову позицію
che.clear() - очистити і залишитись у поточній позиції
che.goto(x,y) - перемістити черепашку в координати
che.backward(100) - рухатись назад
che.up() - підняти перо