Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Языки Бейсик

.pdf
Скачиваний:
0
Добавлен:
11.08.2026
Размер:
622 Кб
Скачать

Глава XII. Бейсик-HELP

181

RIGHT$-оператор

Возвращает указанное число символов, стоящих с правого конца строки. См. LEFT$.

См. также MID$

RMDIR-оператор

CHDIR изменяет каталог устройства, принимаемый по умолчанию. MKDIR создает подкаталог. MRDIR удаляет подкаталог. FILES отображает содержимое текущего каталога или указанного каталога. См. CHDIR.

RND-оператор

RANDOMIZE инициализирует генератор случайных чисел.

RND возвращает случайное число одинарной точности между 0 и 1. См. RANDOMIZE.

RSET-оператор

LSET и RSET перемещают данные в буфер файлов прямого доступа (подготавливая его к оператору PUT) и осуществляют правое или левое выравнивание значений строковой переменной. LSET также копирует содержимое одной записи переменной в другую. См. LSET.

См. также FIELD, GET, PUT

RTRIM$-функция

удаляет конечные пробелы из строки.

Ñì. LTRIM$.

RUN-оператор

Выполняет текущую или указанную программу. Формат записи:

RUN [{номер_строки | файл$}]

ãäå

номер_строки номер строки в текущей программе, где должно начинаться выполнение программы. Если номер строки не указан, то выполнение программы начнется с первой выполняемой строки.

файл$ имя исходного файла Basic. Basic ожидает расширение BAS. Перед загрузкой программы, RUN закрывает все файлы и очи- щает память.

Используйте оператор CHAIN для запуска программы, не закрывая при этом открытых файлов.

Пример:

182

Языки Бейсик

'Предполагается, что программа TEST.BAS находится в 'каталоге \DOS. RUN “C:\DOS\TEST.BAS”

См. также CHAIN

SCREEN-функция

Возвращает ASCII значение или атрибут цвета символа, находящегося в указанном месте экрана.

Формат записи:

SCREEN (строка%,столбец% [,флаг])

ãäå

 

 

 

строка%

координата строки символа.

столбец%

координата столбца символа.

ôëàã:

 

 

 

 

 

 

 

Значение

 

Возвращает

 

 

 

 

0 (или опущен)

ASCII код символа

 

 

 

 

 

1

 

Атрибут цвета символа

 

 

 

 

 

 

 

 

 

Пример:

CLS

PRINT “Привет”

PRINT “Значение кода ASCII символа в позиции 1,1 равно”;

SCREEN(1, 1)

PRINT “Hello”

PRINT “Значение кода ASCII символа в позиции 3,1 равно”;

SCREEN(3, 1)

См. также POINT, Оператор SCREEN, ASCII Коды символов, Атрибуты и Значения Цвета

SCREEN-оператор

Устанавливает режим и другие характеристики экрана.

Формат записи:

SCREEN режим% [,[перекл_цвета%] [,[актив_стр%] [,видим_стр%]]]

ãäå

 

 

 

 

 

режим%

устанавливает режим экрана. См.Режимы Экрана

перекл_цвета%

значение (0 или 1), которое переключает между цветным и

 

 

монохромным изображением (только в режимах 0 и 1):

 

 

 

 

 

 

 

 

Режим

Значение

Действие

 

 

 

 

 

 

 

 

 

0

0

Отключает цвет

 

 

 

 

 

 

 

 

 

0

Íå íîëü

Включает цвет

 

 

 

 

 

 

 

 

 

1

0

Включает цвет

 

 

 

 

 

 

 

 

 

 

 

 

 

Глава XII. Бейсик-HELP

 

183

 

 

 

 

 

 

 

 

Режим

Значение

Действие

 

 

 

 

 

 

 

 

 

1

Íå íîëü

Отключает цвет

 

 

 

 

 

 

 

 

 

 

 

 

 

актив_стр%

Страница экрана, в которую записывается вывод текста или

 

графики.

 

 

 

видим_стр%

Страница экрана, отображаемая на экране в данный момент.

Пример:

