Разное

Type double: Вещественные типы (double, float) — Типы данных — Основы языка

Тип данных Double — Visual Basic

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 2 мин

Содержит числа с плавающей запятой с двойной точностью со знаком IEEE 64-разрядной (8-байтовой) с плавающей запятой, которые варьируются от -1,79769313486231570E+308 до -4. 94065645841246544E-324 для отрицательных значений и от 4,94065645841246544E-324 до 1,79769313486231570E+308 для положительных значений. Числа двойной точности хранят приближение реального числа.

Тип Double данных предоставляет наибольшее и наименьшее возможные величины для числа.

Значение по умолчанию для типа Double — 0.

Советы по программированию

  • Точность. При работе с числами с плавающей запятой помните, что они не всегда имеют точное представление в памяти. Это может привести к непредвиденным результатам определенных операций, таких как сравнение значений Mod и оператор. Дополнительные сведения см. в разделе «Устранение неполадок типов данных».

  • Конечные нули.

    Типы данных с плавающей запятой не имеют внутреннего представления конечных нулевых символов. Например, они не различают 4.2000 и 4.2. Следовательно, конечные нулевые символы не отображаются при отображении или печати значений с плавающей запятой.

  • Символы типов. При добавлении к литералу символа типа литерала R производится принудительное приведение литерала к типу данных Double. Например, если за целочисленным значением Rследует, значение изменяется на Double.

    ' Visual Basic expands the 4 in the statement Dim dub As Double = 4R to 4.0:
    Dim dub As Double = 4.0R
    

    При добавлении символа идентификатора типа # к любому идентификатору производится принудительное приведение этого идентификатора к типу Double. В следующем примере переменная

    num вводится в виде:Double

    Dim num# = 3
    
  • Тип Framework. В .NET Framework данный тип соответствует структуре System.Double.

См. также раздел

  • System.Double
  • Типы данных
  • Тип данных Decimal
  • Тип данных Single
  • Type Conversion Functions
  • Сводка по преобразованию
  • Эффективное использование типов данных
  • Устранение неполадок, связанных с типами данных
  • Символы типов

Double, Float — не вещественные числа / Хабр

Во многих источниках тип double и float, числа с плавающей запятой/точкой зачем-то называют вещественными. Такое чувство что кто-то когда-то совершил ошибку или не внимательно написал эту глупость и все как один начали её повторять, совершенно не задумываясь о чём они говорят.

