Величины и их типы в языке Basic Стандартные числовые функции Арифметические выражения
Типы Константы Переменные ПростыеИндексир. Целые 3%, -8% &B 1101 –двоичные &O 315 – восьмеричные &H 2AF – 16-теричные Диапазон целых чисел: A%, Z1%B%(5) В памяти ЭВМ занимают 2 байта [-32768,32767 ] По умолчанию ! Е-03 – экспоненциальная форма A, X1M(8) N!B!(2) В памяти ЭВМ занимают 4 байта Число до 7 знаков # D 07 - экспоненциальная форма R#A#(5) В памяти ЭВМ занимают 8 байт Число до 16 знаков Символьные«школа3»; «2+3+1» Длина строки 255 символов А$ 1 символ - 1байт Z$(1) ЛогическиеИстина (-1), Ложь (0) Одинарной точности Двойной точности В е щ е с т в е н н ы е Ч и с л о в ы е Величины
Переменная - область памяти, имеющая имя для хранения различных значений. Имя переменной начинается с лат. буквы, далее могут быть буквы, цифры и знаки, определяющие тип переменной (%, !, #): ZR1, Y6%, SO#, D!. Индексированная переменная - переменная, имеющая индекс (номер) Индекс- целое выражение, принимающее положительное значение. Индексы разделяются запятой, если их несколько: А(3), А(n/2+1), R(n,m). Константа - постоянная величина, являющаяся значением переменной. Числовая константа – это конкретное число. Символьная константа - произвольная последовательность символов заключенная в кавычки "Информатика - наука!". Для записи очень больших или маленьких чисел используется экспоненциальная форма записи констант. Пр-р: Обычная запись:На языке Бейсик: 1)0, =2,34· Е-05 2) =1,64· Е+08 Здесь, например, 2,34 –мантисса числа, 6 – порядок, 10 – основание десятичной системы счисления
Указать величины и их типы 1) S2! - Перем., числ., веществ., одинарной точн. 2) 1Х% - Не данное 3) N -Перем., числ., вещ., одинарной точн. 4) Е-05 -Конст., числ., вещ., один., точн.,эксп. 5) D1% - Переменная, числовая, целая. 6) «информатика» - Константа, символьная 7) «α+β+γ» - Не данное 8) Я# - Не данное 9) F4$ -Перем., символьная 10) z3.1 - Не данное
Арифметические операции ОперацияПояснениеПримерПриоритет операций: +Сложение2+3^ -Вычитание5-2/ *Умножение2*3\ /Деление7/2 (результат 3.5)MOD \Деление нацело 7\2 (результат 3)* MODОстаток от деления 7 MOD 2 ( остаток 1)+ ^Возведение в степень 2^3 (результат 8)-
СТАНДАРТНЫЕ ЧИСЛОВЫЕ ФУНКЦИИ Функц ия НазначениеПояснение ABS(x) х -Модуль числа х SQR(x) х -Квадр. корень из числа х, х 0 COS(x)СОSx -Косинус х, где х- угол в рад. Храд=Х 0 * /180 SIN(x)SINx – синус х, где х- угол в радианах TAN(х)tg x - тангенс х, где х- угол в радианах ATN(x)arctg x- арктангенс х, где х- угол в рад. EXP(x)e x - экспонента (число е=2.71…)Использ в мат. выч. LOG(x)Lnx – натуралный логарифм числа х a х =b, х=log a b, lоg a x=lnx/lna FIX(x)Целая часть х (дробная отбрасывается)FIX(-5.3) равно -5 FIX(6.25) равно 6 INT(x)Максимальное целое, меньшее или равное х. Для х>0 значения FIX(x) и INT(x) одинаков INT(-5.3) равно -6 INT(6.25) равно 6
SGN(x)Знак числа: 0 при х=0 1 при х>0 -1 при х
Примеры записи арифметических выражений: Обычная форма Линейная (на языке Бейсик) 1. 3sin2x-5 x+y3*SIN(2*x) – 5*SQR(x+Y) 2. 3,75e 2k +tg(60 0 ) 3.75*EXP(2*k)+TAN(3.14/3) 3. |1-|6,3x : b 5 | | ABS(1-ABS(6.3*x / b^5))
VI.ОПЕРАТОРЫ ВВОДА/ ВЫВОДА ДАННЫХ 1. Оператор присваивания [LET] X= V, LET (пусть)- служебное слово. необязательно где Х- переменная V- выражение 2. PRINT [ ] – вывод списка на экран. ? - константы, переменные, выражения, разделенные (,) или (;) (;)- вывод элементов списка рядом (на следующей позиции) (,) – вывод по зонам (через 14 позиций, т.к экран разбит на зоны по 14 поз. каждая зона Если (;) или (,) находятся в конце списка, то вывод элементов списка следующей команды PRINT будет в предыдущей строке экрана.
3 7 21ЭВМ С=21 А+В= 10 F= 10 ЭВМ 5 Пример: A В C D$ F 1 ЗОНА 2 ЗОНА 10 LET A=3 20 B=7 30 C=A*B 40 D$=ЭВМ 50 F=(A+B)/2 60 PRINT –30;-.5,10 70 PRINT A;B, 80 PRINT D$ 90 PRINTC=;C 100 PRINTA+B=;A+B 110 PRINT 120 PRINTF=,F
INPUT [ ;] - ввод в программу с клавиатуры значений переменных списка с подсказкой. - текстовая константа (текст), позволяющая пользователю правильно выполнить ввод значений. Переменные списка разделяются запятой, если их несколько. При выполнении команды приостанавливается выполнение программы, печатается подсказка и выдается знак?, после которого необходимо ввести значения констант, соответствующих переменным списка по типу и числу. Если вводимых значений недостаточно, то выдается ??- требование продолжить ввод. Лишние данные игнорируются.
3445 Введи А,В,С? 3,4,5 Пример: PRINTS=;S Команда INPUT используется для многократного выполнения программы с различными данными. Пример : A B C S= 4 S INPUT Введи А,В,C;А,В,C S=(A+B+C)/3 Найти среднее арифметическое трех чисел
LOCATE X,Y[,К] – установка текстового курсора в заданную позицию, вкл./выкл. курсора. X - номер позиции в строке [1-64] Y- номер строки экрана [1-16] К - значение, определяющее виден курсор или нет: 1 - вкл., 0- выкл.(курсор невиден) Пример: LOCATE 5,8,1- установить курсор в 5-ой позиции 8-ой строки, включить. Команда LOCATE пишется перед командами PRINT и INPUT, которые начинают размещать символы, начиная с указанных позиций.
Операторы ввода DATA и READ (используются только вместе) DATA – образует склад данных и содержит список числовых или символьных констант, разделенных запятыми, соответствующих списку переменных READ по типу и числу; может быть разбит на несколько команд DATA и находиться в любом месте программы, но все DATA образуют один склад данных; команда не выполняется. READ - содержит переменные, разделенные запятой. При выполнении READ происходит считывание значений из DATA в котором существует некоторый указатель, учитывающий какое значение уже взято. Если данных недостаточно, то будет соответствующее сообщение. Лишние данные игнорируются.
Пример: DATA 5, 0.34, 100 DATA класс, 17 READ A,B,K,X$,P При выполнении команды READ компьютер установит следующие значения: класс17 A B K X$ P
Вычислить значение арифметического выражения с двойной, одинарной и целой точностью Z= при Алгоритм: начало конец Ввод х Выч. У Выч Z# Z% =Z# Z! = Z# Вывод Z# Вывод Z! Вывод Z% Программа: CLS X=2.1 Y= 3* ABS(x) Z# = (2*SIN(3*x) 4*SQR(X+Y) / ( TAN(3*X*Y) + EXP(8*X)) PRINT Z#=;Z# Z! = Z# PRINT Z!=;Z! Z% = Z# PRINT Z%=;Z%