Модуль math. Теоретико-числові функції та функції представлення
Зміст
- 1. Підключення модуля math. Функція math.ceil(). Округлення в більшу сторону
- 2. Функція math.copysign(x,y). Присвоювання аргументу з врахуванням знаку числа
- 3. Функція math.fabs(x). Модуль числа
- 4. Функція math.factorial(x). Обчислення факторіалу
- 5. Функція math.floor(x). Округлення в меншу сторону
- 6. Функція math.fmod(x, y). Остача від ділення
- 7. Функція math.frexp(x). Обчислення нормалізованої мантиси та незсунутого порядку числа
- 8. Функція math.fsum(). Сума чисел в ітерованому об’єкті
- 9. Функція math.gcd(a, b). Найбільший спільний дільник двох чисел
- 10. Функція math.isclose(). Визначення близькості чисел
- 11. Функція math.isfinite(x). Визначення скінченості
- 12. Функція math.isinf(x). Визначення нескінченості
- 13. Функція math.isnan(x). Визначення значення NaN (not a number)
- 14. Функція math.ldexp(x, i). Зворотна функція до frexp(x)
- 15. Функція math.modf(x). Виділення дробової та цілої частини дійсного числа
- 16. Функція math.remainder(x, y). Залишок x відносно y
- 17. Функція math.trunc(x). Визначення цілої частини числа
- Зв’язані теми
Пошук на інших ресурсах:
1. Підключення модуля math. Функція math.ceil(). Округлення в більшу сторону
Щоб використати теоретико-числові функції та функції представлення з модуля math, потрібно цей модуль попередньо підключити
import math
Функція math.ceil(x) повертає таке дійсне число y, яке відповідає наступним умовам:
- значення числа y рівне найближчому цілому x;
- значення числа y більше або рівне значення x.
В якості аргументу x може задаватись тільки ціле або дійсне число. Якщо спробувати задати комплексне число в якості аргументу x, то інтерпретатор повідомить про помилку.
Приклад.
import math # для дійсного аргументу, додатні числа x = 2.65 y = math.ceil(x) # y = 3.0 x = 3.0 # y = 3.0 y = math.ceil(x) x = 2.000001 y = math.ceil(x) # y = 3.0 # дійсний аргумент, від'ємні числа x = -2.0001 # y = -2.0 y = math.ceil(x) # цілий аргумент x = 13 y = math.ceil(x) # y = 13.0
⇑
2. Функція math.copysign(x,y). Присвоювання аргументу з врахуванням знаку числа
Функція math.copysign(x,y) повертає результат дійсного типу, який рівний значенню аргументу x але зі знаком аргументу y. Аргументи x, y можуть бути тільки цілого або дійсного типу.
Приклад.
import math # функція math.copysign(x,y) x = 3.64 y = -5.44 z = math.copysign(x, y) # z = -3.64 => значення x, знак y x = -2.85 y = 0.00001 z = math.copysign(x, y) # z = 2.85 # випадок, коли y = -0.0 x = 2.85 y = -0.0 # дійсне від'ємне число z = math.copysign(x, y) # z = -2.85 # випадок, коли y = 0.0 x = 3.18 y = 0.0 z = math.copysign(x, y) # z = 3.18
⇑
3. Функція math.fabs(x). Модуль числа
Функція math.fabs(x) повертає абсолютне значення аргументу x. Функція повертає дійсний результат. Аргумент x може бути як дійсного так і цілого типу. Аргумент x не може бути комплексного типу.
Приклад.
# функція math.fabs(x) - модуль x import math x = -15.55 y = math.fabs(x) # y = 15.55 x = 0.01 y = math.fabs(x) # y = 0.01 # для цілого аргументу x x = -15 y = math.fabs(x) # y = 15.0 - дійсний результат
⇑
4. Функція math.factorial(x). Обчислення факторіалу
Функція factorial(x) повертає факторіал цілочисельного аргументу x. Результат функції є цілий тип. Заборонено використовувати аргумент x дійсного типу за винятком ситуацій, коли дробова частина рівна 0 (наприклад 5.0).
Приклад.
# функція math.factorial(x) import math x = 5 y = math.factorial(x) # y = 120 x = 5.0 # дозволено, тому що дробова частина рівна 0 y = math.factorial(x) # y = 120 #x = 5.5 - Заборонено, помилка #y = math.factorial(x) # y = 120
⇑
5. Функція math.floor(x). Округлення в меншу сторону
Функція math.floor(x) повертає дійсне число y, яке відповідає наступним умовам:
- значення числа y рівне найближчому цілому x;
- значення числа y менше або рівне значення x.
В якості аргументу x може задаватись тільки ціле або дійсне число. Якщо спробувати задати комплексне число в якості аргументу x, то інтерпретатор повідомить про помилку.
Приклад.
# функція math.floor(x) import math x = 5.2 y = math.floor(x) # y = 5.0 x = 5.99 y = math.floor(x) # y = 5.0 x = -5.2 y = math.floor(x) # y = -6.0 x = -6.0 y = math.floor(x) # y = -6.0
⇑
6. Функція math.fmod(x, y). Остача від ділення
Функція fmod(x,y) повертає остачу від ділення двох чисел. Кожен з аргументів x, y може бути цілого або дійсного типу. Функція є аналогом оператора %.
Відмінність між функцією fmod() та оператором % полягає в наступному. Для цілочисельних аргументів оператор % повертає результат цілого типу. В той же час функція fmod(x, y) для аргументів цілого типу повертає результат дійсного типу.
Оператор % можна також застосовувати для аргументів дійсного типу. Однак, у деяких випадках оператор x%y може бути не зовсім обчислювальним для дійсних аргументів. Тому цей оператор рекомендуєтсья застосовувати для цілочисельних аргументів. А для дійсних аргументів краще використовувати функцію fmod(x, y).
Приклад.
# функція math.fmod(x) import math # для дійсних аргументів x = 5.2 y = 0.4 y = math.fmod(x, y) # y = 0.3999999999999999 # для цілих аргументів x = 15 y = 4 z = math.fmod(x, y) # z = 3.0 - дійсний результат v = x % y # v = 3 - цілий результат
⇑
7. Функція math.frexp(x). Обчислення нормалізованої мантиси та незсунутого порядку числа
Дана функція повертає нормалізовану мантису m та незсунутий порядок e дійсного числа x у вигляді пари (кортежу). Обчислювальні значення задовільняють співвідношенням:
Приклад.
# функція math.frexpr(x) import math x = 2.8 y = math.frexp(x) # y = (0.7, 2) # нульове значення x x = 0.0 y = math.frexp(x) # y = (0.0, 0)
⇑
8. Функція math.fsum(). Сума чисел в ітерованому об’єкті
Функція math.fsum(x) знаходить точну суму чисел з плаваючою комою в ітерованому об’єкті x. Функція запобігає втраті точності шляхом відслідковування деяких проміжних часткових сум.
Приклад.
# функція math.fsum(x) import math y = math.fsum([0.02, 0.02, 0.02, 0.02, 0.02]) # y = 0.1
⇑
9. Функція math.gcd(a, b). Найбільший спільний дільник двох чисел
Функція math.gcd(a,b) реалізована у версіях Python 3.5 і вище. Дана функція повертає найбільший спільний дільник аргументів a, b. Якщо a чи b відмінні від нуля, то результат функції є найбільше число, на яке a та b діляться націло.
Приклад.
# функція gcd(a,b) import math a = 15 b = 5 c = math.gcd(a,b) # c = 5 a = 60 b = 40 c = math.gcd(a,b) # c = 20 a = -60 b = 24 c = math.gcd(a,b) # c = 12
⇑
10. Функція math.isclose(). Визначення близькості чисел
Дана функція використовується у версіях Python 3.5 і вище.
Функція isclose(a, b, rel_tol, abs_tol) повертає True, якщо числа a, b є близькі один до одного за значеннями. В противному випадку функція повертає False.
Близькість двох чисел обчислюється на основі:
- відносного допустимого відхилення rel_tol;
- абсолютного допустимого відхилення abs_tol.
Значення відносного та абсолютного відхилень можуть бути задані явно. Якщо значення відносного та абсолютного відхилень не задані, то аргументи rel_tol та abs_tol приймають наступні значення:
- rel_tol = 1e-09;
- abs_tol = 0.0.
Якщо потрібно задати відносну похибку 3%, то rel_tol=0.03.
Значення abs_tol визначає максимальний допуск між числами: abs_tol = |a-b|. Значення abs_tol має бути завжди не менше нуля.
Приклад.
# функція isclose(a,b,rel_tol,abs_tol) import math a = 5.000001 b = 5.0 c = math.isclose(a,b) # c = False a = 5.0000000000001 b = 5.0 c = math.isclose(a,b) # c = True
⇑
11. Функція math.isfinite(x). Визначення скінченості
Функція isfinite(x) введена в версії Python 3.2 і вище. Дана функція повертає True, якщо виконуються обидві умови:
- значення x не є нескінченістю;
- значення x не є рівне NaN.
В іншому випадку функція повертає False. Значення x = 0.0 розглядається як кінцеве.
Приклад.
# функція isfinite(x) import math x = 0.0 f = math.isfinite(x) # f = True
⇑
12. Функція isinf(x). Визначення нескінченості
Функція isinf(x) повертає True, якщо x є додатньою або від’ємною нескінченістю.
Приклад.
# функція isinf(x) import math x = 0.0 f = math.isinf(x) # f = False
⇑
13. Функція math.isnan(x). Визначення значення NaN (not a number)
Функція isnan(x) повертає True, якщо значення x рівне значенню NaN (not a number). В іншому випадку функція повертає False.
Значення NaN – це особливе значення (або стан) що приймає невизначений результат. NaN виникає внаслідок деяких математичних операцій і не містить жодного іншого значення. NaN може виникати внаслідок операцій що дають невизначений результат, наприклад, ділення нуль на нуль, множення нуля на нескінченість і т.д.
Приклад.
# функція isnan(x) import math x = 0.0/5 f = math.isnan(x) # f = False
⇑
14. Функція math.ldexp(x, i). Зворотна функція до frexp(x)
Функція ldexp(x, i) повертає значення x**(2*i). Функція є зворотною до функції math.frexp(x).
Приклад.
# функція ldexp(x,i) import math x = 3.0 i = 2 y = math.ldexp(x,i) # y = 12.0
⇑
15. Функція math.modf(x). Виділення дробової та цілої частини дійсного числа
Функція math.modf(x) повертає пару дійсних чисел, яка складається з:
- дробової частини числа x (значення числа після коми);
- цілої частини числа x.
Приклад.
# функція modf(x) import math x = 3.23 y = math.modf(x) # y = (0.22999999999999998, 3.0) x = -81.02 y = math.modf(x) # y = (-0.01999999999999602, -81.0)
⇑
16. Функція math.remainder(x, y). Залишок x відносно y
Функція math.remainder(x, y) повертає дійсне число, яке є залишок x відносно y. Передбачається, що аргументи x та y є кінцеві. Також значення y має бути ненульовим.
Результат функції обчислюється за формулою
x – n·y
де n – найближче ціле число до точного значення фактора x/y.
Приклад.
# функція remainder(x,y) import math x = 3.2 y = 3.2 z = math.remainder(x, y) # z = 0.0 x = 3.7 y = 4.2 z = math.remainder(x, y) # z = -0.5 x = 4.7 y = 3.2 z = math.remainder(x, y) # z = 1.5 x = 15.0 y = 3.3 z = math.remainder(x, y) # z = -1.4999999999999991 x = -6.0 y = 2.1 z = math.remainder(x, y) # z = 0.30000000000000027
⇑
17. Функція math.trunc(x). Визначення цілої частини числа
Функція math.trunc(x) повертає цілочисельне значення, яке рівне цілій частині числа x.
Приклад.
# функція trunc(x) import math x = 2.8 y = math.trunc(x) # y = 2 x = -3.001 y = math.trunc(x) # y = -3 x = 2.0000001 y = math.trunc(x) # y = 2
⇑
Зв’язані теми
- Степеневі та логарифмічні функції
- Тригонометричні функції
- Гіперболічні функції
- Спеціальні функції та константи
⇑