Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Решение задач программированием.doc
Скачиваний:
26
Добавлен:
18.02.2016
Размер:
389.63 Кб
Скачать

3.2. Алгоритмический язык Basic

Программа на языке Basic – это последовательность операторов и комментариев, описывающих алгоритм решения задачи. Для записи операторов используется алфавит языка, ключевые слова и знаки операций. В состав операторов входят простейшие конструкции: константы, переменные, массивы, функции и выражения.

3.2.1. Алфавит языка

Десятичные цифры 0, 1,2,…,9.

Прописные и строчные буквы латинского алфавита от A до Z.

Знаки арифметических операций:

+ ­- – сложение и вычитание;

* / – умножение и деление;

^ – возведение в степень. Например: Х в Basic записывается Х^3.

Разделительные знаки . ( ) , = “ и т.д.

Для записи комментариев и текстовых констант используются символы кириллицы. Комментарии в программе на языке Basic начинаются с символа апостроф ‘ и могут располагаться в любом месте программы.

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

Имена переменных и констант в 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 необходимо переменные определять явно. Это можно выполнить, поместив в первой строке программного кода инструкцию Option Explicit. Эта инструкция заставляет транслятор языка следить за объявлениями всех переменных. Если программа содержит инструкцию Option Explicit, то при попытке использования неописанного или неверно введенного имени переменной возникает ошибка во время трансляции.

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

Таблица 2

Типы данных

Тип данных

Размер ячейки в байтах

Диапазон значений

Byte (байт)

1

От 0 до 255

Integer (целый)

2

От -32 768 до 32 767

Long (длинный целый)

4

От -2 147 483 648 до 2 147 483 647

Single

(с плавающей точкой обычной точности)

4

Абсолютное значение находится примерно в диапазоне от 1,4*10-45 до 3,4*1038

Точность 6 десятичных разрядов

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

8

Абсолютное значение находится примерно в диапазоне от 4,9*10-324 до 1,8*10308 Точность 14 десятичных разрядов

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

10 байт + длина строки

Длина строки от 0 до приблизительно 2 миллиардов символов (для DOS длина 65535)

Boolean (логический)

2

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

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

vCircle = Pi * vRadius ^ 2

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