NaN

NaN (англ. Not-a-Number) — одне з особливих значень числа з рухомою комою. Відповідно до стандарту IEEE 754, такий стан задається через встановлення показника ступеня в зарезервоване значення. Використовується у багатьох математичних бібліотеках і математичних співпроцесорах. Цей стан може виникнути в різних випадках, наприклад, коли попередня математична операція завершилася з невизначеним результатом, або якщо в комірку пам'яті потрапило число, що не задовольняє умовам.

До операцій, що призводить до появи NaN як відповіді, належать:

  • Всі математичні операції, що містять NaN як один з операндів;
  • Ділення нуля на нуль;
  • Ділення нескінченності на нескінченність;
  • Множення нуля на нескінченність;
  • Додавання нескінченності до нескінченності протилежного знаку;
  • Обчислення квадратного кореня від'ємного числа [1].

Властивості

  • NaN не дорівнює жодному іншому значенню (навіть самому собі [2]); відповідно, найпростіший метод перевірки результату на NaN — це порівняння отриманої величини з самою собою.
  • Будь-яка нетривіальна операція, що приймає NaN як аргумент, завжди повертає NaN незалежно від значення інших аргументів. Єдиними винятками з цього правила є функції max і min, які повертають значення «другого» аргументу (відмінного від NaN).
  • Тривіальні операції, що є тотожністю, обробляються особливо: так, наприклад, 1 NaN дорівнює 1.

Див. також

Примітки

  1. у разі, якщо бібліотека, що виконує цю операцію, не підтримує або не налаштована на використання комплексних чисел
  2. оскільки операції порівняння проходять через бібліотечні функції, які зазвичай перевіряють стан числа з рухомою комою

Посилання

  • NaN на FOLDOC
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.