Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Стандартное форматирование чисел




Преобразования типов

Типы чисел с плавающей запятой

Типы целых чисел

Типы чисел

В таблице представлены описание, размеры и диапазоны целых типов, которые составляют подмножество простых типов.

Тип Диапазон Размер
sbyte -128 … 127 8-разрядное целое число со знаком
byte 0 … 255 8-разрядное целое число без знака
char U+0000 … U+ffff 16-разрядный символ Юникода
short -32 768 … 32 767 16-разрядное целое число со знаком
ushort 0 … 65 535 16-разрядное целое число без знака
int -2 147 483 648 … 2 147 483 647 32-разрядное целое число со знаком
uint 0 … 4 294 967 295 32-разрядное целое число без знака

В таблице представлены приблизительные диапазоны типов с плавающей запятой.

Тип Диапазон Точность отображения
float ±1,5e−45 … ±3,4e38 7 знаков
double ±5,0e−324 … ±1,7e308 15 -16 знаков

Все вычисления происходят с использованием типа double. Другие типы чисел могут применяться для уменьшения занимаемой памяти. При их использовании перед вычислением они преобразуются в тип double. Различают преобразования:

- Неявные преобразования используются для совместимых типов. Значения источника полностью отображаются приемником, т.к. тип приемника больше, чем тип источника. Например, преобразование int в double (int – подмножество double) выполняется автоматически, его не надо заказывать.

- Явные преобразования используются для несовместимых типов. Например, при преобразовании double в int (int – подмножество double) значения источника не полностью отображаются приемником.

Если типы несовместимы, и ошибка допустима, то преобразование возможно, но его нужно при объявлении явно заказать: перед преобразуемым выражением в круглых скобках добавляется префикс идентификации конечного типа.

Например,

double db=12.94;

int i = (int) db;

 

Все числа выводятся в консоль в виде строк символов. Потому перед выводом применяется форматирование результата.

Все числовые типы поддерживают определенный набор описателей формата. Для чисел поддерживаются национальные стандарты. Например, для России разделитель целой и дробной части числа - запятая.

Метод вывода в консоль содержит в двойных кавычках строку вывода, в состав которой входят выводимые символы и описатели форматов вывода не строковых данных, вставляемые в строку в нужных местах. После строки через запятые перечисляются имена выводимых данных. Количество описателей формата и не строковых данных одинаково, нумерация данных начинается с нуля.

Описатель формата помещается в фигурные скобки и имеет структуру:

"{<Номер вывода>,<Число позиций>:<Буква>d}"

Пример 1. Если указывается только номер вывода, то выводимые не строковые данные форматируются по умолчанию. Строка кода:

Console.WriteLine("p={0}",p); даст результат ® p=2,8322092165912

Пример 2. Выводятся значения x, y (номера вывода 0 и 1), формат по умолчанию.

Console.WriteLine("x = {0} y = {1}", x, y); ® x=-2,1548 y=15,125

Пример 3. Выводится значение x (номер вывода 0), под число отводится 8 позиций, используется денежный формат (буква C).

Console.WriteLine("x = {0,8:C}", x); ®

Пример 4. Выводится значение z (номер вывода 0), используется экспоненциальный (научный) формат (буква E – 6 символов после запятой).

Console.WriteLine("z = {0:E}", z); ®

Пример 5. Выводятся значения x, y (номера вывода 0 и 1), под числа отводится 5 позиций, используется фиксированный формат (буква F – 2 символа после запятой).

Console.WriteLine("y={0,5:f} p={1,5:f}", y, p); ®

Пример 6. Выводится значение s (номер вывода 0) по шаблону. В отображении числа отводится 1 позиция для целой и 3 позиции для дробной части числа.

Console.WriteLine("s= {0: #. ###}", s); ® s= 7,825

Имеется набор стандартных форматов. Синтаксис записи формата:

<Буква описания формата>d.

Описатель формата - это алфавитный символ, определяющий строковое представление объекта, к которому он применяется. Также строка формата может содержать необязательный описатель точности d, определяющий, сколько цифр отображается в результирующей строке. Если спецификаторы пропускаются, то используются их значения по умолчанию. Предусмотрены следующие форматы:

Буква (загл/стр) Формат Примеры d по умолч.
G g Общий -123.456 -> -123.456 Факт
F f Фиксированная запятая 1234.569 -> 1234.57  
N n Число 1234.569 -> 1,234.57 Запятая разделяет группы  
E e Экспоненциальный (научный) 1052.0329112756 -> 1.052033E+003  
D d Десятичный -1234 ("D6") -> -001234 Мин.
C c Валюта 123.458 -> $123.46 Используются символы валют  
P p Проценты 1 -> 100.00 %  

Описание форматов:

Формат G – общий. Поддерживается всеми числовыми типами данных. Но результат наиболее компактен при использовании экспоненциального формата или формат с фиксированной запятой. Описатель точности - количество значащих цифр.

Формат F - фиксированная запятая. Результат - цифры целой и дробной частей с необязательным отрицательным знаком. Поддерживается всеми числовыми типами данных. Описатель точности - количество цифр дробной части (по умолчанию 2).

Формат N – число. Результат - цифры целой и дробной частей, разделители групп и разделитель целой и дробной частей с необязательным отрицательным знаком. Поддерживается всеми числовыми типами данных. Описатель точности - желаемое число знаков дробной части.

Формат E – экспоненциальный (научный). Результат – экспоненциальное отображение. Поддерживается всеми числовыми типами данных. Описатель точности - количество цифр дробной части. Описатель точности по умолчанию 6.

Формат D – десятичный. Результат - целочисленные цифры с необязательным отрицательным знаком. Поддерживается только целочисленными типами данных. Описатель точности - минимальное число цифр. Описатель точности по умолчанию - минимальное необходимое число цифр.

Формат C – валюта. Результат – значение валюты. Если есть символ, то он выводится. Поддерживается всеми числовыми типами данных. Описатель точности - количество цифр дробной части.

Формат P – проценты. Результат – число, умноженное на 100 и отображаемое с символом процента. Поддерживается всеми числовыми типами данных. Описатель точности - желаемое число знаков дробной части.




Поделиться с друзьями:


Дата добавления: 2014-10-17; Просмотров: 382; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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