Основы программирования на языке Visual Basic, страница 5

[Public | Private] Const Имя_константы = Значение

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

[Private | Public] Dim Имя_сменной [As Тип _данных]

Тип данных – это множество значений, которые может принимать переменная (например, целые числа, даты, тексты, рисунки и др.).

Каждая переменная принадлежит к какому-нибудь типу данных. Это означает, что в данном поле памяти могут храниться значения только из определенного ранее множества (типа данных).

В VB есть много разных типов данных. В следующей таблице представлены типы, которые наиболее часто используются.

Таблица

Некоторые типы данных

Тип

Описание

Префикс

Boolean

Byte

Integer

Long

Single

Double

Currency

String

Date

Variant

Логическое значение

Однобайтное целое число

Целое число

Длинное целое число

Число с плавающей точкой одинарной точности

Число с плавающей точкой двойной точности

Число с фиксированной точкой (денежный тип)

Текстовая строка

Дата и время

Любое значение из перечисленных выше

bln

byt

int

lng

sng

dbl

cur

str

dtm

vnt (var)

Каждый переменной при объявлении присваивается имя, которое рекомендуется образовывать по формату:

<Префикс> <Базовое имя>

К данным типа дата/время можно применять операции сложения и вычитания. Например, результатом вычисления выражения Date - 1 будет вчерашняя дата.

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

Таблица

Некоторые функции для работы с датами

Функция

Назначение

Now

Текущие дата и время по компьютеру

Date

Текущая дата по компьютеру

Year(дата)

Год в аргументе дата

Month(дата)

Месяц в аргументе дата

Day(дата)

День в аргументе дата

WeekDay(дата)

Номер дня недели в аргументе дата (воскресенью соответствует 1, а субботе – 7)

DateAdd(интервал, количество, дата)

Новая дата, полученная добавлением к заданной дате количества временных интервалов

DateDiff(интервал, дата1, дата2)

Количество интервалов времени между первой и второй датами

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

Таблица

Допустимые значения аргумента "интервал"

Значение

Описание

Значение

Описание

yyyy

Год

W

День недели

q

Квартал

Ww

Неделя

m

Месяц

H

Часа

y

День года

N

Минуты

d

День месяца

S

Секунды

Например, с помощью функции DateAdd("m", 3, Date) можно определить дату через три месяца, а с помощью функции DateDiff("ww", #1.01.2001#, Date) – сколько недель прошло с начала третьего тысячелетия.

Значение текстового поля на форме имеет строковый тип. Текстовые поля используются для ввода данных (в частности и числовых), которые в дальнейшем могут участвовать в ходе выполнения программы в различных вычислениях. Во избежание ошибок вычислений необходимо введенные данные преобразовывать к числовому типу. Для этого в VB есть ряд функций, представленных в следующей таблице (где х – выражение).

Таблица

Функции преобразования типов

Функция

Тип результата
Функция
Тип результата

CBool (x)

Boolean

CInt (x)

Integer

CByte (x)

Byte

CLng (x)

Long

CCur (x)

Currency

CSng (x)

Single

CDate (x)

Date

CVar (x)

Variant

CDbl (x)

Double

CStr (x)

String

Вычисленное значение выражения можно записать в поле памяти переменной с помощью оператора присваивание. Он обозначается символом присваивания ("=") и имеет следующий вид:

<Переменная> = <Выражение>

Пример решения задачи

Постановка задачи

Цена на товар установлена производителем на период одной недели. Определить стоимость товара с учетом налога на добавленную стоимость (НДС) по известной цене производителя и количеству. По заданной дате начала периода указать начальную и конечную даты действия установленной цены.

Экономико-математическая модель

Вычисление стоимости товара с учетом НДС производится по формуле:

Стоимость = Ценандс * Количество,

где Ценандс – цена с учетом НДС определяется по формуле:

Ценандс = Цена + Цена * Ставкандс/100.

Ставка НДС в настоящее время составляет 20%.

Конечная дата действия цены вычисляется по формуле:

Окончание = Начало + КД,

где Начало и Окончание – соответственно даты начала и окончания периода; КД – количество дней в периоде (в данном случае КД = 7 – неделя).

Алгоритм решения задачи

Алгоритм решения задачи приведен на рис. 3.1.

Структура данных

При решении задачи используются следующие данные:

Начало, Окончание – данные типа дата/время,

КД, Количество – целые числа,

Ставка НДС – дробное число,

Цена, Ценандс, Стоимость – числа денежного типа.

Из них данные КД и Ставка НДС являются константами и в программе имеют такие же имена. Начало, Цена и Количество вводятся с клавиатуры в текстовые поля, поэтому в программе им присвоены имена соответственно txtНачало, txtЦена и txtКоличество. Ценандс и Стоимость – вычисляемые поля, которые непосредственно не соответствуют никаким элементам управления на форме, поэтому в программе они представлены переменными денежного типа curЦенандс и curСтоимость соответственно. Вычисляемая величина Окончание выводится на форму в виде надписи, поэтому в программе имеет имя lblрзтОкончание.