Вправа – відкрийте для себе типи з рухомою комою
- 8 хвилин
У цій вправі ви працюєте з типами даних з плаваючою комою, щоб дізнатися про нюанси відмінностей між кожним типом даних.
Числа з плаваючою комою — це простий тип значення, який представляє числа праворуч від десяткового знака. На відміну від інтегральних чисел, існують інші міркування, крім максимальних і мінімальних значень, які ви можете зберегти в даному типі з плаваючою комою.
Обчислення типів з плаваючою комою
По-перше, ви повинні розглянути цифри точності, які дозволяє кожен тип. Точність - це кількість знаків значень, що зберігаються після коми.
По-друге, ви повинні враховувати спосіб, у який зберігаються значення, і вплив на точність значення. Наприклад, float і double значення зберігаються всередині в двійковому (base 2) форматі, в той час як decimal зберігається в десятковому (base 10) форматі. Чому це має значення?
Виконання математики з двійковими значеннями з плаваючою комою може дати результати, які можуть здивувати вас, якщо ви звикли до десяткової математики (основа 10). Часто двійкова математика з плаваючою комою є наближенням реального значення. Тому і double є корисними, float тому що великі числа можна зберігати за допомогою невеликого обсягу пам'яті. Однак і double слід використовувати лише тоді, float коли наближення є корисним. Наприклад, відступити в кілька тисячних при розрахунку бризок сніжка у відеогрі досить близько.
Коли вам потрібна більш точна відповідь, вам слід використовувати decimal. Кожне значення типу decimal займає відносно великий обсяг пам'яті, однак виконання математичних операцій дає більш точний результат. Так, слід використовувати decimal при роботі з фінансовими даними або будь-яким сценарієм, де потрібен точний результат з розрахунку.
Використовуйте властивості MinValue і MaxValue для кожного підписаного типу з плаваючою комою
Видаліть або скористайтеся оператором примітки рядка
//, щоб прокоментувати весь код із попередніх вправ.Щоб переглянути діапазони значень для різних типів даних, оновіть код у редакторі коду Visual Studio таким чином:
Console.WriteLine("");
Console.WriteLine("Floating point types:");
Console.WriteLine($"float : {float.MinValue} to {float.MaxValue} (with ~6-9 digits of precision)");
Console.WriteLine($"double : {double.MinValue} to {double.MaxValue} (with ~15-17 digits of precision)");
Console.WriteLine($"decimal: {decimal.MinValue} to {decimal.MaxValue} (with 28-29 digits of precision)");
У меню Файл код Visual Studio Code виберіть Зберегти.
Перед створенням або запуском коду необхідно зберегти файл Program.cs.
На панелі EXPLORER, щоб відкрити термінал у розташуванні папки TestProject, клацніть правою кнопкою миші TestProject , а потім виберіть Відкрити в інтегрованому терміналі.
Панель терміналів має відкритися та містити командний рядок, який показує, що термінал відкрито в папці TestProject.
У командному рядку термінала, щоб запустити код, введіть dotnet виконати і натисніть клавішу Enter.
Якщо ви бачите повідомлення "Не вдалося знайти проект для запуску", переконайтеся, що в командному рядку Термінала відображається очікуване розташування папки TestProject. Наприклад:
C:\Users\someuser\Desktop\csharpprojects\TestProject>Ви побачите такий результат:
Floating point types: float : -3.402823E+38 to 3.402823E+38 (with ~6-9 digits of precision) double : -1.79769313486232E+308 to 1.79769313486232E+308 (with ~15-17 digits of precision) decimal: -79228162514264337593543950335 to 79228162514264337593543950335 (with 28-29 digits of precision)
Як ви можете бачити, і double використовувати інші позначення, ніж ті, float що використовуються для decimal представлення його найбільших і найменших можливих значень. Але що означає це позначення?
Розшифровка великих значень з плаваючою комою
Оскільки типи з плаваючою комою можуть містити великі числа з точністю, їх значення можуть бути представлені за допомогою «нотації E», яка є формою наукової нотації, що означає «помножити на 10, піднесене в степені». Отже, значення like 5E+2 буде значенням 500, оскільки воно еквівалентне 5 * 10^2 або 5 x 102.
Коротко
- Тип з плаваючою комою – це простий тип даних, який може містити дробові числа.
- Вибір правильного типу з плаваючою комою для вашої програми вимагає враховувати не лише максимальні та мінімальні значення, які він може містити. Ви також повинні враховувати, скільки значень може бути збережено після десяткового дробу, як зберігаються числа та як їх внутрішнє сховище впливає на результат математичних операцій.
- Значення з плаваючою комою іноді можуть бути представлені за допомогою «нотації Е», коли числа стають особливо великими.
- Існує принципова різниця в тому, як компілятор і середовище виконання обробляють
decimalна відміну відfloatабоdouble, особливо при визначенні необхідної точності з математичних операцій.
Перевірити свої знання
Зворотний зв’язок
Чи була ця сторінка корисна?
Ні
Потрібна допомога із цією темою?
Хочете скористатися Ask Learn, щоб отримати пояснення чи інструкції із цієї теми?