СТУДЕНТ! ВНИМАНИЕ! ЧТОБЫ ПРОСМАТРИВАТЬ ЭТОТ ФАЙЛ, ДОСТАТОЧНО,
СТОЯ НА НЕМ, НАЖАТЬ КЛАВИШУ "ENTER".
ГОСУДАРСТВЕННЫЙ КОМИТЕТ РФ
ПО ВЫСШЕМУ ОБРАЗОВАНИЮ
МОСКОВСКИЙ ГОСУДАРCTВЕННЫЙ ИНСТИТУТ
СТАЛИ И СПЛАВОВ (ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ)
Кафедра инженерной кибернетики
Г.И. Светозарова
Утверждается к печати на Одобрено
ротапринте, тираж 1000 экз. методическим советом
института Проректор института В.П. Соловьев
ОСНОВЫ ПРИКЛАДНОЙ ИНФОРМАТИКИ
Раздел: Описание языка Турбо-Бейсик
Справочное пособие
для студентов всех специальностей
Москва, 1994
АННОТАЦИЯ
Настоящее пособие содержит описание основных средств языка Турбо-Бейсик, а также необходимые сведения по среде Турбо-Бейсика.
Пособие в основном ориентировано на использование при выполнении практикума по курсу "Основы прикладной информатики". Может также использоваться в качестве справочника по языку Турбо-Бейсик.
С Московский государственный
институт стали и сплавов
1994 г.
С О Д Е Р Ж А Н И Е
1. Основные средства языка.............................. 4
1.1. Структура программы............................. 4
1.2. Типы данных..................................... 4
1.3. Массивы......................................... 5
1.4. Выражения....................................... 5
1.5. Стандартные функции............................. 6
1.6. Основные операторы.............................. 8
1.7. Операторы цикла................................. 10
1.8. Подпрограммы, функции и процедуры............... 12
2. Цвет и графика....................................... 16
3. Файлы. Работа с файлами данных последовательного и прямого доступа...................................... 20
3.1. Файлы последовательного доступа................. 20
3.2. Файлы прямого доступа........................... 23
4. Движущиеся изображения, звуковые эффекты и нестандар-
тный ввод с клавиатуры............................... 26
4.2. Оператор DRAW................................... 26
4.3. Операторы GET и PUT............................. 27
4.4. Оператор BEEP................................... 28
4.5. Оператор SOUND.................................. 28
4.6. Оператор PLAY................................... 28
4.7 Функция INKEY$.................................. 30
5. Библиотека стандартных процедур в Турбо-Бейсике...... 31
6. Рекомендуемый порядок работы на ПЭВМ при создании и выполнении программ на языке Турбо-Бейсик............ 32
1. ОСНОВНЫЕ СРЕДСТВА ЯЗЫКА
1.1. Структура программы
Программа состоит из строк. Одна строка содержит один или несколько операторов, разделенных двоеточием. Например,
a=1:b=1
Перенос оператора на другую строку допускается. В этом случае используется знак переноса _. Например,
a=1:b_
=1
Строки могут нумероваться (но это не обязательно). Ссылка в нужное место программы может осуществляться также по метке.
Метка размещается в отдельной строке, начинается с буквы и содержит любое количество букв и цифр. После метки ставится двоеточие. Например,
aaa:
x=x+1
...
GOTO aaa
Если первым символом в строке является апостроф ('), то строка воспринимается как комментарий.
Имя образуется из букв от A до Z (или от a до z), знака подчеркивания _ и цифр от 0 до 9, начинается с буквы. Имя используется для обозначения переменных, меток, процедур и т.п.
1.2. Типы данных
Целый (значения от -32767 до 32767, занимает 2 байта); длинный целый (от 2-31 до 231, 4 байта); вещественный (4 байта); вещественный двойной точности (8 байт); символьный ( последовательность любых символов, каждый символ занимает 1 байт).
Тип переменной определяется типом данных, которые она представляет. Указание типа переменной задается соответствующим знаком после имени.
a$ - символьный
a% - целый
a& - длинный целый
a! - вещественный обычной точности
а# - вещественный двойной точности
Если знак после имени отсутствует, то эта переменная считается по умолчанию вещественной обычной точности. То есть
a!=1.1
и
а=1.1
одно и то же.
1.3. Массивы
Описание массивов осуществляется с помощью оператора DIM с указанием размеров. Например, оператор
DIM a(10), b(10:20, 25:45)
описывает одномерный массив a, элементы которого имеют индексы от
0 до 10, и двухмерный массив b, элементы которого имеют индексы : первый от 10 до 20, второй от 25 до 45.
Если нижняя граница индексов в описании не указана, то она считается равной 0.
Используя оператор OPTION BASE n, можно задать нижнюю границу индексов равной n. Например,
OPTION BASE 1
DIM a(10)
В этом случае индекс элементов массива aбудет принимать значения, начиная с 1. Если описание массива отсутствует, то по умолчанию верхний индекс равен 10 ( нижний - 0). В описании массива вместо константы может использоваться переменная. Например,
DIM a(n)
Значение n должно быть предварительно определено.
Используя оператор ERASE, можно освободить память, выделенную под массив, и вернуть ее для дальнейшего использования. Например, оператор
ERASE a
возвращает память, выделенную под массив a.
1.4. Выражения
Символьные выражения состоят из символьных констант (последовательность символов, заключенная в кавычки), символьных переменных, символьных функций, соединенных знаком + (конкатенация, или объединение). Например,
a$="КАТЯ"
b$="ЛЕНА"
f$=a$+" И "+b$
В результате f$ будет иметь значение "КАТЯ И ЛЕНА". При помощи функций LEFT$, RIGHT$, MID$ можно выбрать часть символьной переменной слева, справа или из середины. Например,
F1$=LEFT$(f$,4)
F2$=RIGHT(f$,4)
F3$=MID$(f$,6,1)
В результате будет F1$ = "КАТЯ", F2$ = "ЛЕНА" и F3$ = "И". Числовые выражения включают в себя константы, переменные,
функции, соединенные знаками арифметических операций, при этом
могут использоваться величины разных типов.
Приоритеты арифметических операций:
1. Возведение в степень (^)
2. Умножение, деление (*,/ )
3. Деление нацело (\) (например, 5\2 равно 2)
4. Вычисление остатка от деления (MOD) (например, 45 MOD 19 равно 7)
5. Сложение, вычитание (+,-)
1.5. Стандартные функции
Запись на Бейсике Математическая запись
ABS (x) |x|
SIN (x) sin x
COS (x) cos x
TAN (x) tg x
ATN (x) arctg x
EXP (x) ex
LOG (x) ln x
LOG2(x) log2 x
LOG10(x) lg x
INT (x) целая часть х
SGN (x) знак х (+1 при х > 0,
0 при х=0, -1 при x < 0) SQR (x) квадратный корень из х
LEN (а$) количество символов а$
LEFT$(a$,n) выбирает из a$ n символов,
начиная с первого
MID$ (a$,m,n) выбирает из a$ n символов,
начиная с m-го
RIGHT$ (a$,n) выбирает n символов а$,
начиная с последнего
STR$ (x) преобразует число к
символьному виду
VAL (a$) определяет числовое значение а$
ASC (a$) определяет код первого
символа а$
TAB (n) указывает номер позиции для
вывода следующего элемента в
списке вывода оператора PRINT
SPC (n) вывод n пробелов, используется
в списке вывода оператора PRINT RND [(x)] выдает случайное число из инте-
рвала (0,1)
Замечания. 1. [] обозначают необязательный параметр.
2. Если х=0, то повторяется последнее сгенерированное число; если х < 0, то для каждого xгенерируется новая последовательность случайных чисел; если x > 0 или отсутствует, то генерируется очередное случайное число, но при повторном запуске последовательность повторяется. Можно использовать оператор RANDOMIZE (перед первым использованием функции RND), чтобы при новом запуске программы получать новую последовательность случайных чисел.
Операции отношения: <, <=, >, >=, <>.
Левая и правая части отношения - это числовое или символьное выражение (в последнем случае сравниваются числовые коды символов). Если отношение удовлетворяется (является истинным), то его значение равно -1 , если не удовлетворяется (является ложным), то его значение 0. Отношения могут быть использованы также в числовых выражениях. Например, при выполнении оператора
PRINT 5 > 6, 5 < 6, (5 < 6) * 15 будет напечатано 0, -1 и -15.
Логические операции: AND (логическое и ), OR (логическое или), XOR (исключающее или ), EQV (эквивалентность), IMP (импликация).
Логические операции осуществляются над целыми числами -1 (TRUE) и 0 (FALSE).
-1, если A = -1, B = -1
A AND B 0, в остальных случаях
0, если A = 0, B = 0
A OR B -1, в остальных случаях
-1, если A и B не совпадают
A XOR B 0, если A и B совпадают
-1, если A и B совпадают
A EQV B 0, если A и B не совпадают
0, если A = -1, B = 0 A IMP B -1, в остальных случаях
1.6. Основные операторы
Оператор присваивания имеет вид переменная = выражение
Оператор безусловного перехода имеет вид GOTO метка
Условный оператор имеет вид
IF условие THEN операторы [ELSE операторы] Например,
IF a < b THEN t=15 : V=16 ELSE t=17
В качестве условия может использоваться целое выражение, которое интерпретируется как FALSE, если его значение равно 0, и TRUE, если не равно 0.
Если после THEN или после ELSE располагается целая группа операторов, то можно использовать IF блок, который имеет следующую структуру
IF условие THEN операторы
ELSE операторы END IF
При этом ELSE и операторы за ним могут отсутствовать, т.е. возможна конструкция
IF условие THEN операторы
END IF
Если после ELSE необходима проверка условия, то используется оператор ELSEIF
IF условие THEN операторы ELSEIF условие THEN операторы
ELSE операторы END IF
Оператор конца END используется для окончания выполнения программы. Может использоваться в программе несколько раз. Используется также с IF, SUB, DEF, SELEСT (см.ниже)
Оператор очистки экрана CLS обычно располагается в начале программы для очистки экрана перед выводом результатов программы.
Оператор ввода INPUT имеет вид
INPUT [;] [поясняющий текст], список переменных
Поясняющий текст заключается в кавычки. Переменные в списке отделяются друг от друга запятыми. ";" после INPUT означает, что курсор останется на той же строке, когда будет нажат "Ввод".
Оператор вывода PRINT имеет вид
PRINT [список вывода]
Элементы списка разделяются "," или ";" или пробелом. В первом случае вывод следующего элемента начинается в новую зону (строка экрана условно разделена на 5 зон по 14 позиций каждая), во втором - через пробел (для чисел) или непосредственно вслед (для символьных строк) за предыдущим элементом.