Тема 26-27(8): Введення-виведення даних. Арифметичні операції.
План вивчення теми:
Типи даних
Використання в проекті констант
Способи введення та виведення даних засобами мови програмування у Python
Використання в проекті змінних величин та констант
Арифметичні операції над числами
Д/з: опрацювати:
§6.5
веб-сторінку уроку 26
Типи даних
У ході виконання проекту можна опрацьовувати дані.
Дані - це порція інформації про об'єкт, придатна для збереження, обробки та передачі за допомогою ПК.
Більшість задач із програмування передбачають введення даних користувачем, над даними виконуються деякі операції, після чого виводиться результат опрацювання:
введення → опрацювання → виведення.
У мові програмування Python змінним відповідають значення певного типу. Тип визначає:
які значення може набувати відповідна змінна;
які операції над значеннями можна виконувати;
який обсяг оперативної пам’яті комп’ютера буде виділено для зберігання даних цього типу.
Типи даних у Python:
float - дійсні числа (наприклад, 1.45, -3.789654, 0.00453). Примітка: роздільником цілої і дробової частини служить крапка, а не кома.
int - цілі числа наприклад, 4, 687, -45, 0
str - текстові дані (наприклад, "ball", "What is your name?", 'DkfjUv', '6589').
Використання в проекті констант (постійних величин)
У проекті, крім змінних, можна використовувати константи (постійні величини). У мові Python не можна створити сталі величини (константи), як в інших мовах програмування, щоб для них було заборонено змінювати значення величини. Натомість серед програмістів є домовленість записувати імена величин, значення яких не рекомендується змінювати, великими літерами.
Знаки арифметичних операцій у виразах:
+ – додавання;
– – віднімання;
* – множення;
/ – ділення.
Тип результату обчислення значень арифметичних виразів у мові Python залежить від типу величин, що є операндами в цьому виразі. Так, якщо обидва операнди є величинами цілого типу, то в результаті їх додавання, віднімання та множення отримаємо значення цілого типу. Якщо хоча б один з операндів дійсного типу, то і результат виконання названих операцій буде також дійсного типу. Результат ділення величин як цілого, так і дійсного типу завжди є дійсним числом.
Способи введення та виведення даних
В графічному режимі:
для введення вхідних даних з використанням елементу керування - поле:
змінна = float(ім'я_поля.get()) - команда введення з клавіатури у поле дійсної змінної . Напр., x = float(entry1.get())
змінна = int(ім'я_поля.get()) - команда введення з клавіатури у поле цілої змінної. Напр., x = int(entry1.get()).
для виведення результатів з використанням елементів керування - поле, напис, вікно повідомлень
ім'я_напису[‘text’] = str(змінна) - команда виведення на екран значення змінної в напис. Напр., label[‘text’] = str(z),
ім'я_поля.insert(0, змінна) - команда виведення на екран в поле. Напр., entry.insert(0, z).
В консольному режимі:
для введення вхідних даних - використовують функцію input(‘<текст>’)
Для введення даних під час виконання проєкту в команді присвоювання, наприклад,
x = float(input(‘Уведіть перший доданок: ’)) або x = int(input(‘Уведіть другий доданок: ’)).
для виведення значень (результатів) команда - print(ім'я_змінної)
Функція input() призначена для введення даних із клавіатури. Згадаємо схему виконання вказівки введення на прикладі уведення цілого значення для змінної х (рис.1):
1 — програма призупиняє роботу й очікує введення;
2 — виводиться підказка щодо очікуваного значення;
3 — уведене значення перетворюється на ціле число;
4 — отримане значенння присвоюється змінній x.
При використанні функції input() Python інтерпретує введені дані як рядок. Тому при уведенні числових значень слід до результату введення застосовувати функції int() і float(), які перетворюють рядкове подання числа на ціле або дійсне число.
Якщо потрібно ввести декілька значень в одному рядку, можна скористатися функцією map().
Ввести значення для змінних a, b, c одним рядком:
a, b, c = map(float, input('a, b, c? ').split())
Проаналізуємо виконання цього оператора:
функція split() перетворює рядок, який повернула функція input('a, b, c? '), на список, використовуючи пропуск як роздільник;
функція map() застосовує функцію float() до кожного елемента списку й повертає послідовність дійсних чисел.
Для виведення значень використовують команду ргіnt(<список значень>).
У списку виведення можуть бути константи, змінні, вирази. Наприклад, команда:
print(z) виведе значення змінної z;
ргіnt(‘Сума дорівнює’) виведе текст Сума дорівнює;
ргіnt(Сума дорівнює’, z) виведе текст Сума дорівнює, а після нього через пропуск значення змінної z.
Приклад 1: Створимо проект, у якому потрібно обчислити масу сосни, якщо відомий її об’єм.
І. Побудуємо математичну модель для цього проекту:
Обчислити масу сосни, якщо відомий її об'єм.
Дано: об'єм сосни V.
Треба: маса сосни m.
Зв'язок: m=V*p, де константа р = 520 кг/м³ - густина сосни.
ІІ. Створення проекту
Вважатимемо, що в проекті значення об’єму вводитиметься в кубічних метрах у поле з іменем entry, а значення маси виводитиметься в кілограмах у напис з іменем label.
Р=520;
V =float(entry.get())
m =V*P
label["text"] = str(m)
Приклад 2: Створити проєкт для обчислення суми двох довільних чисел.
І. Побудуємо математичну модель для цього проєкту:
вхідні дані: два довільних числа х і у;
кінцеві результати: їх сума z;
формули: z = x + y.
ІІ. Створення проекту
Розмістимо у вікні проєкту два поля, напис і кнопку з текстом Сума. Проєкт, що створює вікно з розміщеними в ньому об’єктами, процедура для додавання двох чисел, а також вікно виконання проєкту наведені на малюнку 6.49
Приклад 3:
Увести число до поля об’єкта entry1 і вивести квадрат числа до поля об’єкта entry2. Зчитування значення з текстового поля, піднесення до квадрата і виведення результату в поле entrу2 виконує функція kvadrat() — обробник події Натискання клавіші Enter.
Задачі для самостійного виконання
№1. Побудуйте математичну модель і створіть проєкт для обчислення значення виразу (2 * a + b) * (a + c). Збережіть проєкт у папці з іменем Завдання 6.5.6, створеній у вашій папці.
№2. Побудуйте математичну модель і створіть проєкт для визначення, яку суму грошей має заплатити споживач за спожиту електроенергію. Збережіть проєкт у папці з іменем Завдання 6.5.10, створеній у вашій папці.
№3. Вкладник поклав у банк х грн під р % річних. Після закінчення року він забирає прибуток. Побудуйте математичну модель і створіть проєкт для визначення, який прибуток отримає вкладник через 3 роки. Збережіть проєкт у папці з іменем Завдання 6.5.11, створеній у вашій папці.