Переменные и константы

Имена переменных и констант в Basic (Visual Basic) должны удовлетворять следующим требованиям:

- начинаться с буквы;

- включать только буквы, цифры, символ подчеркивания _;

- содержать не более 255 символов.

Обратите внимание! Имя не может содержать пробел “ “, точку “.”, запятую “,”, восклицательный знак! или символы @, &, $, #. Не следует использовать имена, совпадающие с ключевыми (зарезервированными) словами языка.

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

Язык Basic допускает следующие типы переменных:

Byte –короткое целое без знака,

Integer – целое,

Long – длинное целое,

Single – действительные числа обычной точности,

Double – действительные числа удвоенной точности,

Boolean – логический тип, принимающий два значения True (правда или ДА) и False (ложь или нет),

String – строка переменной длины.

Переменные типов Byte, Integer, Long, Single, Double принимают числовые значения. При объявлении переменных этих типов они получают значения 0.

При объявлении переменной типа Boolean она получает значение False.

При объявлении переменной типа String она получает значение пустой строки " ".

Можно вообще не объявлять переменные. Переменная может появиться в программе, хотя она не была объявлена. Такой случай называется объявлением по умолчанию. Она будет иметь тип Variant.

В практике программирования отсутствие объявления переменных является источником ошибок и этого следует избегать. Для этого в Basic и Visual Basic необходимо переменные определять явно. Это можно выполнить, поместив в первой строке программного кода инструкцию OptionExplicit. Эта инструкция заставляет транслятор языка следить за объявлениями всех переменных. Если программа содержит инструкцию Option Explicit, то при попытке использования неописанного или неверно введенного имени переменной возникает ошибка во время трансляции.

Размеры, занимаемые ячейками памяти и диапазон значений переменных в этих ячейках для разных типов данных представлены в таблице 4.

Таблица 2

Типы данных

Тип данных Размер ячейки в байтах Диапазон значений
Byte (байт)   От 0 до 255
Integer (целый)   От -32 768 до 32 767
Long (длинный целый)   От -2 147 483 648 до 2 147 483 647
Single (с плавающей точкой обычной точности)   Абсолютное значение находится примерно в диапазоне от 1,4*10-45 до 3,4*1038 Точность 6 десятичных разрядов
Double(с плавающей точкой двойной точности)   Абсолютное значение находится примерно в диапазоне от 4,9*10-324 до 1,8*10308 Точность 14 десятичных разрядов
String (строка переменной длины) 10 байт + длина строки Длина строки от 0 до приблизительно 2 миллиардов символов (для DOS длина 65535)
Boolean (логический)   True или False
Variant (универсальный тип) 16 байт+ длина строки Дата/время; числовые значения с тем же диапазоном, что и для Double; строки с тем же диапазоном, что и для String

Универсальный тип данных Variant — это хамелеон. Он устанавливает тип данных в зависимости от содержимого. Если в такой переменной содержится число, то переменная типа Variant принимает соответствующий тип данных:

Если ее содержимое — число 5, то она принимает тип Integer;

Если содержимое 1.2 — то тип Double;

Если текст (например: “Знаменатель равен нулю”), то тип String.

Переменная типа Variant изменяет свой тип во время выполнения программы.

Переменные типа Variant имеют большое практическое значение, однако, при их применении возникают проблемы. Во-первых, при чтении программного кода не видно, какой внутренний тип имеет переменная в данный момент. Это может крайне затруднить обнаружение логических ошибок программирования. Во-вторых, данные типа Variant занимают больше памяти, чем аналогичные данные, объявленные с указанием явного типа, поэтому от этого типа данных при разработке новой версии VB.Net разработчики отказались.

Тип переменной устанавливается либо в результате явного объявления, либо транслятор языка устанавливает тип Variant при первом использовании этой переменной.

Синтаксис объявления переменной:

Static/Public/Private/Dim ИмяПеременной [ As Тип]

Приведенное определение синтаксиса означает, что объявление переменной может содержать ключевые слова или Static или Private или Dim для объявления локальных переменных или Public для объявления глобальной переменной.

В подобных определениях синтаксиса прямоугольные скобки […] означают, что конструкция, находящаяся внутри этих скобок, не обязательна. Символ (/) означает, что должно быть выбрано одно из слов, между которыми он поставлен. Сами же символы ([), (]), (/) в текст объявления не включаются.

Зарезервированное слово Dim (размерность) при объявлении переменных применяется чаще всего, например:

Dim YMAX As Single, KA As Integer

Dim Stroka As String

