Інформація про новину
  • Переглядів: 1467
  • Дата: 28-09-2020, 03:47
28-09-2020, 03:47

15. Вкладені цикли в Phyton

Категорія: Інформатика





Попередня сторінка:  14. Малювання та цикли в Phyton
Наступна сторінка:   16. Моделювання в табличному процесорі ...

За допомогою якого з наведених скриптів можна створити таке зображення 8 квадратів у Скретчі?

Створи програму, яка малює 8 квадратів у ряд, кожен зі стороною 40 і відстанню між квадратами 10.

За основу можеш взяти програму зі Скретчу і замість кожної її команди записати відповідну команду для Черепашки в Python. Тобі доведеться створити вкладені цикли (цикл у циклі). Зауваж, що:

• у зовнішньому та внутрішньому циклах повинні бути різні змінні-лічильники (наприклад, і Taj);

• команди в тілі внутрішнього циклу записують з подвійним відступом від лівого краю програми (його можна зробити, двічі натиснувши клавішу Tab).

З рубрики «Запитання - відповіді» дізнайся, як Черепашка малює кола. Для кожної програми вкажи номер зображення, яке вона малює. У завданні 1 червоним кольором позначено початкове положення Черепашки, чорним — кінцеве.

Створи програму, яка будує ряд з п кіл радіуса г, що дотикаються одне до одного (мал. 2 з попереднього завдання). Значення п і г має вводити користувач.

За допомогою вкладених циклів намалюй зображену сніжинку. Довжина великого променя — 100, маленького — ЗО.

Склади програму за шаблоном. Внутрішній цикл малюватиме маленьку сніжинку на кінці кожного з променів великої.

Створимо програму із вкладеними циклами, що будує три розташованих один над одним ряди кіл, по п’ять кіл у кожному.

Ось ця програма без вкладених циклів:

Програма вийшла громіздка. Але зауваж, що для кожного ряду кіл різними є лише значення, які переміщають курсор по осі у. Щоб спростити код, вкладемо один цикл в середину іншого. Лічильником внутрішнього циклу буде змінна і, що набуває значень 0, 1,2, 3, 4, а лічильником зовнішнього циклу — змінна у, що набуватиме значень 0, 60,120.

Склади програму із вкладеними циклами за шаблоном. Якщо не пам’ятаєш, як працює команда range із трьома параметрами, звернися до рубрики «Запитання - відповіді» попереднього розділу.

Створи програму, що малює послідовність із п вкладених один в один квадратів (п вводить користувач). Відстань між сторонами квадратів дорівнює 10. Припустимо, що лівий верхній кут найменшого з них має координати (0; 0). Тоді лівий верхній кут наступного квадрата має координати (-10; 10), наступного — (-20; 20) тощо.

Припустимо, що і — це номер квадрата, починаючи від найменшого (1 — найменший, 5 — найбільший). Запиши в зошит формули, що визначають:

1) довжину сторони і-го квадрата;

2) координати лівого верхнього кута і-го квадрата.

У цих формулах змінну і треба множити на якісь фіксовані величини та, можливо, додавати чи віднімати величини.

Склади програму за шаблоном.

Ознайомся з відповідями на запитання: «Як визначити товщину та колір ліній?» і «Як намалювати дугу?» з рубрики «Запитання - відповіді». Виконай завдання.

Для кожної програми вкажи номер зображення, яке вона малює.

Намалюй у Python зображену веселку. Ось коди її кольорів: "violet", "indigo", "blue", "green", "yellow", "orange", "red". Товщина ліній дорівнює 10.

Щоб не програмувати малювання кожним кольором вручну, можна створити список кольорів:

Послідовно вибрати кольори можна за допомогою такого циклу:

Тут змінна і на кожному кроці набуватиме нового значення зі списку у порядку зазначення його елементів: "violet", "indigo", "blue", "green", "yellow", "orange", "red".

Зберігай радіус веселки у змінній х. Кожної ітерації циклу Черепашка має намалювати дугу кола радіуса х, підняти олівець, повернути на 90°, переміститися від кінця намальованої дуги до початку наступної дуги і ще раз повернути на 90°. Відстань, на яку переміщуватиметься Черепашка, теж залежить від х. Подумай, як саме!

Створи програми із вкладеними циклами, що малюють такі зображення:

У завданні 7 для визначення координат лівого верхнього кута першої цеглини в кожному ряді скористайся підказкою:

ЗАПИТАННЯ - ВІДПОВІДІ

Як у Python запрограмувати вкладені цикли?

У тілі циклу можна записувати будь-які команди, зокрема інші цикли. Цикл, що вкладений в інший цикл, називається внутрішнім, а той, що його містить, — зовнішнім. Команди в тілі зовнішнього циклу відділяються від лівого краю програми одиночним відступом (його роблять клавішею Tab), а в тілі внутрішнього циклу — подвійним (подвійне натискання клавіші Tab). На кожній ітерації зовнішнього циклу виконуються всі ітерації внутрішнього циклу. Для зовнішнього та внутрішнього циклів потрібно використовувати різні лічильники.

Розглянемо для прикладу таку програму:

У ній лічильник зовнішнього циклу — змінна і — набуває двох значень: Ота 1.

• Коли і=0, лічильник внутрішнього циклу — змінна j — набуває трьох значень: 0, 1 та 2.

• Коли і=1, змінна j також набуває трьох значень: 0,1 та 2.

Як визначати товщину та колір ліній?

Щоб малюнки були виразнішими, їх можна розфарбовувати, а також добирати товщину ліній.

Як Черепашка малює коло?

Команда turtle, circle(r) наказує Черепашці намалювати коло радіуса г.

Зауваж, що як до, так і після побудови кола Черепашка перебуває на тій самій його точці, причому коло міститься зліва від напрямку, у якому дивиться Черепашка.

Як намалювати дугу?

Щоб намалювати дугу, використовують команду circle з двома параметрами:

де г — це радіус кола; а — величина дуги (в градусах).

Якщо значення а додатне, то під час малювання дуги Черепашка рухатиметься вперед, якщо від’ємне — назад. І не забувай, що коло, частиною якого є дуга, міститься зліва від того напрямку, у якому дивиться Черепашка.

Ось приклади трьох програм та малюнків, які вони малюють. Зауваж, що на початку кожної програми Черепашка дивилася вправо.

 

 

Це матеріал з підручника Інформатика за 7 клас Коршунова

 



Попередня сторінка:  14. Малювання та цикли в Phyton
Наступна сторінка:   16. Моделювання в табличному процесорі ...



^