Получи случайную криптовалюту за регистрацию!

Работа с числами Интересно, что Swift позволяет хранить числа | Дизайнер учит код

Работа с числами

Интересно, что Swift позволяет хранить числа в различных системах счислений: двоичной, восьмиричной, шестнадцатиричной, и само собой, десятичной.

let binaryNumber = 0b11101 // 29 в двоичной системе
let octalNumber = 0o35 // 29 в восьмеричной системе
let hexadecimalNumber = 0x1D // 29 в шестнадцатеричной
print(octalNumber, octalNumber, octalNumber) // 29 29 29

Сложно представить, зачем это нужно на практике, но такая возможность существует.

Помимо этого, числа можно записывать с помощью знака подчёркивания. Такой способ помогает упростить визуальное считывание значения.

let number = 122900000
print(number) // 122900000

let underlinedNumber = 122_900_000
print(underlinedNumber) // 122900000

Возможно, вы знаете про разного рода приколы в JavaScript, где 0.1 * 3 будет 0.30000000000000004. Подобное в Swift тоже присутствует.

var number = 0.2
number += 0.1
print(number) // 0.30000000000000004

Решается всё с помощью специального типа данных Decimal. Он работает медленнее, чем схожие типы с плавающей точкой, такие как Float или Double. А также, потребляет больше памяти для вычислений.

Но при этом, вычисления происходят точнее. Чтобы пользоваться Decimal, нужно импортировать библиотеку Foundation.

import Foundation
var number: Decimal = 0.2
number += 0.1 print(number) // 0.3

Если вы нашли неточности или ошибки, можете написать об этом в комментариях.

#Swift