Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_пособие_ПЯВУ_C#+КР.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.87 Mб
Скачать

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

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

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

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

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

"{<Номер вывода>,<Число позиций>:<Буква>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).

C onsole.WriteLine("x = {0,8:C}", x); 

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

C onsole.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

2

N

n

Число

1234.569 -> 1,234.57

Запятая разделяет группы

2

E

e

Экспоненциальный

(научный)

1052.0329112756 -> 1.052033E+003

6

D d

Десятичный

-1234 ("D6") -> -001234

Мин.

C

c

Валюта

123.458 -> $123.46

Используются символы валют

2

P p

Проценты

1 -> 100.00 %

2

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

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

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

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

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

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

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

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