Арифметические выражения в БЕЙСИКЕ.Основные операторы языка БЕЙСИКДля вычисления наиболее распространенных элементарных математических функций в языке БЕЙСИК применяют встроенные стандартные функции. Аргумент функции заключается в круглые скобки. Аргументом функции может быть произвольное арифметическое выражение. Для обращения к функции нужно набрать ее имя и указать аргумент. Стандартные математические функции, применяемые в языке Бейсик, приведены в ТАБЛИЦЕ 1.Аргументы тригонометрических функций должны быть заданы в радианах. Если угол выражен в градусах, то его нужно перевести в радианы по формуле^ Значение в радианах = значение в градусах * 3.14/180 В некоторых версиях языка Бейсик имеется функция LOG(X) для вычисления натурального логарифма числа Х. Однако от логарифма с любым основанием легко перейти к натуральному логарифму, используя формулуLogaN = ln N/ln a, где а – основание.Над числовыми константами, переменными и стандартными функциями можно производить обычные арифметические операции: 1. вычисляются значения функций 2. ^ возведение в степень, 3. * умножение, / деление, 4. + сложение, - вычитание.Арифметическое выражение – это символическая запись, указывающая правила вычисления числового выражения. Оно состоит из чисел (констант), имен переменных, функций, знаков арифметических операций и скобок.^ При записи выражений необходимо учитывать следующие рекомендации и ограничения:Формулу требуется записывать в строку без каких-либо подстрочных и надстрочных знаков.Следует использовать круглые скобки для указания порядка действий, особенно в сомнительных случаях. Вычисления в скобках производятся в первую очередь. Если выражение, содержащее скобки само заключено в скобки, то вычисления производятся, начиная с внутренних скобок. Внутри скобок действия выполняются с лева на право в соответствии с приоритетом операций:Сначала вычисляются значения функций,Затем - выполняются все операции возведения в степень,Затем - умножения и деления,И наконец, сложения и вычитания.Если математическое выражение содержит несколько операций одинакового старшинства, то такие операции выполняются последовательно слева на право.Два знак арифметических операций нельзя ставить рядом, а также нельзя опускать знак умножения между сомножителями.Выполнение арифметических операций над арифметическими выражениями одного тепа дает результат того же типа. Операция над целой и вещественной величиной дает вещественный результат.Возведение в целую степень выполняется многократным умножением или с помощью операции ^ возведения в степень.Вычисление результата возведения в степень осуществляется с помощью функций EXP и LOG, если показатель степени - действительное число: xy = EXP(Y*LOG(X))Так как логарифмы отрицательных чисел не существуют, то нельзя возводить отрицательные числа в действительную степень.Примеры записей арифметических выражений:^ Математическая запись Запись на языке БЕЙСИК SIN(2*X)*EXP(3)/(2*SQR(A))p+ln3z2 P+(LOG(Z^2))^3 EXP(1/N*LOG(C))+LOG(X)/LOG(10)sin xn+cos2x SIN(X^N)+COS(X)^2e2n+log3 a EXP(2*N)+LOG(A)/LOG(3)ТАБЛИЦА 1 Обозначение функции на языке Бейсик Название Пояснение ABS(X) Функция абсолютная величина |x| (модуль) Функция вычисляет абсолютное значение (модуль) аргумента X SQR(X) Функция квадратный корень (х) Функция вычисляет квадратный корень положительного аргумента X LOG(X) Функция натуральный логарифм ln x Функция вычисляет натуральный логарифм положительного аргумента X EXP(X) Экспоненциальная функция ех Вычисляет ex, где e=2,71828, X-любое число COS(X) Функция косинуса cos x Вычисляет косинус аргумента X SIN(X) Функция синуса sin x Вычисляет синус аргумента X TAN(X) Функция тангенса tg x Вычисляет тангенс аргумента X, находящегося в диапазоне от до ATN(X) Функция арктангенса arctg x Вычисляет арктангенс аргумента X INT(X) Целочисленная функция Определяет наибольшее целое число, не превосходящее X RND(X) Функция случайных чисел Выдает случайное число, лежащее в интервале от 0 до 1. Значение аргумента X игнорируется Вопросы для самоконтроля.Какие стандартные математические функции имеются в языке Бейсик?Какие значения могут принимать аргументы функций SQR, LOG, TAN?Дать определение арифметического выражения.Перечислить правила записи арифметических выражений в БейсикеКак выполнить перевод из градусной меры в радианную?Как перейти от логарифма с любым основанием к натуральному логарифму?Перечислить символы арифметических операций.Как выполнить возведение в целую степень?Как выполнить вычисление результата возведения в степень осуществляется, если показатель степени - действительное число?Какие стандартные математические функции имеются в языке Бейсик?Какие значения могут принимать аргументы функций SQR, LOG, TAN?Дать определение арифметического выражения.Перечислить правила записи арифметических выражений в БейсикеКак выполнить перевод из градусной меры в радианную?Как перейти от логарифма с любым основанием к натуральному логарифму?Перечислить символы арифметических операций.Как выполнить возведение в целую степень?Как выполнить вычисление результата возведения в степень осуществляется, если показатель степени - действительное число?Упражнения для самостоятельной работы.Задание. Запишите арифметические выражения на языке Бейсик.Лекция на тему:^ “Основы программирования на языке Бейсик” В результате изучения лекции студент должен знать: Понятие оператора; Оператор присваивания в Бейсике; Операторы задания значений переменным в Бейсике; Оператор вывода в Бейсике; Оператор ввода в Бейсике; Оператор комментариев в Бейсике; Оператор очищения экрана; Оператор конца текста программы; Оператор безусловного перехода; Оператор условного перехода в полной форме; Оператор условного перехода в неполной форме. уметь: Приводить примеры использования операторов языка программирования Бейсик; Использовать операторы языка программирования Бейсик при составлении простейших программ.Оператор – это предписание ЭВМ, написанное на языке БЕЙСИК. Операторы можно разделить на две группы:Выполняемые операторы – определяют действие программы, указывая Бейсик-системе, какую операцию нужно выполнить (PRINT – печатать, INPUT - ввести);Невыполняемые операторы – описывают характер и упорядочение данных, позволяют вводить в программу примечания и сообщения описательного характера (DATA, REM).^ ОПЕРАТОР ПРИСВАИВАНИЯ В процессе вычислений на компьютере переменная величина может принимать различные числовые значения. В частности ей может быть присвоено значение вычисленного арифметического выражения с помощью специальной операции присваивания, которая на языке Бейсик обозначается знаком «=». Наименование переменной записывается слева, арифметическое выражение – справа от знака равенства. Для выполнения этой операции используется оператор присваивания, который имеет общую формуLET =, где LET – имя оператора (можно перевести как пусть). Оператор присваивания выполняется в два этапа:вычисляется значение арифметического выражения;вычисленное значение, присваивается переменной, т.е. засылается в ячейку памяти, отведенную для данной переменной. Если после знака равенства записана числовая константа или переменная, то первый этап пропускается. Следовательно, к моменту выполнения оператора LET значения всех переменных должны быть определены. Примеры операторов присваивания.10 LET A=1120 LET B=A30 LET Y1=B-ABS(2*A-52.6) Следует обратить внимание на существенную разницу между знаком присваивания “=” в языке Бейсик и обычным знаком равенства. Например, в обычной математической записи выражение Х=Х+1 является неверным. А в языке Бейсик запись10 LET X=X+1 справедлива и означает, чтоберется значение переменной из ячейки памяти с именем Х;это значение складывается с единицей и получается новое значение Хрезультат Х+1 помещается в ячейку памяти с именем Х, стирая находившееся там прежнее значение.^ ОПЕРАТОРЫ ЗАДАНИЯ ЗНАЧЕНИЙ ПЕРЕМЕНЫМ Задания значений переменным можно осуществлять с помощью группы операторов DATA, READ, RESTOR. Оператор создания блока данных Числовая информация, необходимая для создания блока данных задается с помощью оператора DATA , который имеет вид DATA,,…, Например,^ 30 DATA 2, -5.36, 0.3e-5 По этому оператору перед началом счета будет сформирован блок данных, состоящих из трех чисел: 2 – первое, -5.36 – второе, 0.3Е-5 – третье. Оператор DATA принадлежит к группе невыполняемых операторов и может быть записан в любом месте программы. Его нельзя включать в строку с другими операторами, он должен быть единственным оператором на нумерованной строке. Оператор выборки значений из блока данных Оператор DATA формирует данные, которые могут быть считаны с помощью оператора READ . READ – оператор выборки значений из блока данных. Этот оператор имеет вид READ , ,…, С помощью этого оператора на этапе выполнения программы числовая информация извлекается из блока данных и присваивается переменным. Например, имеется фрагмент программы:10 DATA 1.2, -3, 51,100 …40 read X, Y, Z …90 READ A В результате выполнения строки 40 переменной Х будет присвоено значение 1,2, переменной Y – значение –3, а Z – значение 51. При выполнении строки 90 переменной А будет присвоено значение 100.^ Оператор восстановления блока данных. Оператор RESTOR (восстановить) служит для восстановления блока данных в исходное состоянияе, когда из блока данных уже выбраны все значения. Он позволяет повторно использовать константы оператора значения. Он позволяет повторно использовать константы оператора DATA.^ ОПЕРАТОР ВВОДА. Оператор ввода данных INPUT позволяет пользователю вводить данные с клавиатуры в процессе выполнения программы. При выполнении оператора INPUT программа делает запрос на ввод данных с терминала. Общая форма оператораINPUT , , …,10 INPUT A, B, СВыполняя оператор INPUT, машина выводит знак вопроса на экран дисплея и ждет ввода значений для каждой переменой в списке этого оператора. Пользователь должен, в данном случае, набрать три числа, разделяя их запятыми, и нажать клавишу ENTER, т.е. ввести их в ЭВМ. Например,? 32, -5.1, 79После этого переменные примут следующие значения: А=32, В=-5,1, С=79.Так как в программе может быть несколько операторов INPUT, то следует использовать текст, поясняющий, какие именно данные следует вводить. Например,^ 10 INPUT «Введите три числа А, В, С»; А, В, СПри этом на экран выводится сообщениеВведите три числа А, В, С?и машина переходит в режим ожидания ввода значений.^ ОПЕРАТОР ВЫВОДА.Оператор вывода PRINT осуществляет вывод на экран результатов вычислений и пояснительных текстов. Общая форма оператораPRINT Значения выводимые на экран, зависят от элементов выводного списка:если в качестве элемента указана константа, то при выполнении оператора PRINT она будет напечатана на терминале;если в качестве элемента указана переменная, то при выполнении оператора PRINT на терминале будет напечатано ее значение;если в качестве элемента указано арифметическое выражение, то на терминале будет напечатан его результат;если в качестве элемента указан текст в кавычках, то при выполнении оператора PRINT он будет напечатан на терминале без кавычек.Например:10 PRINT 3.1420 PRINT K30 PRINT 10^2-17.340 PRINT “Ответ значение предела равно”^ ОПЕРАТОР КОММЕНТАРИЕВ Оператор комментариев REM применяется для ввода комментариев в программу и, в частности, для указания наименования программы. Комментарии могут быть составлены из любых допустимых символов языка Бейсик, включая буквы русского алфавита. Общая форма оператора^ REM текст Например:10 REM Программа вычисления пределаОператоры REM целесообразно использовать для облегчения чтения и понимания текста программы. Они относятся к группе невыполняемых и поэтому не влияют на ее выполнение.^ ОПЕРАТОР ОЧИЩЕНИЯ ЭКРАНА.Оператор CLS используется для очищения экрана. В результате его выполнения вся информация с экрана удаляется, экран окрашивается в фоновый цвет, а курсор возвращается в левый верхний угол экрана.Например,10 CLS^ ОПЕРАТОР ЗАВЕРШЕНИЯ ВЫПОЛНЕНИЯ ПРОГРАММЫ Оператор END используется для завершения выполнения программы. Он является последним в тексте программы.Например,60 END Решим, например, следующую задачу.Задача. Составить программу нахождения значения выражения (х-А)2+(y-B)2Решение.10 CLS20 PRINT «Ф. И. О., группа»30 REM Найти значение выражения40 INPUT «Введи X, Y, A, B»; Х, Y, А, В50 С=(X-A)^2+(Y-B)^260 PRINT «Ответ:»;С70 END^ ОПЕРАТОРЫ ПЕРЕДАЧИ УПРАВЛЕНИЯ.Обычно операторы программы выполняются в порядке возрастания их номеров строк. Однако большинство задач редко укладывается в такую линейнyю схему. Часто в задачах встречаются условия, от выполнения которых зависит последующий ход вычислений. Чтобы изменить естественный порядок выполнения операторов программы, используют операторы передачи управления. К ним относятся операторы условного и безусловного перехода.^ ОПЕРАТОР БЕЗУСЛОВНОГО ПЕРЕХОДА.Оператор безусловного перехода GOTO используют для указания того оператора программы, с которого следует продолжать вычисление на данном этапе. Общая форма оператора.GOTO где GOTO – имя оператора (идти к) Например,70 GOTO 9080 PRINT “Ответ: точка принадлежит линии”90 ENDВ результате выполнения строки 70 программа передаст управление строке 90, игнорируя строку 80.^ ОПЕРАТОР УСЛОВНОГО ПЕРЕХОДА.Часто при составлении алгоритма решения задачи приходится проводить анализ выполнения тех или иных условий. Как правило, для выполнения таких условий дальнейший ход решения задачи. Для изменения естественного порядка выполнения программы при выполнении некоторого условия используется оператор условного перехода IF. Общая форма оператора в полной форме:IF THEN ELSEгде условие – логическое выражение (т.е. выражение, которое принимает одно из двух значений, либо “да”, либо “нет”);оператор 1 – оператор (или номер строки), который выполняется в том случае, если условие верно;оператор 2 – оператор (или номер строки), который выполняется в том случае, если условие неверно.Например,50 IF X2*Y+7=0 THEN PRINT “Ответ: точка принадлежит линии” ELSE PRINT “Ответ: точка не принадлежит линии”Оператор IF в полной форме должен быть записан на компьютере на одной строке.^ Общая форма условного оператора в неполной форме:IF THENЕсли условие верно, то после оператора IF управление будет передано на строку (или оператор), указанную после THEN. Если неверно, тогда сохраняется естественный порядок выполнения операторов (т.е. выполняется оператор, записанный в строке, следующей по порядку за строкой с оператором IF).Например,50 IF X2*Y+7=0 THEN GOTO 8060 PRINT “Ответ: точка не принадлежит линии”70 GOTO 9080 PRINT “Ответ: точка принадлежит линии” 90 ENDОператор IF при составлении программы записывается в начале не полностью, т.е. без указания номера строки. Этот номер дописывается позже, когда нужный участок программы будет составлен.Вопросы для самоконтроля.Что такое оператор?Общий вид и функции оператора присваивания.Что такое блок данных?Как выполняется оператор READ?С помощью какого оператора восстанавливается блок данных?Общий вид и функции оператора ввода.Общий вид и функции оператора вывода.Приведите примеры использования оператора PRINT, в каждом из перечисленных ниже случаев: А) в качестве выводного списка указана константа; Б) в качестве выводного списка указана переменная; В) в качестве выводного списка указано арифметическое выражение; Г) в качестве выводного списка указан текст.Какие операторы относятся к операторам передачи управления?Охарактеризовать оператор безусловного перехода.Дать характеристику оператора условного перехода в полной и неполной формах.Привести примеры условий.Какова последовательность составления программы, в которой присутствует оператор IF?^ Лекция на тему:Формирование графических изображений.Подготовка дисплея для работы в режиме графики. Оператор SCREEN переключает режимы работы дисплея, в частности включает графический режим. Общая форма оператораSCREEN Где SCREEN – имя оператора; десятичная цифра, определяющая режим работы дисплея. Если равен 0, то будет установлен алфавитно-цифровой режим, если равен 1,2,8,9 и др., то графический. Например. В строке с номером 10 задан оператор установки графического режима 9 (размер экрана 640х350, левый верхний угол имеет координаты (0, 0), а правый нижний (640, 350)).10 SCREEN 9^ Оператор COLOR задает необходимый цвет изображения. Общая форма оператора COLOR [][,] Например. COLOR 14, 0Стандартное распределение цветов в режимах SCREEN 0, 7, 8, 9, 12, 13 ^ Атрибут цвета Цвет Атрибут цвета Цвет 0 Черный 8 Серый 1 Синий 9 Светло-синий 2 Зеленый 10 Светло-зеленый 3 Голубой 11 Светло-голубой 4 Красный 12 Светло-красный 5 Пурпурный 13 Светло-пурпурный 6 Коричневый 14 Желтый 7 Белый 15 Ярко-белый Построение прямых линий и прямоугольников. Одним из операторов машинной графики является оператор LINE. Общая форма записи оператора:LINE (x1, y1) – (x2, y2)[, ][, ]Где LINE – имя оператора (линия); x1, y1 - координаты начала отрезка; x2, y2 - координаты конца отрезка; - десятичное число, указывающее номер цвета, которым вычерчивается объект. Если не задан, то объект вычерчивается цветом, указанным в операторе COLOR. Если координаты начальной точки (x1, y1) отсутствуют, то за начальную точку принимается точка окончания построения предыдущего оператора LINE, либо точка с координатами (0, 0), если предыдущих построений не было; - параметр, указывающий вид фигуры, изображенной на экране. Этот параметр может иметь значения: B – изображается прямоугольник, BF – закрашенный прямоугольник. Параметры (x1, y1) и (x2, y2) задают отрезок прямой, который теперь рассматривается как диагональ изображаемого прямоугольника. Например. 20 LINE (0, 0) – (640, 50)^ 30 LINE (10, 10) – (40, 50),4 40 LINE (60, 60) – (90, 190),14,В 50 LINE (120, 60) – (150, 190),10,ВF Построение окружностей. Для построения окружностей используется оператор ^ CIRCLE. Общая форма оператора:CIRCLE (x, y), [, [][,[],[][,]]]Где CIRCLE – имя оператора (окружность); x, y - координаты центра эллипса (окружности); - больший радиус эллипса (радиус окружности); - десятичное число, указывающее номер цвета, которым вычерчивается окружность; и задают в радианной мере углы, соответствующие начальной и конечной точкам дуги эллипса, которая будет вычерчена (углы отсчитываются от горизонтальной оси против часовой стрелки; дуга рисуется от точки, соответствующей первому указанному углу до точки, соответствующей второму углу.), в случае отсутствия этих параметров в записи оператора строится полный эллипс; - числовое выражение, значение которого задает отношение вертикальной оси эллипса к его горизонтальной оси, причем оси измеряются в точках экрана (по умолчанию эта величина выбирается так, чтобы рисовалась окружность, т. е. 0,83)^ Например. 60 CIRCLE (300, 100),40 70 CIRCLE (390, 100),40,980 CIRCLE (300, 200),30,,,,0.290 CIRCLE (390, 200),30,14,,,0.7100 CIRCLE (300, 300),30,,,,0.9 110 CIRCLE (390, 300),30,3,,,5120 CIRCLE (500, 100),30,,0,3.14,0.83130 CIRCLE (500, 200),30,2,4.71,6.28,3140 CIRCLE (500, 300),30,5,4.71,1.57,0.5Построение изображений по точкам. В языке Бейсик можно построить на экране отдельно взятую точку. Для этого служит оператор PSET. Общая форма оператора:PSET (x, y), Где PSET – имя оператора (установка точки), x, y - координаты точки; - десятичное число, указывающее номер цвета точки на экране. Оператор строит на экране точку с указанными координатами. Закраска области экрана выполняется оператором PAINT. Общая форма оператора:PAINT(x, y)[, ]Где PAINT – имя оператора, x, y - координаты внутренней точки замкнутой области, которую надо закрасить; - десятичное число, указывающее номер цвета закраски. Например. 150 PSET (300, 100), 4160 PSET (290, 100)170 PSET (310, 100)180 PAINT (390, 100), 9Оператор цикла с параметромПрограммы, содержащие циклы, могут быть организованы с помощью операторов передачи управления. Однако циклы являются настолько важной и распространенной конструкцией в программировании, что для их организации практически во всех языках программирования предусмотрены специальные операторы. Операторы FOR и NEXT используют для упрощения процедуры составления циклов и четкого выделения циклов в программе на языке БЕЙСИК. Оператор FOR называют оператором заголовка цикла (или просто заголовком цикла). Он всегда предшествует повторяющейся группе операторов, составляющих так называемое тело цикла. Общая форма заголовка цикла имеет вид: FOR v = el TO e2 STEP еЗ где FOR — имя оператора (для); v — параметр цикла; е1— начальное значение параметра цикла; е2 — конечное значения параметра цикла; ТО — служебное слово (до); STEP — служебное слово (шаг); еЗ — приращение, т. е. шаг изменения параметра цикла. В случае, если v — параметр цикла целого типа и шаг изменения еЗ = 1, оператор FOR допускает более компактную форму записи без указания приращения: FOR v = e1 TO e2 За оператором FOR следуют операторы, составляющие тело цикла. Заканчивается цикл оператором NEXT. Общая форма оператора NEXT v где NEXT — имя оператора (следующий); v — параметр цикла. Имя переменной, указанной в качестве параметра цикла в операторе NEXT, должно совпадать с именем переменной, указанной в качестве параметра цикла в заголовке цикла FOR. При выполнении оператора NEXT изменяется значение параметра цикла (v := v + e3) и производится возврат на начало цикла. Операторы FOR и NEXT используются только в паре: FOR определяет начало цикла, a NEXT указывает конец тела цикла. Цикл выполняется следующим образом. По оператору FOR сначала вычисляются характеристики (начальное v конечное значения, приращение (шаг)) и начальное значение присваивается параметру цикла. Затем производится проверка: не превышает ли начальное значение параметра цикла конечного значения. Если значение параметра цикла больше конечного значения по абсолютной величине, то производится выход из цикла, т. е. переход на оператор следующий за оператором NEXT. Если значение параметра цикла меньше конечного значения, то далее выполняются операторы, составляющие тело цикла. По достижении оператора NEXT v происходит вычисление нового значения параметра цикла (v := v + e3) и переход на оператор FOR. Это значение снова сравнивается со значением е2. Цикл повторяется до тех пор, пока значение параметра цикла не станет строго больше v>e2 (при положительном приращении еЗ) или строго меньше (при отрицательном приращении еЗ) конечного значения е2. Следует иметь в виду, что начальное и конечное значения параметра цикла, а также шаг изменения пара метра вычисляются и присваиваются только один раз при входе в цикл. ^ Сложные (вложенные) циклы Все рассмотренные выше примеры циклических программ содержали, так называемые простые циклы. Сложным называют цикл, содержащий несколько вложенных один в другой простых циклов. В сложном цикле различают внешний и внутренние циклы. Глубиной сложного цикла называется количество вложенных друг в друга циклов. Сложные циклы можно организовать с помощью операторов FOR и NEXT. Максимальное количество вложенных циклов в зависимости от системы, составляет 8—20. Структуру сложного цикла глубиной 3 можно представить в виде схемы, представленной на рисунке. 10 FOR V1=… 170 NEXT V1 На этой схеме тело цикла с параметром VI содержит два вложенных один в другой цикла; тело цикла с параметром V2 включает в себя цикл с параметром V3. При каждом повторении внешнего цикла внутренний цикл выполняется полностью, т. е. заданное число раз.^ Определение массива Многие задачи, которые решаются с помощью ЭВМ, связаны с обработкой больших объемов информации, представляющей совокупность данных, объединенных единым математическим содержанием или связанных между собой по смыслу. Примером таких организованных совокупностей данных являются координаты, задающие положение точки в пространстве, матрица коэффициентов, определяющая систему линейных уравнений, значения некоторой функции в произвольных точках, коэффициенты многочлена и т. д. Такие данные удобно представлять в виде линейных или прямоугольных таблиц. В линейной таблице каждому ее элементу соответствует порядковый номер. Для элемента прямоугольной таблицы должны быть указаны два номера: номер по вертикали (номер строки) и номер по горизонтали (номер столбца). В высшей математике табличные величины называют соответственно векторами и матрицами. В программе для представления таких данных используются массивы.Массив — это упорядоченная совокупность однотипных данных, с каждым из которых связан упорядоченный набор целых чисел, называемых индексами. Массив характеризуется именем, типом и размером. Имя массива образуется по общему правилу образования имен, т. е. представляет собой идентификатор, например A, Bl C8 и т. д. Однако оно не должно совпадать с именем ни одной простой переменной, используемой в той же программе.^ Переменная с индексами Работа с массивом сводится к действиям над его элементами. Для того чтобы указать, какой элемент в данный момент используется, достаточно задать его порядковый номер, который приписывается к имени соответствующего массива. Таким образом, элементы массива обозначаются переменной с индексами. Запись переменной с индексами состоит из имени массива и следующего за ним в круглых скобках списка индексов, например А(1), A(I), B1(K),C8(I, J),C8(2, 1) В качестве индексов можно использовать константы, переменные, а также арифметические выражения, называемые индексными выражениями, например А1(К+5), Q3(3*A+B, С(I)-2). Если в качестве индекса используется выражение, то перед обращением к элементу массива (его записью в программе) осуществляется вычисление индексного выражения и выделение целой части. Естественно, что все переменные, входящие в выражение, а также переменные, используемые в качестве индексов, должны быть заданы до обращения. Например, запись T(2*Y-3.2, Z+1.7) при у =1,8 и 2 = 0,9 соответствует элементу Т(0,2). Индексы определяют положение элемента в массиве. Число индексов определяет размерность массива, т. е. форму его компоновки: одномерный, двумерный и т. д. Одномерный массив соответствует линейной таблице. Его элемент обозначается переменной с одним индексом: А(1), А(1) - соответственно первый и 2-й элементы одномерного массива А; , В1(К) —k-й элемент одномерного массива В1. Двумерный массив описывает в программе прямоугольную таблицу. Его элементы обозначаются переменной с двумя индексами: C8(I, J), С8(2, 1), где первый индекс обозначает номер строки, а второй — номер столбца. В языке Бейсик допускается работа с одномерными и двумерными массивами. Таким образом, для обращения к конкретному элементу массива необходимо указать имя массива и значения индексов. Напомним, что если в качестве индексов используются переменные или выражения, то значения всех указанных переменных должны быть определены до обращения.^ Описание массива Для записи элементов массива в память ЭВМ нужно выделить для их хранения необходимое количество (массив) ячеек памяти, которое определяется размером массива. Размеры массива задаются границами изменения индексов по каждому измерению. Минимальное значение индексов равно нулю. С учетом этого количество элементов в одномерном массиве будет равно значению верхней границы индекса плюс единица, а двумерного — произведению увеличенных на единицу значений верхних границ индексов. В программе для каждого массива должны быть указаны его параметры: имя, размерность и размеры. Эта информация нужна для резервирования необходимого объема памяти для хранения числовых значений; она задается специальным оператором описания массивов DIM (сокращение от DIMENSION — размерность). Оператор DIM в общем случае имеет следующий вид: DIM V1(i1[,j1]), V2(i2[,j2]),..., Vk(ik[,jk]) где n — номер строки; DIM—имя оператора; V1, V2, ..., Vk — имена массивов; i1, j1, i2, j2, … ik, jk —