[an error occurred while processing this directive]
.шп6;
DEG (DEG) .шп14;
радианы в градусы
.шп2
Описание
.шп0
DEG переводит углы из радианного измерения в градусное. 1 радиан составляет (180/PI) градусов (т.е. около 57.3 градуса).
.шп2
Ссылки
.шп0
Секция 33.1.
.шп2
Синтаксис
.шп0
┏════════════════╗ ╔════════════════╗ ═╣ DEG ╠════╣числовой элемент╠═ ╚════════════════╝ ╚════════════════╝
.шп2
Примеры
.шп0
PRINT DEG 1 100 ninety := DEG (PI/2)
.шп2
Ассоциируемые ключевые слова
.шп0
RAD
.шп6;
DEL (DEL) .шп14;
Уничтожить программные строки
.ов
.шп2
Описание
.шп0
DEL уничтожает программные строки, определенные одним или двумя аргументами. Как меру предосторожности, для уничтожения более одной строки необходимо иметь два параметра. Никакого действия не происходит, если второй параметр меньше первого, в противном случае уничтожаются все програмные строки между двумя аргументами (включительно).
DEL, за которым следует один параметр, уничтожает одну програмную строку. Печать номера строки с последующим нажатием клавиши ВВОД будет иметь такой же результат.
.шп2
Ссылки
.шп0
Секция 5.10.
.шп2
Синтаксис
.шп0
┏═══════╗ ╔═══════╗ ┏═┓ ╔═══════╗ ╔═══╗ | DEL ╠═╣ номер ╠╦╣,╠═╣ номер ╠╦═╣eol| ╚═══════╝ ╚═══════╝|┗═┛ ╚═══════╝↑ ╚═══╝ ╚═════════════╝
.шп2
Примеры
.шп0
DEL 10,30
DEL 25
.шп2
Ассоциируемые ключевые слова
.шп0
LIST OLD NEW
.шп6;
DELETE (DEL.) .шп14;
Уничтожить файл
.ов
.шп2
Описание
.шп0
Эта команда уничтожает указанный файл в текущей файловой системе. Попытка уничтожить несуществующий файл не производит ошибки.
Необходимо помнить, что попытка использовать ключевые слова для определения имен файлов без кавычек не произведет нормального результата, так как они не воспринимаются, как ключевые слова (напр. DELETE STR¤2 уничтожит файл str¤2).
Также следует помнить, что если для определения имени файла используется название строчной переменной, то оно должно быть в нижнем регистре.
.шп2
Ссылки
.шп0
Секция 14.7
.шп2
Синтаксис
.шп0
┏════════════════╗ ╔═════════════════╗ ┏══┓ | DELETE ╠══╣ имя файла ╠══╣cr| ╚════════════════╝ ╚═════════════════╝ ┗══┛
.шп2
Примеры
.шп0
DELETE myprog 10 DELETE fname¤
.шп2
Ассоциируемые ключевые слова
.шп0
SAVE LOAD RUN
.шп6;
DIM (DI.) .шп14;
размер .пв;
.ов
.шп2
Описание
.шп0
Перед первым присваиванием необходимо объявлять как числовые, так и строчные массивы. Кроме того, можно объявить максимальную длину строк, если заданная длина в 40 символов не удовлетворяет. DIM производит все эти операции.
Для массивов верхние и нижние границы можно установить для каждого индекса. Нижняя граница принимается равной 0, а верхнюю границу нужно всегда указывать. Если нижняя граница объявляется большей, чем нижняя, то при прогоне возникает ошибка Bad DIM.
Максимальное разрешенное число индексов в массиве - восемь. Максимальная разрешенная длина строк - 253 символа.
.шп2
Ссылки
.шп0
Секции 4.5, 19.2.
.шп2
Синтаксис
.шп0
╔═════════════╗ ┏═┓|╔═══════════╗↓ ┏══╗╔═══════════╗ ╔═╣¤╠╩╣числ.список╠╩╦╣OF╠╣лог.выраж═е╠╗ ┏═══╗ ╔══════════╗| ┗═┛ ╚═══════════╝ |╚══╝╚═══════════╝↓ |DIM╠╦╣индентиф-р╠╣╔═══╗ ╚═════════════════╬╦╗ ╚═══╝|╚══════════╝||┏═┓↓╔═══════════╗ ↑|| | ╚╩╣#╠╩╣числ.список╠═══════════════════╝|| | ┗═┛ ╚═══════════╝ |↓ | ┏═┓ || ╚═══════════════════════╣,╠════════════←════════════╝| ┗═┛ ╔═════╝ | ╔═══╗ ╚═╣eol| ╚═══╝
.шп2
Примеры
.шп0
DIM name¤ OF 12 25 DIM image(-3:4,3:8,-3:-2) 35 DIM output¤(1:5) OF 20 45 DIM a¤ OF 5 , b¤ OF 10 55 DIM c¤(a,b#) OF c 65 DIM d#(6p)
.шп2
Ассоциируемое ключевое слово
.шп0
OF
.шп6;
DIV (DIV) .шп14;
целочисленное деление .пв;
.ов
.шп2
Описание
.шп0
DIV - это бинарный оператор, который усекает два операнда до целых перед делением первого на второй. Результат тоже усекается до целого числа.
.шп2
Ссылки
.шп0
Секция 18.8
.шп2
Синтаксис
.шп0
╔══════════════════╗ ┏═══════╗ ╔══════════════════╗ ═╣числовое выражение╠═╣ DIV ╠═╣числовое выражение╠═ ╚══════════════════╝ ╚═══════╝ ╚══════════════════╝
.шп2
Примеры
.шп0
PRINT 17 DIV 3 55 eleven# := 44.1 DIV 4.9
.шп2
Ассоциируемое ключевое слово
.шп0
MOD
.шп6;
DO (DO)
.шп2
Описание
.шп0
DO используется для структур FOR и WHILE, при вводе оно необязательно, за исключением некоторых случаев:
FOR loc = &7C00 TO &8000 DO ?loc = 0
потому что &8000 ? loc=0 является полноценным логическим выражением.
.шп2
Ссылки
.шп0
FOR и WHILE
.шп2
Синтаксис
.шп0
Смотри FOR и WHILE.
.шп2
Примеры .шп0;
(смотри также FOR и WHILE)
WHILE GET <> 32 DO exsampler_screen 55 FOR i := 1 TO 10 DO PRINT i 75 WHILN waiting DO NULL
.шп2
Ассоциируемые ключевые слова
.шп0
FOR WHILE
.шп6;
DRAW (DR.)
.шп2
Описание
.шп0
Это средство позволяет чертить на экране линии в любом из графических режимов. Линия чертится в текушем графическом цвете переднего плана из текушей позиции графического курсора до точки, указанной координатами х- и y-, которые следуют за оператором DRAW.
Координаты х- и y- относительны к текущей исходной графической позиции (0,0). Исходная принимаемая по умолчанию позиция находится в нижней левой части графической области, но ее можно изменить с помощью VDU 29. Экран имеет ширину 1280 единиц (по оси х) и высоту 1024 единиц (по оси y) независимо от используемого графического режима.
DRAW x,y фактически идентичен PLOT 5,x,y.
.шп2
Ссылки
.шп0
Секции 11.3 и PLOT
.шп2
Синтаксис
.шп0
╔════════════════════╗ ┏══════════╗↓ ╔══════════════╗ ┏╩┓ ╔═══╗ | DRAW ╠╩X2╣лог. выражение╠╦╣,| ╔═╣eol| ╚══════════╝ ╚══════════════╝↓┗═┛ | ╚═══╝ ╚═════╝
.шп2
Примеры .шп0;
(смотри также PLOT)
DRAW 350,250 635 DRAW x,y
.шп2
Ассоциируемые ключевые слова
.шп0
MODE PLOT MOVE GCOL VDU
.шп6;
EDIT (Е.) .шп14;
Вывод программы на экран без отступа
.шп2
Описание
.шп0
EDIT выводит на экран указанный ряд программных строк без какого либо выделения структур. Параметры принимаются по умолчанию для начала и конца программы. Если параметры не заданы, то на экран выводится вся программа. В отличии от LIST, EDIT выводит EXEC перед всеми процедурными вызовами, где ни один параметр уже не присутствует.
.шп2
Ссылки
.шп0
Секция 13.5.
.шп2
Синтаксис
.шп0
┏══════════╗ ╔═══════════════╗ ╔═══╗ | EDIT ╠═╣числовой список╠═╣eol| ╚══════════╝ ╚═══════════════╝ ╚═══╝
.шп2
Примеры
.шп0
EDIT
EDIT 100,200
EDIT ,150
EDIT 300,
.шп2
Ассоцируемое ключевое слово
.шп0
LIST
.шп6;
ELIF (EL.) .шп14;
Еще если
.шп2
Описание
.шп0
ELIF это оператор, который можно использовать в длинной форме структуры IF. Он объявляет другое условие, которое нужно проверить, если условие после исходного IF или любого предыдущего ELIF не удовлетворяется.
.шп2
Ссылки
.шп0
Глава 28 и IF.
.шп2
Синтаксис
.шп0
┏════════╗╔══════════════╗ ┏════════╗ ╔═══╗ | ELIF ╠╣лог. выражение╠═╦╣ THEN ╠╦═╣eol| ╚════════╝╚══════════════╝ |╚════════╝↑ ╚═══╝ ╚═════*════╝
.шп2
Примеры .шп0;
(смотри также IF)
20 IF boss_free 30 route_call(boss_phone) 40 ELIF secretari_free 60 ELSE 70 return_engage_tone 80 end if
.шп2
Ассоциируемые ключевые слова
.шп0
IF THEN ELSE END IF
.шп6;
ELSE (ELS.)
.ов
.шп2
Описание
.шп0
Этот оператор используется в длинной форме структуры IF. Блок программных строк, следующий за ним выполняется, если ни одно из предыдущих условий IF или ELIF в блоке не было удовлетворено.
.шп2
Ссылки
.шп0
Секция 15.6 и IF
.шп2
Синтаксис
.шп0
┏══════════╗ ╔═══╗ | ELSE ╠═══╣eol| ╚══════════╝ ╚═══╝
.шп2
Примеры .шп0;
(смотри также IF)
30 IF hours < 12 THEN 40 greet("Good Morning!") 50 ELSE 60 greet("'Good Afternoon!") 70 END IF
.шп2
Ассоциируемые ключевые слова
.шп0
IF THEN ELIF END IF
.шп6;
END (EN.)
.шп2
Описание
.шп0
END указывает, что был достигнут конец программы. Он необязателен и может быть использован столько раз, сколько требуется в программе, хотя считается нехорошо использовать его больше одного раза.
В Комале операторы конца структуры (END IF, END PROC и т.д.) хранятся как два отдельных ключевых слова, и поэтому после END необходимо оставлять пробел.
Необходимо помнить, что внутри структуры END не разрешен; там, где требуется остановка выполнения, необходимо использовать STOP.
.шп2
Ссылки
.шп0
Секция 5.13.
.шп2
Синтаксис
.шп0
┏═══════════╗ ╔═══╗ | END ╠═══╣eol| ╚═══════════╝ ╚═══╝
.шп2
Пример
.шп0
1000 END
.шп2
Ассоциируемое ключевое слово
.шп0
STOP
.шп6;
END CASE (END CA.)
.шп2
Описание
.шп0
Это указывает конец структуры CASE. Пробел между END и CASE обязателен.
.шп2
Ссылки
.шп0
Глава 25 и CASE.
.шп2
Синтаксис
.шп0
┏═══════════╗ ┏═══════════╗ ╔═══╗ | END ╠══╣ CASE ╠══╣eol| ╚═══════════╝ ╚═══════════╝ ╚═══╝
.шп2
Примеры .шп0;
(смотри также CASE)
825 CASE number OF 830 WHEN <0 835 PRINT "Negative" 840 WHEN 0 850 PRINT "Zero" 860 OTHERWISE 870 PRINT "Positive" 880 END CASE
.шп2
Ассоциируемые ключевые слова
.шп0
CASE WHEN OTHERWISE
.шп6;
END FUNC (END FU.)
.шп2
Описание
.шп0
Это указывает конец объявления функции. Пробел между END и FUNC обязателен.
Название функции при вводе необязательно и, если оно опущено, то будет введено автоматически.
.шп2
Ссылки
.шп0
Глава 30 и FUNC.
.шп2
Синтаксис
.шп0
┏═┓ ╔╣#╠╗ ┏══════════╗ ┏══════════╗ ╔═════════════╗|┗═┛↓ ╔═══╗ | END ╠═╣ FUNC ╠═╦═╣идентификатор╠╬═══╬╦╣eol| ╚══════════╝ ╚══════════╝ | ╚═════════════╝|┏═┓↑↑╚═══╝ | ╚╣¤╠╝| | ┗═┛ | ╚════════*════════════╝
.шп2
Примеры .шп0;
(смотри также FUNC)
355 FUNC fib(n) 360 IF n < 3 THEN 365 RETURN 1 370 ELSE 375 RETURN fib(n-1)+fib(n-2) 380 END IF 385 END FUNC fib
.шп2
Ассоциируемые ключевые слова
.шп0
FUNC SLOSED REF IMPORT RETURN
.шп6;
END IF (END I.)
.шп2
Описание
.шп0
Это указывает конец длинной формы структуры IF. Пробел между END и IF обязателен.
.шп2
Ссылки
.шп0
Секция 15.5
.шп2
Синтаксис
.шп0
┏═══════════╗ ┏═══════════╗ ╔═══╗ | END ╠═══╣ IF ╠═══╣eol| ╚═══════════╝ ╚═══════════╝ ╚═══╝
.шп2
Примеры .шп0;
(смотри также IF)
635 IF temp > max_temp THEN 640 PRINT "*OVERHEATING*" 650 turn_off_heater 660 END IF
.шп2
Ассоциируемые ключевые слова
.шп0
IF THEN ELSE ELIF
.шп6;
END PROC (END PRO.)
.шп2
Описание
.шп0
Это указывает конец объявления процедуры. Пробел между END и PROC обязателен.
Название процедуры необязательно при вводе, и если оно опущено, то будет введено автоматически.
.шп2
Ссылки
.шп0
Секция 13.1 и PROC.
.шп2
Синтаксис
.шп0
┏═══════════╗ ┏═══════════╗ ╔═══════════╗ ╔═══╗ | END ╠═╣ PROC ╠═╦╣ идентиф-р ╠╦═╣eol| ╚═══════════╝ ╚═══════════╝ |╚═══════════╝↑ ╚═══╝ ╚══════*══════╝
.шп2
Примеры .шп0;
(также смотри PROC)
425 PROC laim(message¤) 430 enable_voice_synthesiser 440 say(message¤) 450 disable_voice_synthesier 460 END PROC laim
.шп2
Ассоциируемые ключевые слова
.шп0
PROC CLOSED REF IMPORT
.шп6;
END WHILE (END W.)
.шп2
Описание
.шп0
Это указывает конец длинной формы структуры WHILE. Пробел между END и WHILE обязателен.
.шп2
Ссылки
.шп0
Глава 24 и WHILE.
.шп2
Синтаксис
.шп0
┏═══════════╗ ┏═══════════╗ ╔═══╗ | END ╠═══╣ WHILE ╠═══╣eol| ╚═══════════╝ ╚═══════════╝ ╚═══╝
.шп2
Примеры .шп0;
(смотри также WHILE)
30 WHILE results < excellent DO 40 suggest_more_work 50 reset_test 60 END WHILE
.шп2
Ассоциируемые ключевые слова
.шп0
WHILE DO
.шп6;
ENVELOPE (ENV.)
.шп2
Описание
.шп0
ЕNVELOPE используется с SOUND, чтобы обеспечить больший контроль над производимым звуком. Как команда, она очень мощная, и лучше ознакомиться с ней в руководстве "Программирование на Бейсике в среде ОС ОНИКС". За ENVELOPE следует 14 параметров:
ENVELOPE N,T,PI1,PI2,PI3,PN1,PN2,PN3,AA,AD,AS,AR,ALA,ALD
Параметр Пределы Функция N 1 до 4 Номер Т биты 0-6 0 до 127 Длина каждого шага в сотых секунды бит 7 0 или 1 0=автоматический повтор высоты 1=нет автоматического повтора RI1 -128 до 127 Изменение высоты на шаг в секции 1 PI2 -128 до 127 Изменение высоты на шаг в секции 2 PI3 -128 до 127 Изменение высоты на шег в секции 3 PN1 0 до 255 Число шагов в секции 1 PN2 0 до 255 Число шагов в секции 2 PN3 0 до 255 число шагов в секции 3 АА -127 до 127 Изменение амплитуды на шаг во время Фазы атаки AD -127 до 127 Изменение амплитуды на шаг во время фазы затухания AS -127 до 0 Изменение амплитуды на шаг во время длительной фазы AR -127 до 0 Изменение амплитуды на шаг во время фазы выпуска ALA 0 до 126 Цель уровня в конце фазы атаки ALD 0 до 126 Цель уровня в конце фазы затухания
Следует заметить, что если RS232 буфер не используется, то разрешаются номера в пределах от 1 до 16.
.шп2
Синтаксис
.шп0
╔══════════════════════╗ ┏════════════╗ ↓ ╔══════════════╗ ┏╩┓ ╔═══╗ | ENVELOPE ╠═╩═Х14╣лог. выражение╠╦╣,| ╔═╣eol| ╚════════════╝ ╚══════════════╝↓┗═┛ | ╚═══╝ ╚════╝
.шп2
Примеры
.шп0
ENVELOPE 2,,10,5,0,-10,5,5,15,50,0,-10,-15,125,125 100 ENVELOPE 4,133,0,0,0,35,0,0,125,-5,0,-10,100,60
.шп2
Ассоциируемые слова
.шп0
SOUND ADVAL
.шп6;
EOD (EOD) .шп14;
конец данных
.шп2
Описание
.шп0
EOD - это системная функция, которая указывает, был ли достигнут последний элемент данных. Пока в программе все еще имеются данные, которые можно считывать, она возвращает FALSE (0). После считывания последних имеющихся данных она возвращает TRUE (-1).
.шп2
Ссылки
.шп0
Секция 17.3
.шп2
Синтаксис
.шп0
┏═══════════╗ ═╣ EOD ╠═ ╚═══════════╝
.шп2
Примеры
.шп0
10 a:=0 20 WHILE NOT EOD 30 READ array(a) 50 END WHILE
.шп2
Ассоциируемые ключевые слова
.шп0
DATA READ
.шп6;
EOF (EO.) .шп14;
Конец файла
.шп2
Описание
.шп0
EOF - это функция, которая показывает, был ли достигнут конец файла. За ней следует одиночный аргумент, указывающий номер файла, который необходимо проверить. EOF возвращает TRUE (-1), если данные из файла больше не считываются, в противном случае возвращается FALSE (0). Если никакой файл с указанным номером не открывается, то производится ошибка Not open.
.шп2
Ссылки
.шп0
Секция 32.9.
.шп2
Синтаксис
.шп0
┏═══════════╗ ╔════════════════╗ ═╣ EOF ╠═══╣числовой элемент╠═ ╚═══════════╝ ╚════════════════╝
.шп2
Примеры
.шп0
80 OPEN FILE 1,"Test",READ 90 i:=0 100 REPEAT 110 READ FILE 1:=a(i) 120 i:=+1 130 UNTIL EOF 1 140 CLOSE FILE 1
.шп2
Ассоциируемые ключевые слова
.шп0
OPEN FILE READ RANDOM READ ONLY CLOSE
.шп6;
EOR (EOR) .шп14;
Исключающее ИЛИ
.шп2
Описание
.шп0
EOR - это логический оператор, который выполняет над двумя операндами операцию "Исключающее ИЛИ" в двоичном исполнении, т.е. рассматривает поочередно каждый бит двоичного представления данных операндов и, для каждого из них, устанавливает соответствующий результирующий бит на 1, если установлен один или другой, и на 0, если каждый из них имеет одинаковую величину (дающую 32-битное число).
.шп2
Ссылки
.шп0
Секция 21.3.
.шп2
Синтаксис
.шп0
╔══════════════╗ ┏═══════════╗ ╔══════════════╗ ═╣лог. выражение╠═╣ EOR ╠═╣лог. выражение╠═ ╚══════════════╝ ╚═══════════╝ ╚══════════════╝
.шп2
Примеры
.шп0
310 IF a <> FALSE EOR b <> FALSE THEN 320 PRINT "Either a or b, but not both" 330 ELSE 340 PRINT "Either both a and b, or neither" 350 END IF
.шп2
Ассоциируемые ключевые слова
.шп0
AND OR NOT
.шп6;
EXEC (EX.) .шп14;
Выполнить процедуру
.шп2
Описание
.шп0
EXEC используется для вызова процедуры. При вводе он необязателен и, если он опущен, то вставляется "невидимый" EXEC. Оператор EDIT показывает невидимые EXEC, а LIST нет.
Процедуры могут быть вызваны из прямого режима, но только если были использованы LIST, EDIT, DEBUG или RUN.
.шп2
Ссылки
.шп0
Секция 13.6.
.шп2
Синтаксис
.шп0
┏══════════╗ ╔═════════╗ ╔═════════════════╗ ╔═══╗ ═╦╣ EXEC ╠╦═╣идентиф-р╠═╦╣список параметров╠╦═╣eol| |╚══════════╝↑ ╚═════════╝ |╚═════════════════╝↑ ╚═══╝ ╚══════*═════╝ ╚═══════════════════╝
.шп2
Пример
.шп0
EXEC myproc
.шп2
Ассоциируемое ключевое слово
.шп0
PROC
.шп6;
EXP (EXP) .шп14;
Экспонента
.шп2
Описание
.шп0
EXP - это математическая функция, которая возвращает е (2.718281828) в степени аргумента.
.шп2
Ссылки
.шп0
Секция 33.1.
.шп2
Синтаксис
.шп0
┏═══════════╗ ╔════════════════╗ ═╣ EXP ╠═══╣числовой элемент╠═ ╚═══════════╝ ╚════════════════╝
.шп2
Примеры
.шп0
PRINT EXP (3.5) 175 y := EXP (x)
.шп2
Ассоциируемые ключевые слова
.шп0
LN LOG
.шп6;
EXT (еьт) .шп14;
Длина
.шп2
Описание
.шп0
EXT - это функция, которая возвращает длину файла в байтах номер которого, указан в аргументе. Если открытого файла с указанным номером нет, то производится ошибка Not open.
.шп2
Ссылки
.шп0
Секция 32.17.
.шп2
Синтаксис
.шп0
┏═══════════╗ ╔════════════════╗ ═╣ EXT ╠════╣числовой элемент╠═ ╚═══════════╝ ╚════════════════╝
.шп2
Примеры
.шп0
PRINT EXT 2 35 size_of_file := EXT 1
.шп2
Ассоциируемые ключевые слова
.шп0
OPEN FILE CLOSE
.шп6;
FALSE (FA.)
.шп2
Описание
.шп0
FALSE - это системная функция, которая возвращает величину 0
.шп2
Ссылка
.шп0
Секция 16.3.
.шп2
Синтаксис
.шп0
┏═══════════════╗ ═╣ FALSE ╠═ ╚═══════════════╝
.шп2
Пример
.шп0
65 UNTIL FALSE // infinite loop
Ассоциируемое ключевое слово
TRUE
.шп6;
FILE (FI.)
.шп2
Описание
.шп0
FILE используется как определяющее ключевое слово, чтобы указывать, что следующее за ним выражение является номером файла, к которому относится определенное ключевое слово. Когда файл открыт, он присваивается числу, введенному выражением, следующим за оператором FILE. Все операции в этом файле, пока он не закрыт, относятся к нему этим числом. Для дополнителной информации смотрите описание комманд по работе с файлом (OPEN, CLOSE, WRITE, READ).
.шп2
Справки
.шп0
Глава 32.
.шп2
Синтаксис
.шп0
Смотрите OPEN и CLOSE.
.шп2
Примеры
.шп0
Смотрите описание обсуждаемого ключевого слова.
.шп2
Ассоциируемые ключевые слова
.шп0
OPEN CLOSE WRITE READ PRINT INPUT
.шп6;
FOR (F.)
.шп2
Описание
.шп0
FOR используется для инициализации структуры безусловного цикла.Существует две формы: короткая форма (одна строка), и длинная форма (многострочня). В обоих случаях за FOR следует переменная цикла, которая имеет нижнюю и верхнюю границы, разделенные оператором ТО. Кроме того, для указания инкремента пременной цикла там может быть оператор STEP. Величина по умолчанию - 1.
В короткой форме за FOR следует простой оператор, который необходимо повторить.
Если в цикле необходимо выполнить более одной команды, то каждую необходимо вводить на строках, следующих за оператором FOR; конец цикла указывается оператором NEXT.
В обоих случаях, если при вводе опущен оператор DO, то он вставляется автоматически.
Следует отметить, что если величины, принимаемые переменной цикла, всегда будут целыми числами, то использование целой переменной сделает выполнение более быстрым.
Еще следует отметить, что если начальная и конечная величины переменной цикла и инкремент несовместимы (напр. FOR i := 1 TO 10 STEP -1), то цикл не производится вообще, а выполнение продолжается со строки, следующей за концом структуры FOR.
Рекомендуется, если возможно, использовать целые размеры шагов и, если требуется, делить переменную цикла, так как неточности мгут привести к дробным размерам шагов.
.шп2
Справки
.шп0
Глава 6.
.шп2
Синтаксис
.шп0
╔═══╗╔═*═╗ ┏═══╗╔═════════╗|┏═┓↓|┏═┓↓┏═┓╔═══════════╗┏══╗╔═══════════╗ |FOR╠╣идентиф-р╠╩╣#╠╩╩╣:╠╩╣=╠╣лог.выраж═е╠╣ТО╠╣лог.выраж═е╠╗ ╚═══╝╚═════════╝ ┗═┛ ┗═┛ ┗═┛╚═══════════╝╚══╝╚═══════════╝| ╔═════════════════════╦══════════════════════════════╝ ↓ ┏════╗ ╔═══════════╗↓ ┏══╗ ╔════════════════╗ ╔═══╗ ╚═╣STEP╠═╣лог.выраж═е╠╩╦╣DO╠╦╦╣простой оператор╠╦╣eol| ╚════╝ ╚═══════════╝ |╚══╝↑|╚════════════════╝↑╚═══╝ ╚══*═╝╚══════════════════╝
.шп2
Примеры
.шп0
Короткая форма:
FOR i# := 1 TO 10 DO PRINT i# 10 FOR i# := 5 TO 11 STEP 2 READ a(i#)
Длинная форма:
10 FOR j := 2 TO 10 DO 20 PRINT j 30 myproc(j2) 40 NEXT j
.шп2
Ассоциируемые ключевые слова
.шп0
TO STEP DO NEXT
.шп6;
FREE (FR.) .шп14;
Свободная память
.шп2
Описание
.шп0
FREE - это системная функция, которая возвращает число байтов имеющейся свободной памяти.
.шп2
Ссылки
.шп0
Секция 34.1 и карта памяти в секции 34.3.
.шп2
Синтаксис
.шп0
┏══════════════╗ ═╣ FREE ╠═ ╚══════════════╝
.шп2
Примеры
.шп0
PRINT FREE 100 FUNC legal_change(new_mode) 110 RESTORE mode_size_list 120 FOR m := 0 TO new_mode DO READ new_mode_size 130 RESTORE mode_size_list 140 FOR m := 0 TO MODE DO READ old_mode_size 150 IF (new_mode_size - old_mode_size) >= FREE THEN 160 RETURN FALSE 170 ELSE 180 RETURNE TRUE 190 END IF 200 END FUNC legal_change 210 mode_size_list: 220 DATA 20480,20480,20480,16384,10240,10240,8192,1024
.шп2
Ассоциируемые ключевые слова
.шп0
SIZE PAGE
.шп6;
FUNC (FU.) .шп14;
Функция
.шп2
Описание
.шп0
FUNC - это первое слово, используемое на строке объявления функции. За ним следует название, которое определяет функцию, список формальных параметров (если есть) и, возможно, CLOSED для обозначения закрытой (местной) функции. Тело функции находится между этой строкой и следующим оператором END FUNC, и должно содержать оператор RETURN, который указывает возвращаемую функцией величину.
FUNC может появляться только в начале программной строки, а не внутри каких-либо других структур.
.шп2
Ссылки
.шп0
Глава 30
.шп2
Синтаксис
.шп0
┏═┓ ╔╣#╠╗ ┏══════╗ ╔═════════╗|┗═┛↓╔═════════════════════╗ ╔═══╗ | FUNC ╠═╣идентиф-р╠╬═══╬╣продолжение заголовка╠═╣eol| ╚══════╝ ╚═════════╝|┏═┓↑╚═════════════════════╝ ╚═══╝ ╚╣¤╠╝ ┗═┛
.шп2
Примеры (смотри также главу 30)
235 FUNC factorial(number#) 240 IF number# > 1 THEN 245 RETURN number# * factorial(number#=1) 250 ELIF number# >= 0 255 RETURN 1 260 ELSE 265 RETURN 0 270 END IF 275 END FUNC faktorial
.шп2
Ассоциируемые ключевые слова
.шп0
CLOSED REF IMPORT END FUNC RETURN PROC
.шп6;
GCOL (G.) .шп14;
Графический цвет
.шп2
Описание
.шп0
GCOL устанавливает логические цвета, которые используются для фона и переднего плана графической области во всех следующих операциях.
За командой GCOL следуют два аргумента. Первый определяет метод вывода цвета на экран следующим образом:
0 построить указанный цвет
1 OR указанный цвет с цветом, который уже присутствует
2 AND указанный цвет с цветом, который уже присутствует
3 EOR указанный цвет с цветом, который уже присутствует
4 переворачивает цвет, который уже присутствует
Второй аргумент определяет логический цвет, котоый будет использоваться. Числа меньше 128 определяют цвет переднего плана, а больше 128 - цвет фона. Следует заметить, что хотя второй аргумент в GCOL 4,х и не оказывает влияния на результат, число вводить необходимо.
.шп2
Ссылки
.шп0
Секция 11.5 и COLOUR.
.шп2
Синтаксис
.шп0
╔═════════════════════╗ ┏════════╗↓ ╔══════════════╗ ┏╩┓ ╔═══╗ | GCOL ╠╩═X2╣лог. выражение╠╦╣,| ╔═╣eol| ╚════════╝ ╚══════════════╝↓┗═┛ | ╚═════╝
.шп2
Примеры (смотри также главу 11)
GCOL 1,131
95 GCOL 0,4
.шп2
Ассоциируемые ключевые слова
.шп0
COLOUR CLG MODE PLOT DRAW MOVE VDU
.шп6;
GET (GET)
.шп2
Описание
.шп0
GET используется, чтобы выполнение было приостановлено, пока не будет нажата клавиша. Она возвращает код ASCII нажатой клавиши, но напечатанный символ на экране не появляется. Подробное описание кодов ASCII смотрите в секции 40.1.
Следует отметить, что GET читает буфер, соответствующий текущему входному потоку. Поэтому клавишу можно нажать перед тем, как выполнится GET, но при условии, что никакая другая команда не удаляет его из буфера.
Если входной поток меняется (команда *FX 2 или *EXEC), то GET можно использовать для получения симвлов из других источников, а не с клавиатуры.
.шп2
Ссылки
.шп0
Секция 9.5
.шп2
Синтаксис
.шп0
┏═════════╗ ═╣ GET ╠═ ╚═════════╝
.шп2
Примеры
.шп0
PRINT CHR¤ GET 35 WHILE GET <> 32 DO NULL
.шп2
Ассоциируемые ключевые слова
.шп0
GET¤ INKEY INKEY¤ INPUT
.шп6;
GET¤ (GE.)
.шп2
Описание
.шп0
GET¤ производит в выполнении паузу, которая продолжается до нажатия клавиши. Он возвращает строку, содержащую нажатую клавишу, но символ на экран не выводится.
Следует заметить, что GET¤ читает буфер, соответствующий текущему входному потоку. Поэтому клавиша может быть нажата до выполнения GET¤, при условии, что никакая другая команда не удаляет его из буфера.
Если входной поток меняется (команда *FX2 или *EXEC), то GET¤ можно использовать для получения символов из других источников, а не с клавиатуры.
.шп2
Ссылки
.шп0
Секция 9.6.
.шп2
Синтаксис
.шп0
┏════════════╗ ═╣ GET¤ ╠═ ╚════════════╝
.шп2
Примеры
.шп0
q1¤ := GET¤
25 q2¤ := GET¤ 30 PRINT q2¤
.шп2
Ассоциируемые ключевые слова
.шп0
GET INKEY INKEY¤ INPUT
.шп6;
GOTO (GO.)
.шп2
Описание
.шп0
GOTO вызывает безусловный переход выполнения программы на названную метку (не на номер строки). Подробное определение меток смотрите в описании RESTORE. Следует заметить, что частое использование GOTO разрушает структуру программы и поэтому не рекомендуется.
.шп2
Синтаксис
.шп0
┏══════════╗ ╔═════════╗ ╔═══╗ | GOTO ╠═══╣идентиф-р╠═══╣eol| ╚══════════╝ ╚═════════╝ ╚═══╝
.шп2
Примеры
10 i := 0 20 again: // label 30 i:=+1 40 PRINT "This is appalling style" 50 GOTO again
.шп2
Ассоциируемые ключевые слова
.шп0
Нет.
.шп6;
IF (I.)
.шп2
Описание
.шп0
Структура IF используется для того, чтобы сделать выполнение некоторых строк программы зависимым от того, является ли какое-либо выражение истинным или нет. Ее можно использовать в двух формах: короткой форме и длинной.
Короткая форма - это структура на одной строке, разрешающая выполнять только простой оператор (или многократное присваивание), если условие истинное.
Длинная форма разрешает блоку строк, следующему за оператором IF, зависеть от него, а также разрешает использование команд ELIF и ELSE. Последние вводят для выполнения другие блоки операторов, если исходное условие в операторе IF не было удовлетворено. Динная форма IF заканчивается оператором END IF.
Следует заметить, что THEN необязателен при вводе, за исключением таких случаев, как:
IF x = 10 THEN ? y=x
где 10 ? y = х действительное выражение.
.шп2
Ссылки
.шп0
Секции 15.3, 15.5
.шп2
Синтаксис
.шп0
╔══════════════════╗ ┏══════╗╔══════════════╗ ┏══════╗ |╔════════════════╗↓╔═══╗ | IF ╠╣лог. выражение╠╦╣ THEN ╠╦╩╣простой оператор╠╩╣eol| ╚══════╝╚══════════════╝|╚══════╝↑ ╚════════════════╝ ╚═══╝ ╚═══*════╝
.шп2
Примеры .шп0;
(смотри также главу 15)
IF x < 0 THEN PRINT "Negative" 30 IF x - 1 THEN 40 MOVE x,y 50 ELSE 60 DRAW x,y 70 END IF
.шп2
Ассоциируемые ключевые слова
.шп0
END IF ELSE THEN
.шп6;
IMPORT (IM.)
.шп2
Описание
.шп0
IMPORT используется для объявления того, к каким глобальным переменным имеется доступ из закрытой процедуры или функции. Это эквивалентно передаче этих переменных отношением к процедуре или функции, в этих присваиваниях им внутри структуры изменит их беличины глобально.
Следует заметить, что IMPORT может использоваться в любом месте структуры при условии, что в структуре уже не существует переменная с таким же названием, как и у вносимой.
.шп2
Ссылки
.шп0
Секция 31.6.
.шп2
Синтаксис
.шп0
┏═┓ ╔═════════════╗ ╔╣#╠╗| ╔═════╗ | ┏════════╗ ╔═════════╗|┗═┛↓|┏═┓| ┏═┓ ↓┏═┓↓ ╔═══╗ | IMPORT ╠═╦╣идентиф-р╠╬═══╬╩╣(╠╩╦╣,╠╦╩╣)╠╩╦╣eol| ╚════════╝ ↑╚═════════╝|┏═┓↑ ┗═┛ ↑┗═┛| ┗═┛ |╚═══╝ | ╚╣¤╠╝ ╚═══╝ | | ┗═┛ ┏═┓ | ╚═════════════════╣,╠═══════════╝ ┗═┛
.шп2
Примеры .шп0;
(смотри также PROC и главу 31)
35 IMPORT a,b#,name¤,array(,,)
.шп2
Ассоциируемые ключевые слова
.шп0
PROC FUNC CLOSED REF
.шп6;
IN (IN)
.шп2
Описание
.шп0
IN - это бинарный оператор, который возвращает позицию первой строки во второй.
Если соответсвия не найдено, то IN возвращает 0. Если первый аргумент является нулевой строкой, то он возвращает 1.
.шп2
Ссылки
.шп0
Секция 4.3
.шп2
Синтаксис
.шп0
╔══════════════════╗ ┏════════╗ ╔══════════════════╗ ═╣строчное выражение╠═╣ IN ╠═╣строчное выражение╠═ ╚══════════════════╝ ╚════════╝ ╚══════════════════╝
.шп2
Примеры
.шп0
PRINT "345" IN "12345" 145 DIM a¤ OF 10 150 REPEAT 155 PRINT "Answer Yes or No >>" 160 a¤ := GET¤ 165 UNTIL a¤ IN "YNyn"
.шп2
Ассоциируемые ключевые слова
.шп0
Нет.
.ст комал17
[an error occurred while processing this directive]