Ладно это были бы просто троечники студенты и любители, так эту ошибку говорят и те, кто обучают специалистов. И эта проблема терминологии не одного ЯП, их правда много (Java, C++, C#, Python, JS и т.д.) везде, где бы я не искал, всегда находятся статьи, ответы, лекции, где дробные числа называют вещественными!

Вот ОЧЕНЬ МАЛЕНЬКАЯ выборка:

  • https://javarush.ru/quests/lectures/questsyntaxpro.level04.lecture06 — JavaRush

  • https://docs-python.ru/tutorial/osnovnye-vstroennye-tipy-python/tip-dannyh-float-veschestvennye-chisla/ — Docs Python3

  • http://cppstudio.com/post/310/ — CppStudio

  • https://ejudge.ru/study/3sem/sem07.pdf — Ejudge

  • https://ru.wikipedia.org/wiki/Система_типов_Си — даже всеми любимая Wikipedia!

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

Начнём с простого, что такое вещественное число коим называют double и float. Будет немного формул, но не пугайтесь, прочитайте пожалуйста до конца, они очень простые, к каждой я даю интуитивное объяснение.

Вещественное число

Определение можете прочитать в Википедии или дочитать до конца мою статью, где я простым языком скажу или вы сами поймёте, но нужно проследить за мыслью, которую я хочу донести до вас. Я напишу формулой из теории множеств:

R = Q ∪ I

Где, R — множество вещественных чисел;

Q — множество рациональных чисел;

I — множество иррациональных чисел.

Так же Q ⊂ R и I ⊂ R.

Расшифровка тем, кто не очень с теорией множеств. Вещественные числа эта числа которые включают в себя Рациональные и Иррациональные числа (R = Q ∪ I), т.к. Вещественные числа включают их в себя, то Рациональные числа и Иррациональные числа являются подмножеством множества Вещественных (Q ⊂ R и I ⊂ R), причём строго, то есть Q != R и I != R, это очевидная мысль, но её требуется подчеркнуть.

Теперь к самому интересному, какие числа называются Рациональными и Иррациональными (представляю себя преподавателем начальных курсов технических вузов).

Рациональные

Начнём с Рациональных, возьмём определение из википедии.

Рациональное число (от лат. ratio «отношение, деление, дробь») — число, которое можно представить в виде обыкновенной дроби m/n, где m — целое число, а n — натуральное.

Так же стоит отметить, что Рациональные включают в себя Целые и Натуральные числа (-1, 0, 1, 2 …) их можно выразить в виде дроби, 1 = 1/1, 2 = 2/1, -1 = -1/1, 0 = 0/1 и т.д.

Почему это важно? Потому что Иррациональные числа не включают в себя Целые и Натуральные числа, это отдельный класс чисел.

Иррациональные

Берём определение из Википедии.

Иррациональное число — это вещественное число, которое не является рациональным, то есть не может быть представлено в виде обыкновенной дроби m/n, где m,n — целые числа, n != 0. Иррациональное число может быть представлено в виде бесконечной непериодической десятичной дроби.

Так же приведу примеры иррациональных чисел, чтобы стало понятно: π (число пи), e (число Эйлера), √2.

Вы начали что-то подозревать? Если нет я помогу вам.

Первое предложение определения — это то, о чём я вам говорил, то, что Иррациональные числа — это отдельный класс чисел и он не включает в себя Целые и Натуральные.

Но самое важное здесь это второе предложение «Иррациональное число может быть представлено в виде бесконечной непериодической десятичной дроби.».

Что это значит? Заметили, что в примерах я дал вам буквенное обозначение? Это не просто так, это представление иррационального числа, ВАЖНО — сама запись π это не само иррациональное число, это всего лишь его представление, и оно является чем угодно, но не иррациональным числом. Само Иррациональное число оно бесконечно. Понимаете?

То есть его невозможно записать по определению. Никакой памяти в компьютере не хватит чтобы его записать. Это невозможно!

И мало того что в большинстве (я не проверял прям на всех, но очень сомневаюсь, что хотя бы в одном это есть) языков в которых используется термин Вещественный тип нельзя чисто синтаксически сделать запись по типу: «double a = π», попросту будет ошибка компиляции, так ещё если и возможно с помощью латинских букв подключая библиотеки, то в конечном-то итоге эта переменная будет ссылаться на конечное представление, а то есть рациональное этого иррационального числа!

Всё с чем мы можем работать это ТОЛЬКО РАЦИОНАЛЬНЫЕ ЧИСЛА, представления иррациональных чисел они ТОЖЕ рациональные и ТОЛЬКО рациональные. Они большие, они могут быть ооооочень большими, но они всё равно рациональные!

R = Q ∪ I, если мы исключаем I из-за невозможности работы с ними в прямом смысле без представлений получается R’ = R\I, R’ = Q, а Q у нас рациональные числа.

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

Спасибо.

P.S. Это моя оригинальная статья AfterWing, не является переводом, доработкой другой какой-либо статьи на русском/английском и др. языках.

Двойной тип данных — Visual Basic

Редактировать

Твиттер LinkedIn Фейсбук Электронная почта

  • Статья
  • 2 минуты на чтение

Содержит подписанные IEEE 64-битные (8-байтовые) числа с плавающей запятой двойной точности в диапазоне значений от -1,79769313486231570E+308 до -4,94065645841246544E-324 для отрицательных значений и от 4,94065645841246544E-324 до 1,79769313486231570E+308 для положительных значений. Числа двойной точности хранят приближение действительного числа.

Тип данных Double предоставляет наибольшее и наименьшее возможные значения числа.

Значение по умолчанию для Double равно 0.

Советы по программированию

  • Точность. При работе с числами с плавающей запятой помните, что они не всегда имеют точное представление в памяти. Это может привести к неожиданным результатам некоторых операций, таких как сравнение значений и Оператор Mod . Дополнительные сведения см. в разделе Устранение неполадок с типами данных.

  • Нули в конце. Типы данных с плавающей запятой не имеют внутреннего представления конечных нулевых символов. Например, они не различают 4.2000 и 4.2. Следовательно, конечные нулевые символы не отображаются при отображении или печати значений с плавающей запятой.

  • Тип символов. Добавление символа буквального типа R в литерал приводит к типу данных Double . Например, если за целочисленным значением следует R , значение изменится на Double .

     ' Visual Basic расширяет 4 в выражении Dim dub As Double = 4R до 4.0:
    Дим даб как двойной = 4.0R
     

    Добавление символа типа идентификатора # к любому идентификатору заменяет его на

    Double . В следующем примере переменная num вводится как Double 9.0022 :

     Размерный номер # = 3
     
  • Тип каркаса. Соответствующим типом в .NET Framework является структура System.Double.

См. также

  • Двойная система
  • Типы данных
  • Десятичный тип данных
  • Один тип данных
  • Функции преобразования типов
  • Сводка преобразования
  • Эффективное использование типов данных
  • Устранение неполадок типов данных
  • Введите символы

Обратная связь

Просмотреть все отзывы о странице

Тип данных VBA Double (переменная Dim)