пʼятниця, 19 березня 2021 р.

Типи даних (Інформатика, 8 кл.)

 

Типи даних. Операції з числовими типами

 

Дані та їх типи

Можна помітити, що все, що ми робимо, ми робимо над чимось - якимись предметами або об'єктами. Ми міняємо властивості об'єктів та їх можливості. Програми для комп'ютерів також маніпулюють якимись об'єктами (назвемо їх поки даними).

Очевидно, дані бувають різними. Дуже часто комп'ютерній програмі доводиться працювати з числами і рядками. Наприклад, над числами виконуються арифметичні операції. Можна сказати, що операція додавання виконувала зміну першого числа на величину другого, або множення збільшувало одне число в кількість разів, що відповідає другому числу.

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

·       Цілі числа (integer) - наприклад, 4, 687, -45, 0.

·       Числа з плаваючою крапкою (float point) - дробові числа (наприклад, 1.45, -3.789654, 0.00453). Приміткароздільником цілої і дробової частини служить крапка, а не кома.

·       Рядки (string) - набір символів, розміщених між лапками або апострофами (наприклад, "ball", "What is your name?", 'DkfjUUv', '6589').

Перетворення типів

Часто виникає необхідність перейти від одного типу даних до іншого. Наприклад,  число, яке виводиться на екран, спочатку може знадобитися перетворити в текст. Цю операцію за вас виконує команда print, але бувають ситуації, коли потрібно поміняти тип без виведення інформації на екран або здійснити перетворення рядка в число (таке перетворення команда print виконувати не вміє). Ця операція називається перетворенням типів (type conversion). Яким чином вона реалізується? Насправді інтерпретатор Python не «перетворює» типи один в одного. Він створює з вихідного елемента новий елемент потрібного вам типу. Ось ряд функцій, які вміють виконувати цю операцію: 

·       float () створює дріб (десятковий) з рядка або цілого числа. 

·       int () створює ціле число з рядка або дробового числа. 

·       str () створює рядок з числа (або значення будь-якого іншого типу).

Дужки в кінці вказують, що перед нами не команди мови Python (такі як print), а вбудовані в нього функції.

Перетворення рядків у числа

Отримати з рядка число можна наступним чином:

>>> a = '36.6'
>>> b = float(a)
>>> a
'36.6'
>>> b
36.6

Зверніть увагу, що змінна a виводиться в лапках. Так інтерпретатор Python показує, що це рядок. А для змінної b виводиться значення дробового числа. 

Помилки при перетворенні типів 

Якщо дати функції int() або float() щось відмінне від числа, вона не спрацює. Наприклад:

>>> print(float('Hello!'))
Error: could not convert string to float: 'Hello!'

Ми отримали повідомлення про помилку, в якому говориться, що інтерпретатор Python не може перетворити рядок "Hello!" в число.  

Операції з числовими типами:

Операція               Приклад                Результат

a+b           11+4          15

a-b           11-4          7

a*b           11*4          44

a/b           11/4          2.75

a**b          11**4         14641

a//b          11/4          2

a%b           11%4          3

Інкремент і декремент 

Операції типу X = X + 10 називають збільшенням, або інкрементом.

Операції типу X = X – 10 називають зменшенням, або декрементом.

Ці операції в програмуванні виконуються настільки часто, що для них вигадали спеціальні оператори: + = (інкремент) і – = (декремент). Ось як вони застосовуються:

>>> num = 10
>>> num += 1
>>> num
11

 Або:

>>> num = 10
>>> num -= 1
>>> num
9

У першому випадку до числа додається одиниця. (Воно змінюється з 10 на 11) У другому випадку від числа віднімається одиниця. (Воно змінюється з 10 на 9.) 

Дуже великі і дуже маленькі 

Пам'ятайте, як ми перемножуємо два дуже великих числа? Відповідь також являла собою велике число. Іноді в Python такі числа виводяться на екран трохи по-іншому. Виконайте в інтерактивному режимі цю операцію:

>>> 123654789654586.3256*256325896533254.32
3.169592481884282e+28

Буква e дозволяє виводити на екран дуже великі числа і називається експоненціальним поданням, або e-нотацією. При роботі з дуже великими (або з дуже маленькими) числами вкрай незручно писати всі цифри і десяткові розряди. А в математиці такі числа зустрічаються досить часто. Наприклад, число 38 000 000 000 000 000. (Це 38 квадрильйонів). Іншим способом відображення цього числа є експоненціальне представлення, в якому поряд з десятковими числами фігурує ступінь 10. В цьому випадку число буде записано як 3.8 × 10**16, вираз читається як «три цілих вісім десятих на десять в шістнадцятому степені».

В e-нотації наше число виводиться на екран як 3.8E16 або як 3.8e16. В даному випадку буква E позначає ступінь 10. Тобто фактично у нас написано 3.8 × 10**16.

При записі дуже маленьких чисел, наприклад 0.0000000000001752, застосовується піднесення до від’ємного степеня. Тобто можна записати 1.752 × 10**-13, або 1.752e-13.

Подібна форма запису дозволяє представляти в Python як дуже великі, так і дуже маленькі числа (більш того, в ній можна при необхідності представити будь-яке число). наприклад:

>>> a = 2.6e3
>>> b = 4.8E5
>>> a+b
482600.0

Незважаючи на введення чисел з буквою e, відповідь виведена в звичайній десятковій формі.

 

(Джерело: http://nikolay.in.ua/navchaemos/python-3/612-tipi-danikh-funktsiji-peretvorennya-tipiv-operatsiji-z-chislovimi-tipami)

 

 

Немає коментарів:

Дописати коментар