1 of 29

Практикум з використання інформаційних технологій

Нова українська школа

Урок 62

Інформатика 8

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.

2 of 29

Практикум з використання�інформаційних технологій

Проєкт «Піцерія»

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

3 of 29

Проєкт «Піцерія»

Створимо електронний бланк замовлення для піцерії!

Власник ресторану може вводити ціни, а клієнт - вказувати кількість кожної страви. Програма має автоматично визначити вартість кожного найменування в замовленні, а після натискання кнопки Розрахувати - вивести сумарну вартість.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

4 of 29

Проєкт «Піцерія»

Елементи керування які необхідно вибрати для оформлення інтерфейсу програми.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

5 of 29

Проєкт «Піцерія»

Створіть графічне вікно розміром 440x300.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

6 of 29

Проєкт «Піцерія»

Розглянемо створення інтерфейсу програми покроково. Почнемо з першого рядка.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

7 of 29

Проєкт «Піцерія»

Розташуйте у вікні написи першого рядка та першого стовпця, враховуючи, що відступи між рядками - 40 пікселів.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

8 of 29

Проєкт «Піцерія»

Для введення кількості страв необхідно використати елемент керування «шкала» з конструктором Scale.

Шкала - це елемент керування, призначений для вибору чисел із діапазону.

sc = Scale(orient=VERTICAL, length=80, from_=10, to=40, tickinterval=10)

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

9 of 29

Проєкт «Піцерія»

Елемент керування «шкала» може мати такі властивості (усі вони необов'язкові):

початкове значення шкали

from_

кінцеве значення шкали

to

інтервал відображення міток шкали

tickinterval

крок переміщення повзунка шкали

resolution

орієнтація (HORIZONTAL - горизонтальна,

VERTICAL - вертикальна)

orient

довжина шкали (у пікселях)

length

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

10 of 29

Проєкт «Піцерія»

Для надання кольорового фону текстовим полям та написам, які містить вікно програми, необхідно скористатися властивістю bg, значенням якої є код кольору.

Наприклад, код для виведення кольорового напису:

Код для виведення кольорового текстового поля:

Напис

Текстове поле

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

11 of 29

Проєкт «Піцерія»

1) Додайте у створеному вікні:

• текстові поля ціни з іменами Р1, Р2, РЗ, Р4;

• шкали S1, S2, S3, S4;

• написи вартостей - С1, С2, СЗ, С4 та загальної вартості - С5;

• інші написи нижнього рядка і кнопку.

2) Запустіть проєкт на виконання та перевірте роботу шкал.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

12 of 29

Проєкт «Піцерія»

Для виведення першого текстового поля з ціною піци скористайтеся КОДОМ:

Для виведення першої шкали скористайтеся кодом:

Для виведення першого напису з вартістю скористайтеся кодом:

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

13 of 29

Проєкт «Піцерія»

Обчислимо вартість першої страви - піци.

х1

Ціну піци зберігатимемо у змінній

float

k1

Кількість піц у змінній

int

y1

Вартість у змінній

float

x1

k1

y1

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

14 of 29

Проєкт «Піцерія»

Щоб надати змінній k1 значення положення повзунка шкали s1, використаємо таку конструкцію:

змінна, що одержує значення положення повзунка (текстовий рядок)

надання змінній k1 цілочисельного значення положення повзунка

прив’язана функція s1_click до події зміни положення повзунка

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

15 of 29

Проєкт «Піцерія»

Крім обчислення кількості k1у функції s1_click ще три дії, що опрацьовує зміщення повзунка шкали

1. зчитування ціни з текстового поля

2. обчислення вартості y1

3. виведення вартості в написі

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

16 of 29

Проєкт «Піцерія»

Виведемо вартість у1 у написі с1. Для цього використаємо таку конструкцію:

метод запису значення до рядка типу StringVar

set

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

17 of 29

Проєкт «Піцерія»

Додайте функції, що опрацьовують події пересування повзунків шкал s1, s2, s3, s4.

У результаті вартості страв мають підраховуватися та відображатися в написах с1, с2, сЗ, с4

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

18 of 29

Проєкт «Піцерія»

Фрагмент коду визначення загальної вартості замовлення у разі натискання кнопки Розрахувати.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

19 of 29

Проєкт «Піцерія»

Як ви думаєте, чому в обробнику натискання кнопки Розрахувати змінні у1, у2, уЗ, у4 було оголошено як global?

Тому що значення цих змінних визначаються в інших функціях

Де ще ці змінні потрібно оголосити з декларацією global?

В обробниках подій переміщення повзунків шкал

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

20 of 29

Проєкт «Піцерія»

Можливо, ви помітити, що якщо не вибрати принаймні одну страву, програма видає помилку.

Це відбувається тому, що програма не може виконати додавання у1+у2+уЗ+у4 неініціалізованих змінних, тобто змінних, яким ще не присвоєно значення. Адже якщо ми не оберемо, наприклад, піцу, то значення змінної у1 буде не ініціалізовано.

Отже, щоб ця помилка не виникала, достатньо встановити початкові значення змінних:

y1=0

y2=0

y3=0

у4=0

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

21 of 29

Проєкт «Піцерія»

Якщо вартість є цілим числом, дробова частина .0 не повинна відображатися. Це забезпечимо за допомогою функції rez, яка викликатиметься під час відображення вартостей у функціях s1_click, s2_click і т.д.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

22 of 29

Проєкт «Піцерія»

Продовжимо розробляти електронну форму замовлень для піцерії. Яка ж піца без соусу, майонезу, кетчупу? Надамо користувачу можливість замовляти ці добавки! Найзручніший інструмент для цього - прапорці.

При використанні кількох елементів списку потрібно для кожного використати свою змінну.

onvalue (ввімкнено)

offvalue (вимкнено)

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

23 of 29

Проєкт «Піцерія»

Продовжимо вдосконалювати бланк замовлення для піцерії.

Надамо клієнту можливість обирати добавки до піци.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

24 of 29

Проєкт «Піцерія»

Для вибору добавок до піци необхідно використати прапорці, конструктор яких називається Checkbutton.

Прапорці дають змогу користувачеві обрати кілька варіантів із кількох запропонованих.

Для додавання прапорця використовують такий код:

об’єкт «прапорець»

конструктор

властивість напису

Прапорець

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

25 of 29

Проєкт «Піцерія»

Встановіть значення ширини вікна 650 пікселів.

Додатайте напис "Добавки до піци, 3 грн." і прапорці "Майонез", "Кетчуп", "Соус", “Ананаси".

Враховуючи, що відступи між рядками - 40 пікселів.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

26 of 29

Проєкт «Піцерія»

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

Код, який треба додати до обробника події переміщення повзунка на шкалі кількості піц.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

27 of 29

Проєкт «Піцерія»

Як і для перемикачів, для зчитування значень прапорців необхідно прив’язати їх до змінних, що будуть одержувати стан прапорця (встановлено = 1 або знято = 0).

Для цьго застосуємо такий код:

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

28 of 29

Проєкт «Піцерія»

Змініть код обробника події натискання кнопки Розрахувати.

1. Надайте змінній k початкове значення 0.

2. Уведіть код перевірки стану кожного прапорця.

3. Змініть код обчислення загальної вартості покупки: сума вартості усіх страв та добавок до піци.

Розділ 6

© Вивчаємо інформатику teach-inf.com.ua

29 of 29

Успіхів�у навчанні!

Нова українська школа

Урок 62

Інформатика 8

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.