ПОНЯТНО О Visual Basic NET



              


Форматирование чисел


Одни и те же значения могут выглядеть по-разному. Например, в школьной тетрадке одну и ту же дату вы можете записать так –   25.12.03   и так –   25 декабря 2003 года. Одно и то же число вы можете записать так –   500 и так –   5*102. Что касается VB, то он выбирает внешний вид данных, исходя из своих соображений, которые не всегда совпадают с нашими желаниями. В этом случае возникает необходимость строго указать компьютеру, в каком виде (формате) мы хотим лицезреть то или иное значение.

Взгляните на такую программу:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim a As Double = 1230000000000000000

        WriteLine(a)

End Sub

Запустите проект. Вот результат:

1,23E+18

Что это значит? Это значит, что VB не любит слишком длинных чисел и представляет их вам не в привычном для обычного человека, а в так называемом экспоненциальном или научном формате. Число 1,23E+18 это то же самое число 1230000000000000000, только выглядящее по-другому. Конструкция   E+18  означает просто умножение на 1018. Таким образом,  1,23E+18 означает 1,23*1018. По-другому, вам нужно передвинуть запятую на 18 позиций направо –  и получится нормальное число.

А теперь взгляните на такую программу:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        Dim a As Double = 0.00000000000654

        WriteLine(a)

End Sub

Результат:

6,54E-12

Конструкция   E-12  означает просто умножение на 10-12

или, что то же,  деление на 1012. Таким образом,  6,54E-12 означает 6,54*10-12. По-другому, вам нужно передвинуть запятую на 12 позиций налево –  и получится нормальное число.

Если после этих объяснений вы все еще не полюбили экспоненциальный формат, вы можете приказать компьютеру, чтобы он вас не утомлял им, а показывал результаты по-человечески. Для этого в операторе WriteLine(a) нужно использовать функцию форматирования, то есть управления внешним видом. Функция эта называется Format. Для конкретности возьмем первую из наших двух программ, ту, где присутствует большое целое число. Здесь нужно вместо a написать Format(a, "#"). Получится




Содержание  Назад  Вперед