'Для выполнения этого примера нужен цветной графический адаптер. SCREEN 1 '320 x 200 графический

LINE (110, 70)-(190, 120), , B

LINE (0, 0)-(320, 200), 3, , &HFF00

См. также CIRCLE, COLOR, DRAW, LINE, PAINT, SCREEN Функция,

VIEW, WINDOW, Режимы Экрана

SEEK-функция

Функция SEEK возвращает текущую позицию файла.

Оператор SEEK устанавливает позицию файла для следующей записи или чтения.

Формат записи:

SEEK(номер_файла%)

SEEK [#]номер_файла%, позиция&

где номер_файла% номер открытого файла.

Позиция

позиция, в которой будет осуществляться следующее чтение

 

или запись. Для файлов прямого доступа номер записи. Для

 

других файлов позиция байта по отношению к началу файла.

 

Первый байт находится в позиции 1.

Пример:

OPEN “TEST.DAT” FOR RANDOM AS #1

FOR i% = 1 TO 10

PUT #1, , i%

NEXT i% SEEK #1, 2

GET #1, , i%

PRINT “Данные: “; i%; “ Текущая запись: “; LOC(1); “ Следующая: “; SEEK(1)

См. также GET, PUT, OPEN

SEEK-оператор

Оператор SEEK устанавливает позицию файла для следующей записи или чтения. См. функцию SEEK.

184

Языки Бейсик

SELECT CASE-оператор

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

Формат записи:

SELECT CASE тест_выражение CASE список_выражений1 [блок_операторов-1] [CASE список_выражений2 [блок_операторов-2]]...

[CASE ELSE [блок_операторов-n]] END SELECT

ãäå

 

тест_выражение

любое числовое или строковое выражение.

список_выражений1

одно или несколько выражений для сравнения с

список_выражений2

тест_выражением.

 

В выражении ключевое слово IS должно стоять перед лю-

 

бым знаком отношения.

блок_операторов-1

один или несколько операторов в одной или

блок_операторов-2

нескольких строках.

блок_операторов-n

 

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

выражение[,выражение]...

выражение TO выражение

IS оператор_отношения выражение где

выражение любое числовое или строковое выражение, совместимое с тест_выражением.

оператор_отношенияодинизследующихзнаковотношения:<,<=,>,>=,<>,=.

Пример:

INPUT “Введите уровень риска (1-5): “, Total

SELECT CASE Total CASE IS >= 5

PRINT “Максимальный риск, шансов на возвращение практически нет.” PRINT “Сходите в нотариальную контору.”

CASE 2 TO 4

PRINT “Высокий риск, шансов на возвращение немного.” PRINT “Проверьте снаряжение и припасы.”

CASE 1

PRINT “Риск отсутствует, возврат гарантирован.” PRINT “В Вас отсутствует дух авантюризма.”

END SELECT

См. также IF...THEN...ELSE

Глава XII. Бейсик-HELP

185

SGN-оператор

SGN возвращает значение, указывающее знак числового выражения (1 — если выражениеположительно;0—еслионоравнонулю;и—1,еслионоотрицатель- но). См.ABS.

SHARED-оператор

предоставляет процедурам доступ к переменным уровня модуля.

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

Формат записи:

SHARED перемен.[()] [AS тип] [,перемен.[()] [AS тип]]. STATIC перемен.[()] [AS тип] [,перемен.[()] [AS тип]].

ãäå

перемен. имя переменной уровня модуля или статической переменной. Имя переменнойможетбытьдлинойдо40символовидолжноначинаться с буквы. Допустимые символы: A-Z, 0-9 и точка (.).

ASтип описываеттипданныхпеременной(INTEGER,LONG,SINGLE,DOUBLE, STRING или тип данных, определенный пользователем).

См. также COMMON, DIM, REDIM

SHELL-оператор

Приостанавливает выполнение программ Basic для запуска команд DOS или командного файла.

Формат записи:

SHELL [строка_команд$]

ãäå

строка_команд$ имя команды DOS или командного файла.

Выполнение Вашей программы возобновляется по завершении выполнения команды DOS или командного файла.

Если Вы опустили строку команд, SHELL вызывает COMMAND.COM и выводит на экран командное приглашение DOS. Для возобновления выполнения Вашей программы используйте команду EXIT.

Пример:

SHELL “DIR”

SIN-функция

ATN возвращает арктангенс указанного числового выражения.

COS, SIN и TAN возвращают косинус, синус и тангенс указанного угла.

Ñì. ATN

186

Языки Бейсик

SINGLE-ключевое слово

Указывают тип данных для переменных в операторах описания и в списке параметров.

Ñì. DOUBLE.

См. также AS, Набор основных символов, COMMON, DECLARE, DEF FN, DIM, REDIM, FUNCTION, SHARED, STATIC, SUB, TYPE

SLEEP-оператор

Приостанавливает выполнение программы. Формат записи:

SLEEP [секунды&]

ãäå

секунды& число секунд приостановки программы.

Если секунды& равны 0 или опущены, программа будет приостановлена до тех пор, пока Вы не нажмете клавишу или не произойдет событие.

Пример:

PRINT “Вздремните 10 секунд...”

SLEEP 10

PRINT “Проснитесь!”

См. также WAIT

SOUND-оператор

Генерирует звук через динамик Вашего компьютера. Формат записи:

SOUND частота, длительность

ãäå

 

частота

частота звука в Гц; значения находятся в пределах от 37 до 32 767.

длительность

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

 

значения — в диапазоне от 0 до 65 535. Каждую секунду проис-

 

ходит 18.2 такта.

Пример:

FOR i% = 440 TO 1000 STEP 5

SOUND i%, i% / 1000

NEXT i%

См.также PLAY

SPACE$-функция

Возвращает строку пробелов. Формат записи:

SPACE$(n%)

Глава XII. Бейсик-HELP

187

ãäå

n% Нужное число пробелов в строке.

Пример:

FOR i% = 1 TO 5 x$ = SPACE$ (i%) PRINT x$; i% NEXT i%

См. также SPC, STRING$

SPC-функция

Оставляет заданное число пробелов в операторах PRINT или LPRINT.

Формат записи:

SPC(n%)

ãäå

n% число пробелов; значения в диапазоне от 0 до 32 767.

Пример:

PRINT “Текст1”; SPC(10); “Текст2”

См.также PRINT, LPRINT, PRINT USING, LPRINT USING, SPACE$, TAB

SQR-функция

Возвращает квадратный корень числового выражения.

Формат записи:

SQR(числ_выражение)

ãäå

числ_выражение значение большее или равное нулю.

Пример:

PRINT SQR(25), SQR(2) 'Вывод: 5 1.414214

STATIC-функция

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

Ñì.SHARED.

$STATIC-метафункция

Устанавливает область хранения массивов по умолчанию.

Ñì. $DYNAMIC.

188

Языки Бейсик

STEP-ключевое слово

В цикле FOR...NEXT указывает, насколько увеличивать значение счетчика при каждой итерации. В графических операторах указывает, что координаты точки растра заданы относительно текущего графического положения курсора.

См. также CIRCLE, FOR...NEXT, GET, PUT, LINE,PAINT, PRESET, PSET

STICK-оператор

Возвращает координаты джойстика.

Формат записи:

STICK(n%)

ãäå

 

 

 

n%

указывает возвращаемые координаты:

 

 

 

 

 

n%

Возвращает

 

 

 

 

 

 

0

Координату Х джойстика A

 

 

 

 

 

 

1

Координату Y джойстика A

 

 

 

 

 

 

2

Координату Х джойстика B

 

 

 

 

 

 

3

Координату Y джойстика B

 

 

 

 

 

 

 

 

 

Вы должны вызвать STICK(0) перед STICK(1), STICK (2), или STICK(3).

STICK(0) записывает текущие координаты в память.

Пример:

Temp% = STICK(0)

PRINT STICK(2), STICK(3)

См.также STRIG Функция, STRIG, ON STRIG Операторы

STOP-оператор

Останавливает программу.

Формат записи:

STOP

Ключевое слово STOP также приостанавливает отслеживание событий в следующих операторах:

COM, ON COM, KEY, ON KEY, PEN, ON PEN, PLAY, ON PLAY, STRIG, ON TRIG, TIMER, ON TIMER

Пример:

FOR i% = 1 TO 10 PRINT i%

IF i% = 5 THEN STOP 'STOP — пауза; F5 — продолжение. NEXT i%

См. также END, SYSTEM

Глава XII. Бейсик-HELP

189

STR$-функция

возвращает строковое представление числа.

VAL переводит строковое представление числа в число.

Формат записи:

STR$(числ_выражение)

VAL(строк_выражение$)

ãäå

числ_выражение Любое числовое выражение. строк_выражение$ Строковое представление числа.

Пример:

PRINT “Десятичное 65 представляется в шестнадцатеричной системе как “;

PRINT “&H” + LTRIM$(STR$(41)) PRINT VAL(RIGHT$(“IBM 1991”, 4))

STRIG-функция

Возвращает состояние триггера джойстика.

Формат записи:

STRIG(n%)

ãäå

 

n%

значение, указывающее условие состояния джойстика:

 

 

n%

Условие

 

 

0

Нижний триггер джойстика A был нажат с момента последнего STRIG(0)

 

 

1

Нижний триггер джойстика A нажат в данный момент

 

 

2

Нижний триггер джойстика В был нажат с момента последнего STRIG(2)

 

 

3

Нижний триггер джойстика В нажат в данный момент

 

 

4

Верхний триггер джойстика A был нажат с момента последнего STRIG(4)

 

 

5

Верхний триггер джойстика A нажат в данный момент

 

 

6

Верхний триггер джойстика В был нажат с момента последнего STRIG(6)

 

 

7

Верхний триггер джойстика В нажат в данный момент

 

 

 

 

STRIG возвращает — 1 если условие истинно и 0 в противном случае.

Пример:

'Для выполнения этого примера нужен джойстик. PRINT “Для выхода нажмите Esc или кнопку джойстика” DO

IF STRIG(0) OR INKEY$ = CHR$(27) THEN EXIT DO LOOP

190

Языки Бейсик

DO

BEEP 'Подает сигнал (BEEP) при нажатом триггере A.

LOOP WHILE STRIG(1)

См. также STICK, STRIG, ON STRIG Операторы

STRIG-операторы

STRIG включает, выключает или приостанавливает отслеживание события для джойстика. При включенном отслеживании события, ON STRIG обращается к подпрограмме при каждом нажатии указанного триггера.

Формат записи:

STRIG(n%) ON

STRIG(n%) OFF

STRIG(n%) STOP

ON STRIG(n%) GOSUB строка

ãäå

 

 

 

n%

значение, указывающее триггер джойстика:

 

 

 

 

 

n%

Триггер

 

 

 

 

 

 

0

Нижний триггер, джойстик A

 

 

 

 

 

 

2

Нижний триггер, джойстик В

 

 

 

 

 

 

4

Верхний триггер, джойстик A

 

 

 

 

 

 

6

Верхний триггер, джойстик В

 

 

 

 

 

 

 

 

 

STRIG(n%) ON

Включает отслеживание события для джойстика.

STRIG(n%) OFF

Выключает отслеживание события для джойстика.

STRIG(n%)STOP Приостанавливаетотслеживаниесобытия.Событияобрабаты-

 

ваются при включении STRIG ON отслеживания события.

строка

метка или номер первой строки подпрограммы отслежива-

 

ния события.

Пример:

'Для выполнения этого примера нужен джойстик. ON STRIG(0) GOSUB Handler

STRIG(0) ON

PRINT “Для выхода нажмите Esc”

DO UNTIL INKEY$ = CHR$(27): LOOP END

Handler:

PRINT “Триггер джойстика отжат” RETURN

См. также STICK, STRIG Функция

STRING-ключевое слово

Указываеттипданныхдляпеременныхвоператорахописанияивспискепараметров.

Ñì. DOUBLE.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]