Здесь явно объявлены три переменные: YMAX типа Single, KA типа Integer и Stroka типа String. Имена переменных на кириллице можно определять только в Visual Basic.

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

При объявлении константы необходимо задать ее имя, тип, область действия и значение.

Синтаксис объявления константы

[ Public/ Private ] Const ИмяКонстанты [ As Тип] = Значение

Приведенное определение синтаксиса означает, что объявление константы содержит обязательное слово Const (константа). Перед Const может стоять Private (локальная) или Public (общая), то есть одно из слов, задающих область действия константы. Затем должно следовать имя константы. После имени может стоять слово As и наименование типа. Затем должен следовать знак равенства и значение константы.

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

В следующем примере описывается глобальная константа Age целого типа, и ей присваивается значение 54 (это объявление должно находиться в главной секции модуля).

Public Const Age As Integer = 54

Допускается также описание нескольких констант в одной строке. В этом случае, чтобы задать тип данных, надо указать название типа для каждой константы.

В следующем примере описываются локальные константы Pi и G как Single.

Const Pi As Single = 3.14159, G As Single = 9.81

Примеры демонстрируют преимущество использования констант: например, при вычислениях с числом p в программе не нужно каждый раз вводить длинное число, а только имя константы Pi:

vCircle = Pi * vRadius ^ 2

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

Элементарные функции

В Basic предусмотрена возможность вычисления элементарных функций по стандартным программам - функциям.

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

Назначение функции Обращение к функции
Абсолютное значение х Abs(x)
arctg x Atn(x)
cos x Cos(x)
ex Exp(x)
Целая часть x Int(x)
Целая часть x (округление) Fix(x)
ln x Log(x)
Случайное число Rnd
Знак числа x Sgn(x)
sin x Sin(x)
Квадратный корень от х Sqr(x)
tg x Tan(x)

Выражение

Выражение – это формула для вычисления величины. Состоит из констант, переменных и функций, объединённых с помощью символов операций. Выражения не являются операторами, но входят в них как их составные части.

Существует несколько видов выражений. Мы рассмотрим арифметические и логические выражения.

Арифметическое выражение при записи использует символы арифметических операций. Результат вычисления – целое или действительное число.

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

Извлечение корня любой степени, кроме квадратного, заменяется возведением в дробную степень. Например: выражение на Basic будет записано X^(1./3.).

Пример.

Математическая запись Запись на Basic
Y=0.5(x-1)2 + Y=0.5*(X-1)^2+X^(1./3.)
Z=X5+e0,1X Z=X^5+EXP(0.1*X)
Z=cos2(x-1)+0,1sin(y+0,5)2 Z=COS(X-1)^2+0.1*SIN((Y+0.5)^2)

Логическое выражение может принимать одно из двух значений - TRUE (истина) или FALSE (ложь). Простейшим логическим выражением является выражение, состоящее из двух арифметических, разделённых символом операций отношения.

Символы отношения

Операция сравнения Basic
Больше >
Больше или равно >=
Меньше <
Меньше или равно <=
Равно =
Не равно <>

Логические операции

Для формирования сложных логических выражений (для использования в операторе IF) помимо операций отношения можно использовать логические функции. Их всего три. Это логическое умножение AND (операция И), логическое сложение OR (операция ИЛИ) и логическое отрицание NOT. Аргументами этих функций являются логические выражения.

Обозначим через A и B операнды, участвующие в логических операциях. A и B имеют логическое значение. Это может быть отношения переменных или функции логического типа или результат логической операции. Тогда логические операции имеют следующий синтаксис:

Логическое умножение

А AND В

Логическое сложение

А OR В

Логическое отрицание

NOT А

Результаты операций приведены в таблице, расположенной ниже.

Логические операции Значения операндов Значения логической операции
A B
Умножение А AND В TRUE TRUE FALSE FALSE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE
Сложение А OR В TRUE TRUE FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE TRUE FALSE
Отрицание NOT А TRUE FALSE   FALSE TRUE

Порядок операций в логическом выражении задается круглыми скобками и приоритетом логических операций. Установлен следующий приоритет операций: сначала выполняется операции отношений, затем операция NOT, затем - AND и в конце операция – OR.

Пример: Использование операций отношений

Математическая запись Запись на Basic
X = Y X = Y
B2-4AC >= 0 B^2-4*A*C >= 0
3(A-B) < C2+1 3*(A-B) < C^2+1

Пример: Найти наименьшее из двух чисел X и Y, при этом Y должно быть отрицательным. Задача решается путем формирования двух логических условий для случая, если X больше или меньше Y.

X < Y AND Y < 0
X >= Y AND Y < 0

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: