русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Дробные литералы


Дата добавления: 2015-06-12; просмотров: 754; Нарушение авторских прав


Дробные литералы представляют собой числа с плавающей десятич­ной точкой. Правила записи таких чисел такие же, как и в большинстве современных языков программирования.

Примеры:

3.14

2.

.5

7е10

3.1Е-20

Таким образом, дробный литерал состоит из следующих составных частей:

• целая часть;

• десятичная точка (используется А8СП-символ точка);

• дробная часть;

• показатель степени (состоит из латинской ASCII-буквы Е в произвольном регистре и целого числа с опциональным знаком + или -);

• окончание-указатель типа.

Целая и дробная части записываются десятичными цифрами, а ука­затель типа (аналог указателя L или I для целочисленных литералов типа 'опд)имеет два возможных значения - латинскаяASCII-буква D (для ти­па double) или F (для типа float) в произвольном регистре. Они будут поровну рассмотрены ниже.

Необходимыми частями являются:

• хотя бы одна цифра в целой или дробной "части;

• десятичная точка или показатель степени, или указатель типа.

Все остальные части необязательные. Таким образом, "минимальные" дробные литералы могут быть записаны, например, так:

1. .1 1е1

1f

В Java есть два дробных типа, упомянутые выше, - float и double. Их длина - 4 и 8 байт или 32 и 64 бита, соответственно. Дробный литерал имеет тип float, если он заканчивается на латинскую букву F в произволь­ном регистре. В противном случае он рассматривается как значение типа double и может включать в себя окончание D или d, как признак типа double(используется только для наглядности).

//float-литералы: 1f, 3.14R Of, 1e+5F // double-литералы: 0.,3.14d, 1e-4, 31.34E45D

В Java дробные числа 32-битного типа float и 64-битного типа dou­ble хранятся в памяти в бинарном виде в формате, стандартизированном спецификацией ШЕЕ 754 (полное название — IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE Standard 754-1985 (IEEE, New York)). В этой спецификации описаны не только конечные дробные вели­чины, но и еще несколько особых значений, а именно:



• положительная и отрицательная бесконечности (positive/negative infinity);

• значение "не число", Not-a-Number, сокращенно NaN;

• положительный и отрицательный нули.

Для этих значений нет специальных обозначений. Чтобы получить та­кие величины, необходимо либо произвести арифметическую операцию (на­пример, результатом деления ноль на ноль 0.0/0.0 является NaN), либо обра­титься к константам в классах Float и Double, а именно POSITIVE_INFINITY, NEGATIVEJNFINITY и NaN. Более подробно ра­бота с этими особенными значениями рассматривается в следующей лекции.

Типы данных накладывают ограничения на возможные значения ли­тералов, как и для целочисленных типов. Максимальное положительное конечное значение дробного литерала:

• для float: 3.40282347e+38f

• для double: 1.79769313486231570е+308

• Кроме того, для дробных величин становится важным еще одно предельное значение — минимальное положительное ненулевое значение:

• для float: 1.40239846e-45f

• для double: 4.94065645841246544е-324

Попытка указать литерал со слишком большим абсолютным значе­нием (например, 1 e40F) приведет к ошибке компиляции. Такая величина должна представляться бесконечностью. Аналогично, указание литерала со слишком малым ненулевым значением (например, 1е-350) также при­водит к ошибке. Это значение должно быть округлено до нуля. Однако ес­ли округление приводит не к нулю, то компилятор произведет его сам:

// ошибка, выражение должно быть округлено до 0 O.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOIf // ошибки нет, компилятор сам округляет до 1I.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOIf

Стандартных возможностей вводить дробные значения не в десятич­ной системе в Java нет, однако классы Float и Double предоставляют много вспомогательных методов, в том числе и для такой задачи.



<== предыдущая лекция | следующая лекция ==>
Целочисленные литералы | Символьные литералы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.023 сек.