|
Справочник по операторам | ||||||||
CLS Оператор очистки экрана. Если все аргументы опущены, очищаются и графический и текстовый экраны. | ||||||||
CLS 1 Очищает только графический экран, если он активен | ||||||||
CLS 2 Очищает только текстовый экран, исключая нижнюю строку | ||||||||
RANDOMIZE 32767 – TIMER Оператор, запускающий генератор случайных чисел | ||||||||
GOTO 20 Оператор безусловного перехода, здесь задает переход на строку 20 | ||||||||
END Оператор-указатель конца программы, останавливает выполнение программы и закрывает все файлы. | ||||||||
SLEEP Управляющий оператор, приостанавливающий выполнение программы до нажатия любой клавиши. | ||||||||
SLEEP 2 Управляющий оператор, приостанавливающий выполнение программы на 2 секунды. | ||||||||
REM Вся строка после оператора является комментарием Оператор, указывающий на комментарий. Вместо ключевого слова REM можно использовать апостроф ' При использовании REM в конце строки операторов его необходимо отделять двоеточием, а при записи с использованием апострофа, двоеточие можно опускать. | ||||||||
PRINT 2*x ^ 2 + 1; (3 + 7) / (0.5 + 1.5); 3 Оператор при x = 2 вычислит и выведет на экран 9, затем 5 и 3 | ||||||||
PRINT "Значение х = "; 2; TAB(15); 3; SPC(5); 4 Оператор выводит на экран Значение x = 2, в 15-й позиции 3 и, сделав 5 пробелов, выводит 4. | ||||||||
10 FOR i = 1 TO 1000: NEXT i пустой цикл, реализующий временную задержку. 10 CIRCLE (320, 165), 40, 1: PAINT (320, 165), 1, 1 оператор CIRCLE рисует окружность, которую затем оператор PAINT заливает краской. | ||||||||
Примечание: 1. Операторы в многооператорной строке разделяются двоеточием. 2. При наборе программы можно вместо слова PRINT ставить знак?, который затем Бейсик сам переделает в PRINT. 3. Если в программе впервые встречается какая-либо переменная, которой до этого не было присвоено никакого значения, то по умолчанию значение переменной будет равно 0.
| ||||||||
Число n | -1.99 | -1.5 | -1.01 | 1.01 | 1.5 | 1.99 | Примечание | |
CINT(n) | -2 | -2 | -1 | Округление | ||||
FIX(n) | -1 | -1 | -1 | Отсечение дробной части | ||||
INT(n) | -2 | -2 | -2 | Ближайшее целое, меньшее или равное аргументу | ||||
Оператор и его описание | ||||||||
PRINT USING "Число ###"; 16 Выводит: Число 16, где # – позиция цифры | ||||||||
PRINT USING "Число #"; 16 Выводит: Число # (переполнение) или %16 | ||||||||
PRINT USING "Число +##"; 16 Выводит: Число +16, где + печатает знак минус для отрицательных чисел и знак плюс для положительных | ||||||||
PRINT USING "Число $$####"; 16 Выводит: Число $16, где $$ печатает $ перед выводимым числом | ||||||||
PRINT USING "Число **####"; 16 Выводит: Число ****16, где ** заполняет звездочками места перед числом | ||||||||
PRINT USING "Число **$####"; 16 Выводит: Число ****$16, где **$ совмещает ** и $$ | ||||||||
PRINT USING "Ответ: #.### кг."; x Выводит: Ответ: 3.041 кг. для x = 3.0406 и Ответ: #.### кг. или %40.000 кг. для x = 40, где. (точка) – позиция десятичной точки | ||||||||
PRINT USING "Ответ: #.##^^^^ кг."; x Выводит: Ответ:.30E+01 кг. для x = 3.0406 и Ответ:.40E+02 кг. для x = 40, где ^^^^ - позиция для печати степени (числа в экспоненциальном представлении или в так называемом научном формате) | ||||||||
PRINT USING "!, &, \ \, _&"; "Москва", "Москва", "Москва" Выводит: М, Москва, Мос, &, где! – печать только первого символа, & - место для неограниченного строкового выражения, \ \ - печать первых n символов строкового выражения (n - число пробелов между косыми чертами + 2), _- следующий символ воспринимается не как управляющий, а как простой литерал | ||||||||
Примечание: #,!, $ и др. – управляющие символы. Остальные символы в управляющей строке печатаются без изменений.
| ||||||||
READ x, y, z Вводит числовые переменные x, y, z, для которых считывает из оператора DATA и присваивает числовые значения | ||||||||
READ x, y$ Вводит числовую переменную x и строковую y$, для которых считывает из оператора DATA и присваивает x числовое значение и y$ строковую константу | ||||||||
DATA 1.2, -2.546, 3 Хранит числовые значения для последующего их считывания оператором READ | ||||||||
DATA 7.2, "режим" Хранит числовое значение и строковую константу для последующего их считывания оператором READ | ||||||||
DATA 1.2,, 5, -4.8 Оператор с пустым элементом списка, присваивающим числовой переменной значение 0, а строковой – отсутствие значения | ||||||||
RESTORE Задает по умолчанию соответствующему оператору READ возврат на считывание с начала данных из первого оператора DATA | ||||||||
RESTORE 50 Задает соответствующему оператору READ переход на считывание с начала данных из оператора DATA в строке 50 (50 - метка) | ||||||||
Примечание: переменные в операторе READ, как и данные в операторе DATA, разделяются запятыми |
Операции, функции | Вид в Бейсике |
Сложение | + |
Вычитание | - |
Умножение | * |
Деление | / |
Возведение в степень | ^ |
Целочисленное деление | \ |
ex | EXP(x) |
|x| | ABS(x) |
sinx | SIN(x) |
cosx | COS(x) |
tgx | TAN(x) |
lnx | LOG(x) |
lgx | LOG(x) / LOG(10) |
Öx | SQR(x) |
arctgx | ATN(x) |
Остаток от деления | i MOD j |
Генератор случайных чисел | RND(n) |
Равно | = |
Больше | > |
Меньше | < |
Не равно | <> |
Меньше или равно | <= |
Больше или равно | >= |
Примечание: 1. Согласно приоритету операций в Бейсике сначала выполняется возведение в степень, затем умножение и деление, после сложение, вычитание. Операции, размещенные в одной строке и имею-щие равный приоритет, выполняются последовательно слева направо. 2. Бейсик вычисляет выражение в скобках в первую очередь, даже если операции в скобках более низкого приоритета, чем вне скобок. Сначала вычисляются внутренние скобки, затем наружные. 3. Обратные функции вычисляются через имеющиеся встроенные: секанс SEC(x) = 1 / COS(x), косеканс COSEC(x) = 1 / SIN(x), арксинус ARCSIN(x) = ATN(x / SQR(1 – x * x)), арккотангенс ARCCTN(x) = 1.570796 – ATN(x), арккосинус ARCCOS(x) = 1.570796 – ATN(x / SQR(1 – x * x)) |
| ||
IF 0 < x THEN y = a * x + b ELSE y = c * x ^ 2 Линейная форма условного оператора. Удобна, если требуется реализовать два альтернативных условия. Если справедливо условие 0 < x, то y определяется по формуле, стоящей после THEN, в противном случае – по формуле после ELSE. | ||
IF 0 < x THEN y = a * x + b ELSE 50 Линейная форма условного оператора. Если справедливо условие 0 < x, то вычисляется y после THEN, в противном случае – переход на строку 50. После THEN или ELSE может стоять и многоо-ператорная строка, например, a = 2: b = 3: y = a * x + b: PRINT y | ||
IF 0 < x THEN y = a * x + b Неполная форма условного оператора. Если справедливо условие 0 < x, то определяется y по формуле после THEN. В противном случае выполняется следующий оператор программы. | ||
IF 0 < x AND x < 5 THEN y = a * x + b Неполная форма условного оператора. Пример реализации сложного условия 0 < x < 5 с помощью оператора AND | ||
IF 0 < x THEN IF x < 5 THEN y = a * x + b Неполная форма условного оператора. Пример реализации сложного условия 0 < x < 5 | ||
IF x =< 0 THEN y = a * x + b ELSEIF 5 =< x THEN y = a * x ELSEIF 0 < x AND x < 5 THEN y = c ^ x ELSE PRINT "Такого варианта нет" END IF Блочная форма условного оператора. Блоки ELSE и ELSEIF могут быть опущены. ELSEIF может быть любое количество. Каждый из блоков может также содержать вложенные блочные структуры IF | ||
SELECT CASE n CASE -1: PRINT "n может быть и отрицательным" CASE 0: PRINT "n может быть числовым или строковым" CASE 1, 2, 3: PRINT "Несколько одинаковых вариантов" CASE 4 TO 8: PRINT "Использование ключевого слова TO" CASE IS > 8: PRINT "Использование операций отношения" CASE ELSE: PRINT " CASE ELSE может быть опущено" END SELECT Управляющий оператор, выполняющий один или несколько блоков оператора в зависимости от значения n (числового или строкового). | ||
DIM m1(10), m2(1 TO 10, 5) Оператор объявляет одномерный (m1) и двумерный (m2) массивы | ||
DIM m(10, 5) DIM m(0 TO 10, 5) DIM m(10, 0 TO 5) DIM m(0 TO 10, 0 TO 5) Операторы объявляют двумерный массив. При OPTION BASE 0 операторы эквивалентны. Ключевое слово TO позволяет указать и нижнюю и верхнюю границы массива. | ||
REDIM m(5, 3) REDIM m(0 TO 5, 3) REDIM m(5, 0 TO 3) REDIM m(0 TO 5, 0 TO 3) Оператор объявления массивов, изменяет объем памяти, выделенной динамическим массивам. | ||
OPTION BASE n Оператор объявления нижней границы массивов. n = 0 или 1, по умолчанию равен 0. Не обязателен, может использоваться только раз в модуле для описания всех массивов. | ||
ERASE m Оператор управления памятью, обнуляет элементы статического массива m или уничтожает динамический массив m. | ||
FOR i = 2 TO 100 STEP 2 S = S + a(i): IF S > 100 THEN EXIT FOR NEXT i Оператор цикла, реализующий суммирование элементов массива а, при сумме больше 100 предусмотрен досрочный выход из цикла | ||
FOR i = 1 TO 1000: NEXT i Пустой цикл, реализующий временную задержку | ||
WHILE S <= 100 i = i +1: S = S + a(i) WEND Оператор цикла, реализующий суммирование элементов массива а, цикл выполняется пока указанное условие истинно (в данном случае при S £ 100) | ||
Примечание: 1. Возможные границы массивов находятся в приделах от – 32768 до 32767 2. Допускается вкладывать как циклы FOR…NEXT, так и WHILE…WEND. 3. Обычно при использовании циклов FOR…NEXT первому счетчику цикла дается имя i, вложенному в него – j, затем k, l и далее по алфавиту | ||
DO WHILE i > 10000 i = i +1 LOOP Управляющий оператор цикла, повторяющий блок операторов, пока условие ложно, с проверкой условия в начале. | ||
DO UNTIL INKEY$ <> "" IF i > 10000 THEN EXIT DO ELSE i = i +1 LOOP Управляющий оператор цикла, повторяющий блок операторов, пока условие истинно, с проверкой условия в начале.. Производит увеличение значения счетчика i до тех пор, пока не нажата любая клавиша. Предусмотрен досрочный выход из цикла при значении счетчика i > 10000. | ||
DO IF i > 10000 THEN EXIT DO ELSE i = i +1 LOOP WHILE INKEY$ = "" Управляющий оператор цикла, повторяющий блок операторов, пока условие ложно, с проверкой условия в конце. Производит увеличение значения счетчика i до тех пор, пока не нажата любая клавиша. Предусмотрен досрочный выход из цикла при значении счетчика i > 10000 | ||
DO i = i +1 LOOP UNTIL i < 10000 Управляющий оператор цикла, повторяющий блок операторов, пока условие истинно, с проверкой условия в конце. | ||
PRINT "Нажмите клавишу ESC": DO: LOOP WHILE INKEY$ <> CHR$(27) Пустой цикл, осуществляющий задержку до нажатия клавиши Esc. | ||
SWAP x(i), x(j) Оператор, взаимно меняющий значения двух переменных. | ||
INKEY$ Функция, читающая символы с клавиатуры. Если символ не был считан, то возвращается нулевая строка. Не дублирует ввод с клавиатуры выводом на экран (без эха). | ||
CHR$(27) Символьная функция, возвращающая строку из одного символа, ASII-код которого является аргументом, где код – число от 0 до 255. В данном случае аргумент – код клавиши Esc. | ||
GOSUB 300 Управляющий оператор вызова подпрограммы на строке 300. | ||
RETURN 10 Управляющий оператор выхода из подпрограммы, возвращающий на строку 10. Если метки нет, то управление возвращается на следующую за GOSUB строку. | ||
Оператор и его описание | ||
OPEN "file2.dat" FOR OUTPUT AS #2 Оператор, открывающий по 2-му каналу файл file2.dat для создания. Если файл file2.dat уже был создан, то он уничтожается и создается заново. | ||
OPEN "file2.dat" FOR APPEND AS #1 Оператор, открывающий по 1-му каналу файл file2.dat для добавления. Если файл находится не в текущем каталоге, с которым работает Бейсик, то в названии файла необходимо указывать полный путь к нему, например, "A:\ZZ\file.dat" для файла, находящегося на диске А (дискете) в каталоге (папке) ZZ. | ||
OPEN "file2.dat" FOR INPUT AS #3 Оператор, открывающий по 3-му каналу файл file2.dat для считывания | ||
WRITE #2, x10$ (1, j); x10$ (2, j) В открытый по 2-му каналу файл оператор записывает в одну строку из массива x10$ два символьных элемента c разделительными знаками | ||
PRINT #1, x10$ (1, j); x10$ (2, j) В открытый по 1-му каналу файл оператор записывает в одну строку из массива x10$ два символьных элемента без разделительных знаков | ||
INPUT #3, x11$ (i, j) Оператор, читающий данные из открытого по 3-му каналу файла и присваивающий их значения переменной x11$(i, j). | ||
CLOSE #1 Оператор, закрывающий открытый по 1-му каналу файл | ||
CLOSE Если все аргументы опущены, то закрываются все файлы и устройства. | ||
EOF(n) Функция файлового ввода-вывода, определяющая условие конца файла, где n – номер открытого файла. Используется, например, для досрочного выхода из цикла, организованного для считывания данных из файла, когда данные файла исчерпаны. | ||
NAME " file1.dat" AS "file2.dat" Оператор переименовывает файл file1.dat в file2.dat | ||
KILL " file2.dat " Оператор стирает указанный файл file2.dat с диска. Соответствует команде DOS del. |
Логические операторы QBasic | ||
Оператор | Название | Объяснение |
NOT | Отрицание | NOT A истинно тогда и только тогда, когда A ложно |
AND | Логическое умножение | A AND B истинно тогда и только тогда, когда истинно А и истинно В |
OR | Логическое сложение | A OR B истинно тогда и только тогда, когда хотя бы одно из A и B истинно |
XOR | Исключаю-щее ИЛИ | A XOR B истинно тогда и только тогда, когда значения А и В не совпадают |
EQV | Эквивален-тность | A EQV B истинно тогда и только тогда, когда A и B одновременно истинны или ложны |
IMP | Импликация | A IMP B ложно, если A истинно, а B ложно, в других случаях A IMP B истинно |
Дата добавления: 2015-08-29; просмотров: 24 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
Фирменный бланк или угловой штамп организации | | | Самостоятельная работа «Метод верхних и нижних границ» |