Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

"ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ QBASIC"

Содержание:

Введение.

Первая персональная ЭВМ или первый персональный компьютер был разработан Стивом Джобсом и Стивом Возняком в 1979 году. Авторы работали в фирме Atari, выпускавшей игровые автоматы. В свободное время они собирали в гараже устройство, которое потом и стало первой персональной ЭВМ. Результат превзошел все ожидания, было сделано еще несколько экземпляров для друзей и знакомых. После чего компьютер был запущен в серию и стал называться Apple II. Машина воспринимала последовательности нулей и единиц -команды. Так первый способ программирования -"в кодах", представлял собой составление на бумаге списка команд для ЭВМ, после чего они вручную помещались на носитель. Процесс был трудоемким. Вскоре была написана программа-переводчик, переводящая наименования команд в соответствующие коды. Появился первый язык программирования- Ассемблер, который мало отличался от машинного языка. В этом случае, команды микропроцессора по договоренности назывались определенными словами. К примеру, команда вызова подпрограммы - CALL (вызов) и др. Затем была создана программа-компановщик LINK, связывающая все части вводимой программы в единый монолитный блок и привязывающая ее к определенному начальному адресу. После обработки компановщиком осуществлялся окончательный перевод и можно было ввести результат в машину при помощи резидентной подпрограммы - загрузчика. Загрузчик находил на диске файл с именем введенной команды и с расширением COM и начинал работать, загружая содержимое файла в первую ячейку памяти, настраивая таким образом счетчик команд микропроцессора на эту ячейку. Начиналось выполнение введенной программы. В результате появилась возможность писать программы на примитивном "человеческом" языке. На Ассемблере программы получались громоздкими, поэтому затем была создана программа - переводчик более высокого уровня, которая сама переводила сложные математические формулы в набор ассемблеровских команд. В результате появились языки высокого уровня. Одним из первых был Фортран (от англ.-FORmulaTRANslator-переводчик формул ). Язык оказался удачным в применении к научным расчетам. Таким образом, чтобы пользоваться языком высокого уровня необходимо иметь как минимум транслятор и компановщик. Загрузчик всегда есть в операционной системе. Чтобы программы-переводчики и компановщик правильно обрабатывали вводимую программу, необходимо строго соблюдать грамматику того или иного языка. Конечным продуктом обработки программы, написанной на языке высокого уровня является файл, содержащий только коды команд процессора. Если в запускаемой программе ничего не меняется, то процесс ее запуска предельно прост. Но если необходимо, что-то изменить в программе, весь процесс перевода придется повторить заново, и это довольно продолжительная по времени процедура. Такие трансляторы называются компиляторами, к ним принадлежат, например, языки Паскаль, Си, Турбо Бейсик. В результате возникла идея: переводить в машинные коды не всю программу, а только ту строку, с которой машина в настоящий момент работает. Чтобы процесс отладки программы стал очень быстрым, объединили переводчика с программой редактора, это позволило изменять текст любой строки и присвоить определенной кнопке на клавиатуре функцию остановки программы в любой момент - кнопка BREAK или СТОП. В этом случае, при обнаружении ошибки переводчик сообщает, что в строке с таким-то номером обнаружена такая-то ошибка. Выполнение программы прерывается и переходит в режим редактирования. Кнопкой СТОП можно оперативно вмешиваться в процесс выполнения программы и изменять что угодно в любой строке. Такие языки назвали интерпретируемыми, а программа -переводчик- интерпретатором. Интерпретируемые языки хороши для начинающих. К таким языкам относится и Бейсик. В случае программ, написанных на компилируемых языках типа Фортран, отлаженная программа компилируется раз и навсегда, т.е. не производится при каждом запуске. Для интерпретируемых языков процесс перевода повторяется каждый раз, когда запускается программа, поэтому выполняются значительно медленнее. И как следствие, в целях экономии времени, затрачиваемого на перевод, интерпретируемые языки сильно упрощены.

История создания языка Бейсик началась в 1963 году. Преподаватели Дартмутского Колледжа Джон Кемени и Томас Куртиц в качестве учебного языка придумали алгоритмический язык Basic (Бейсик). Новый язык был очень прост в изучении. Под их руководством группа студентов разработала этот проект. В последствии, с течением времени, начали появляться многочисленные диалекты этого языка, «изначальный» же диалект назвали Dartmouth BASIC. Таким образом, Бейсик изначально задумывался, как язык для пользователей, которые не столько были заинтересованы в скорости программ, сколько в возможности использовать компьютер для решения собственных задач. BASIC - это аббревиатура, которая расшифровывается так: Beginner’s All-purpose Symbolic Instruction Code - универсальный код символических инструкций для начинающих). Создатели языка руководствовались следующими принципами. Язык должен быть простым в использовании для начинающих; быть языком программирования нового назначения; предоставлять возможность расширения функциональности, доступную опытным программистам; быть интерактивным; предоставлять ясные сообщения об ошибках; быстро работать на небольших программах; не требовать понимания работы аппаратного обеспечения; защищать пользователя от операционной системы. Основанием для нового языка послужили частично Фортран II и частично Алгол-60. Были произведены некоторые добавления, делающие язык удобным для работы в режиме разделения времени и, позднее, обработки текста и матричной арифметики. Сначала Бейсик был реализован на мейнфрейме GE-265 с поддержкой множества терминалов. Язык уже использовался на нескольких миникомпьютерах, но его настоящее распространение началось с его появления на микрокомпьютере Altair 8800. Многие языки программирования были слишком большими по меркам тех времен, поэтому рядовые пользователи не могли их использовать. Для машин с таким медленным носителем, как бумажная лента (позднее – аудиокассета) и без подходящего текстового редактора Бейсик стал настоящим решением проблемы. В 1975 году Майкрософт (в то время это были лишь двое – Билл Гейтс и Пол Ален) при участии Монте Давидова выпустила Altair BASIC. Потом его версии появились на другой платформе под лицензией. Через небольшой промежуток времени появились 6 миллионов копий и вариантов языка, один из них, Applesoft BASIC, стал стандартным языком на Apple II. Для операционной системы CP/M был создан собственный диалект BASIC-80, который надолго вперед определил развитие языка. В 1979 году Майкрософт обсуждала с поставщиками компьютеров лицензию интерпретатора Бейсик на их компьютерах. ROM BASIC был включен в ПЗУ IBM PC – этот компьютер мог автоматически загружаться в Бейсик. В то время IBM не придавала большого значения персональным компьютерам (основным полем ее деятельности были мейнфреймы), поэтому она разрешила Майкрософт продавать интерпретатор отдельно. Это сделало Майкрософт пионером в среде ПО нового поколения – не привязанного к конкретной аппаратуре и поставляемого отдельно от компьютера.

Наиболее бурно и успешно Бэйсик развивался в течение 1970-х и в начале 1980-х годов. В это время почти все персональные компьютеры имели собственный интерпретатор Бейсика, часто зашиваемый прямо в ПЗУ. В простейших компьютерах он даже выполнял функции операционной системы. Практически все более мощные компьютеры также имели интерактивные Бейсик-системы. Было создано несколько новых версий Бейсика для платформы IBM PC и совместимых с ними. Microsoft продавала Бейсик для MS-DOS/PC DOS, включая BASICA, GW-BASIC (модификация BASICA, не требующая «прошивки» от IBM) и QuickBASIC. Компания Borland, получившая широкую известность благодаря Turbo Pascal (с которым она и вышла впервые на рынок) в 1985 году выпустила основанную на той же программной среде систему Turbo Basic 1.0 (его наследники впоследствии продавались другой компанией под именем PowerBASIC). К концу 1980-х годов персональные компьютеры стали намного мощнее и предоставляли новые возможности (такие, как графический интерфейс пользователя).

Ранние версии Бейсика (такие как BASICA, GW-BASIC) сильно отличались от современных диалектов и сегодня практически не используются. Причём отличались настолько сильно, что начинающий программист не каждую программу на старом Бейсике сможет перевести на современный Бэйсик. Структура программы на ранних версиях Бейсика во многом формировалась с учётом того, что он предназначался для среды программирования со строчным редактором текста. В таком редакторе пользователь не имел возможности отображать весь текст на экране (в окне), не мог перемещаться по нему в любых направлениях с помощью клавиатуры и/или мыши. В строчных редакторах пользователь для изменения строки текста должен дать команду изменения строки с заданным номером, затем ввести новый текст указанной строки. «Раздвинуть» строки было невозможно, если требовалось вставить новую строку между строками с соседними номерами, приходилось повторно вводить эти строки с другими номерами, чтобы обеспечить разрыв в нумерации (либо применять специальную команду RENUM, которая изменяла номера всех уже введённых строк с постоянным шагом). Понятно, что при создании более-менее сложной программы практически невозможно предугадать, сколько в ней будет строк и в каком порядке они будут следовать. Поэтому для обеспечения последующего редактирования программы стало принято нумеровать строки с шагом 10 (а иногда и больше). Это позволяло в большинстве случаев без проблем вставлять новые строки без изменения номеров строк, которые были введены ранее. Признаком конца оператора служит конец строки. Чтобы на одной строке разместить несколько операторов, нужно поставить между ними двоеточие (это разрешалось не во всех реализациях языка). В версиях Бейсика для ЭВМ, не имеющих операционных систем, строки должны быть пронумерованы. Один из наиболее известных интерпретаторов языка Бэйсик - это QBasic от Microsoft. QBasic на IBM PC программы могут записываться в обоих формах - с нумерацией и без нумерации строк. Много лет он бесплатно поставлялся вместе с операционными системами MS-DOS и Windows. QBasic имел неплохие по тем временам графические и звуковые возможности. Поэтому на QBasic создавались даже игры. В настоящее время эта версия не потеряла своей актуальности и используется в качестве учебного языка для начинающего пользователя, делающего первые шаги в изучении программирования. Изучение програмирования на языке Qbasic не потеряло своей актуальности и в настоящее время. Большое достоинство Бейсика, из-за которого его изучение продолжается в школах и поныне, — это возможность создавать диалоговые программы. Кроме того, пользователь, имеющий опыт работы в QBasic может создавать программы на других современных и продвинутых версиях этого языка, овладев основными понятиями объективно-ориентированного программирования.

Основы программирования на языке QBasic.

Языки программирования - искусственные языки. Они служат как бы посредниками в общении между человеком и компьютером. От естественных они отличаются ограниченным числом "слов", значение которых понятно транслятору, и очень строгими правилами записи команд (операторов). Программа, написанная на любом языке программирования, представляет собой набор инструкций, описывающих процесс выполнения алгоритма задачи. Инструкции записываются по определенным правилам, предусмотренным требованиями языка. Инструкции исходной программы называются командами или операторами.

Алгоритм.

Изначально необходимо продумать ход решения задачи, т. е. разработать алгоритм ее решения. Алгоритмом называется общий единообразный, точно определённый способ решения любой задачи из данной массовой проблемы. Алгоритм формирует жесткую схему работы программы, все операторы, содержащиеся в программе, выполняются в раз и навсегда установленном порядке. Алгоритм может быть описан словесно, графом (обычно это блок-схема) и на языке программирования (это и будет программа). Разработка алгоритма является определяющим этапом в процессе программирования, поскольку задает логическую структуру программы. Программный способ и состоит в записи алгоритма по правилам языка программирования. Эта запись называется исходной программой на данном языке. Как правило, программы пишутся на языках высокого уровня, т.е. на языках программирования, не зависящих от особенностей конкретной ЭВМ и ориентированных на широкий круг пользователей. QBasic относится к таким языкам. Алгоритм любой сложности можно реализовать, используя только три конструкции: следование (оператор за оператором), повторение (цикл), выбор (альтернатива). При разработке программы следует иметь в виду, что в укрупненном виде любой алгоритм, а следовательно, и программа, состоит из трех частей: ввод данных; обработка данных; вывод результата.

Алгоритм линейной структуры, это алгоритм, в котором символы располагаются на схеме в том же порядке, в каком должны быть выполнены предписываемые ими действия (как правило, сверху вниз), действия выполняются только один раз и строго в том порядке, в котором они записаны. Алгоритм разветвляющейся структуры – это такая схема, в которой предусмотрено разветвление требуемой последовательности действий, в котором то или иное действие выполняется после анализа условий. Каждое направление называется ветвью. Количество ветвей в алгоритме разветвляющейся структуры не обязательно равно двум. Алгоритм, в котором предусмотрено неоднократное выполнение одной и той же последовательности действий, т.е. группа операторов выполняется несколько раз подряд, называется алгоритмом циклической структуры или циклом. Цикл позволяет существенно сократить размер записи алгоритма, представить его компактно, путём соответствующей организации предписываемых действий. Повторять какие-либо действия имеет смысл при различных значениях параметров (параметры цикла), изменяемых при каждом новом выходе на повторение.

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

Алгоритмический язык отличается от машинного языка тем, что состоит из слов и символов, как естественный язык. Алгоритмический язык отличается от естественного языка тем, что в нем мало основных слов (обычно 30-40) и очень строгие правила составления предложений.

Язык программирования Qbasic (как и любой другой язык) образуют три его составляющие: алфавит, синтаксис и семантика. Алфавит – это фиксированный для данного языка набор основных символов, т. е. «букв», из которых должен состоять любой текст на этом языке – никакие другие символы в тексте не допускаются. Синтаксис – это правила построения фраз, позволяющие определить, правильно или неправильно написана та или иная фраза. Семантика определяет смысловое значение предложений языка. Основными понятиями в языках программирования обычно являются алфавит языка, константы, переменные, встроенные функции, логические и арифметические выражения.

Алфавит языка QBasic состоит из букв, цифр, шестнадцатеричных цифр, специальных символов и ключевых слов. Все компоненты языка формируются из множества символов стандарта ASCII. Буквы – это буквы латинского алфавита от a до z и от A до Z. В QBasic нет различия между прописными и строчными буквами, если они не входят в символьные выражения. Буквы русского алфавита можно использовать только в комментариях и символьных строках. Цифры – это арабские цифры от 0 до 9. Шестнадцатеричные цифры имеют значения 0, ..., 9, A, .., F. Специальные символы в QBasic – это: символ пробела, +, -, *, /, \, =, ,, ', ., :, ;, <, >, (, ), ^, ?, _, @, $, # и т.д. К специальным относятся также следующие пары символов: <>, <=, >=. Ключевые слова представляют собой служебные слова (например, DIM, END, IF и т.д.). Их можно использовать только по своему назначению и нельзя переопределять. Знаки операций предназначены для обозначения различных действий. Они могут обозначаться либо небуквенными символами (+, * и т.д.), либо ключевыми словами (NOT, MOD и т.д.). Знаки арифметических операций: + (сложение), – (вычитание), * (умножение), / (деление), \ (деление нацело), MOD (остаток от деления нацело), ^ (возведение в степень). Знаки отношений: > (больше), < (меньше), >= (больше или равно), <= (меньше или равно), = (равно), <> (не равно). Знаки логических операций: NOT (отрицание), OR (логическое сложение (ИЛИ)), AND (логическое умножение (И)), XOR (исключающее ИЛИ), EQV (эквивалентность), IMP (импликация).

Константы – данные, значение которых не меняется во время работы программы. Пример: DIM a,b и т.д. В Qbasic используются числовые и текстовые константы. Числовые константы записываются в программе в виде конкретного числа и бывают двух типов: целые и вещественные. Целые константы – это последовательность цифр, перед которой может стоять знак + или – . Например: –218, +11, 11. Вещественные константы – это числа, имеющие целую и дробную части. Бывают две формы записи вещественных констант: основная и экспоненциальная формы записи. В основной форме записи с фиксированной точкой целая часть числа отделяется от дробной части десятичной точкой, например, 3.054, 5.74298. В экспоненциальной форме записи с «плавающей» точкой число записывается в виде: mE±p, где m – мантисса (число в основной форме), Е – основание 10, р – порядок числа (целая константа, содержащая не более двух цифр). Например: 3.5Е-06, -1.8Е+06. Чтобы перейти от экспоненциальной формы к основной, нужно m (мантиссу) умножить на 10 в степени р (порядок). Например: 1.7Е-5 = 1.7·10-5 = 0.000017, -5,3Е+07 = 5.3·107 = 53000000. Строковые константы – это набор любых символов длиной, не превышающей 255 символов. Строковая константа заключается в двойные кавычки. Например: “УЧЕБНИК”, “ALFA_8”,“ Решений нет”.

Переменная. Под переменной в языках программирования понимают программный объект (число, слово, часть слова, несколько слов, символы), имеющий имя и значение, которое может быть получено и изменено программой. Если "заглянуть" в компьютер, то переменную можно определить так: Переменная - это имя физического участка в памяти, в котором в каждый момент времени может быть только одно значение. Переменная - это ячейка в оперативной памяти компьютера для хранения какой-либо информации. Само название "переменная" подразумевает, что содержимое этого участка может изменяться. В качестве имен переменных могут быть латинские буквы с индексами. Причем может быть не одна буква, а несколько. Имя переменной представляется последовательностью не более чем 40 латинских букв и цифр, начинающейся обязательно с буквы и заканчивающейся суффиксом, определяющим тип переменной. Символы типов: % – целый; ! – вещественный; $ – строковый. Переменные бывают не только численными, но им можно присваивать значения строк символов. Такие переменные называются строковыми. С ней нельзя производить стандартные численные операции. Её нельзя спрятать в области памяти, отведенной под численную величину. Переменные , имя которых оканчивается на $, являются строковыми. Например, А1$, ВВ$ и т.д. Под строковые переменные отводится определенный объем памяти. Если строковая величина превышает этот объем, необходимо попросить компьютер увеличить зарезервированную память. Для этого служит специальный оператор CLEAR. Оператор CLEAR говорит компьютеру о необходимости очистить память от всех численных и строковых переменных. Т.е , если набрать к примеру, CLEAR 1000, то будет зарезервировано 1000 байт в памяти. Если символ типа отсутствует, то переменная по умолчанию считается вещественной. Различают простые переменные и переменные с индексом. Простая переменная определяется только именем. Переменная с индексом является элементом массива, и определяется именем и индексами, которые задают местоположение элемента в массиве. Индексы записываются в скобках через запятую после имени переменной. Например: Х(10), А(5,6). Массивом называется упорядоченная последовательность величин одного типа. Массив характеризуется именем, размером и размерностью. Имена массивов образуются по тем же правилам, что и имена простых переменных. Размер массива определяет число элементов в массиве. Размерность массива– это число индексов, определяющих местоположение элементов в массиве. Индексы записываются после имени массива в скобках через запятую. Если размерность массива равна единице, то такой массив называют одномерным, если двум – двумерным. Примером одномерного массива является вектор а(а1, а2, …,аn). На языке Basic данный вектор (одномерный массив) записывается в виде А(1), А(2),…,A(n). Примером двумерного массива может служить матрица , каждый элемент которой имеет два индекса – номер строки и номер столбца. На языке Basic элементы данного двумерного массива записываются в виде А(1,1), А(1,2), …, А(n,m). Для задания значения переменной служит оператор присваивания LET. Он записывается так: LET переменная=значение. Например, LET с=11, переменной с будет присвоено значение 11.

Функции могут быть стандартными, арифметическими и функции, используемые для обработки символьной информации. Стандартными функциями называются изначально существующие подпрограммы-функции, которые можно использовать как готовые объекты. При обращении к функции необходимо указать её идентификатор, а в круглых скобках аргумент или аргументы, если их несколько.

Арифметические функции можно использовать только с величинами целого и действительного типов. Например, функция SQR(x) представлет квадратный корень, функция EXP(x) - е в степени (х), функция RND возвращает случайное число в диапазоне от 0 до 1 и т.д. При программировании часто бывает необходимо вычислить значение функции (например, логарифм числа, корень квадратный и т. п.). Соответственно, для обращения к подпрограмме (вычисления значения функции) необходимо указать имя функции и в круглых скобках аргумент. Например, название функции - синус (математическое обозначение-sin(x) ), запись на языке Бейсик -SIN(X) . Логарифм натуральный ( Ln(x)) - LOG(X) и т.д.

Функции, используемые для обработки символьной информации. Например , STR$(число) -возвращает строковое представление числа, (RIGHT$(a$,n%) - возвращает n символов, стоящих с правого конца строки, LEFT$(a$,n%) - возвращает n символов, стоящих с левого конца строки и т.д.

Выражение – это синтаксическая единица языка программирования, определяющая способ вычисления некоторого значения. Различают выражения арифметические, логические, строковые. Арифметические выражения – это выражения, записанные с помощью констант, переменных, функций, знаков арифметических операций и круглых скобок. Результатом вычисления арифметического выражения является числовая константа. Порядок выполнения операций задается установленным приоритетом: 1) вычисление функции; 2) возведение в степень; 3) деление и умножение; 4) деление нацело и определение остатка (операция по модулю MOD); 5) сложение и вычитание. Операции одного приоритета (умножение и деление; сложение и вычитание) выполняются слева направо в порядке следования. Для задания нужной последовательности выполнения операций используются круглые скобки. В языке Qbasic кроме знакомых из арифметики операций существуют взаимообратные операции деления нацело и нахождение остатка от деления нацело. При записи арифметических выражений необходимо придерживаться следующих правил и ограничений: 1. Все символы выражения записываются в одну сторону. Запрещены многоэтажные выражения и верхние и нижние индексы. 2. Два знака арифметических операций не должны располагаться рядом. Знак умножения опускать нельзя. 3. Операции в арифметическом выражении выполняются в порядке старшинства, т. е.: 1) операции внутри скобок; 2) вычисление встроенных функций; 3) возведение в степень; 4) умножение и деление; 5) целочисленное деление; 6) деление по модулю; 7) сложение и вычитание. Операции равного старшинства выполняются по порядку слева направо. Исключение: А ^B^C = A^(B^C). Логическое выражение служит для установления отношения между двумя числовыми или строковыми значениями. Логические операции выполняются после арифметических. Из них максимальный приоритет имеют все операции отношений, затем логическая операция NOT, остальные логические операции идут по убыванию приоритета следующим образом: AND, OR, XOR, EQV, IMP. Результатом вычисления логического выражения является значение «Истина» или «Ложь». Для записи логического выражения используются операции отношения и логические операции. Операции одного приоритета в выражении выполняются в том порядке, как они записаны, т.е. слева направо. При использовании знака операции, являющегося служебным словом, он должен быть отделён от операндов пробелом. QBasic позволяет сравнивать (больше или меньше) как числа, так и строки. Сравнение последних производится на основе алфавитной упорядоченности символов в строке, начиная с первого символа. Чем ближе символ к концу алфавита, тем он больше. Любое логическое выражение (просто отношение или группа отношений, связанных знаками логических операций) имеет числовое значение. Если логическое выражение ложно, то его значение равно 0, если оно истинно, то его значение равно -1 (не ноль). Строковые выражения – это текст, заключенный в кавычки. Двойные кавычки называют ограничителями. Они служат для определения начала и конца текстового выражения. Строковое выражение состоит из строковых констант, строковых переменных и строковых функций. Результатом вычисления строкового выражения является строка символов. Например: “СПОКОЙНОЙ НОЧИ”, “15 АВГУСТА 1963”, “КЛАССИЧЕСКАЯ МУЗЫКА”. Заметим, что выражения похожи на выражения в большинстве других процедурных языков программирования, но в первых вариантах Бейсика их было довольно мало. В самых ранних вариантах число ключевых слов было менее 20 .

Операторы.

Оператором в языке программирования называют команду, которую может выполнить компьютер. Операторы Бейсика делятся на следующие основные классы:

1. Операторы присваивания. Эти операторы позволяют заносить какую-либо информацию под неким именем в память компьютера. В дальнейшем можно пользоваться этой информацией, обращаясь к ней по имени.

2. Операторы ввода-вывода. Они служат для общения с периферийными устройствами.

3. Операторы, контролирующие порядок выполнения программ. Эти операторы позволяют менять порядок выполнения различных строк программы. Например, вместо того чтобы выполнять сначала строку 10, потом 20, затем 30 и т.д. компьютер, под действием этих операторов может выполнить сначала строку 20, потом 10, затем 30 и т.д.

4.Операторы спецификации. Т.к. числа бывают целые, действительные, комплексные и т.д., поэтому машина должна понимать какой тип числа используется. Для того, чтобы объяснить это машине, используются эти операторы.

5. Графические операторы. Эти операторы позволяют рисовать на экране дисплея различные картинки.

Количество операторов на одной строке программы не ограничено. Ограничено только общее число любых символов т.е. ограничена только длина строки. Одна строка программы может содержать до 255 символов (букв, цифр, пробелов и т.д.). С клавиатуры можно ввести 250 символов. Операторы бывают двух типов: исполняемые и неисполняемые. Исполняемые операторы реализуют действия, предусмотренные алгоритмом решения задачи. Неисполняемые операторы описывают свойства данных, комментируют текст программы. Неисполняемые операторы могут располагаться в любом месте программы до оператора конца. Программа может заканчиваться любым оператором. При явном указании на конец вычислений последним оператором программы должен быть оператор конца.

Оператор присваивания.

Оператор присваивания служит для вычисления выражения и присваивания вычисленного значения идентификатору переменной. Оператор вычисляет значение арифметического выражения и присваивает его переменной, указанной слева. Оператор присваивания кладет в конкретную ячейку памяти выражение с присвоенным ему значением. Для того чтобы оператор присваивания выполнялся правильно, необходимо, чтобы значения всех переменных, входящих в выражение, были определены.

Пример оператора присваивания - выражение А=38 , т.е. число 38 должно быть помещено в некоторую область памяти и имя этой области А. При записи оператора необходимо, чтобы имя переменной и выражение были одного типа, например, оба числовые или оба строковые. Например: Y = 3,652 или F$ = “Фамилия” и др.

Простейший оператор присваивания имеет вид : ПЕРЕМЕННАЯ=ЧИСЛО

Число помещается в память, и машина называет это место переменной. Каждая новая переменная имеет новое имя. У разных переменных разные имена. Например: В=45, ХХ=100 и т.д. Имена переменной могут начинаться с любой буквы от А до Z, второй символ может быть либо буквой, либо цифрой от 0 до 9. Нельзя использовать в качестве имен переменных некоторые слова, используемые Бейсиком с своем словаре для других целей. Например, IF, GO и др. Количество символов в имени переменной не может превышать двух.

ПЕРЕМЕННАЯ=ВЫРАЖЕНИЕ

Компьютер вычисляет выражение и помещает результат в область памяти соответствующей переменной.

Выражением могут служить - последовательности чисел, математических символов (+, -, /,*). Например, 1+В, 5*В/7 и т.д. Не следует отождествлять присваивание со знаком математического равенства. Так, выражения А=В и В=А не тождественны. Выражение А + 9 – В = Х в программировании лишено смысла, т.к. имя переменной не может содержать знаков действий.

Оператор LET присваивает значение выражения или значение переменной. Оператор присваивания может начинаться с ключевого слова LET и иметь следующую форму записи LET v = b.

Оператор ввода.

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

Значения переменных вводятся в программу с клавиатуры по мере их запроса самой программой и размещаются в ячейках памяти, выделенных для этих величин. Оператор ввода дает возможность решать одну и ту же задачу с разными значениями исходных величин без изменения программы. При вводе с клавиатуры надо придерживаться следующих правил: вводимые значения должны отделяться друг от друга запятыми; их количество должно быть равно количеству идентификаторов в списке ввода; их типы должны соответствовать типам вводимых переменных. При вводе значений строковая константа заключается в кавычки, если она начинается со значащих пробелов или заканчивается ими, а также, если содержит запятые или двоеточия. После окончания набора, пользователь должен нажать клавишу Enter. Данные с экрана вводятся в компьютер. Пока клавиша Enter не нажата, вводимые символы можно редактировать. Если что-то из указанного не соблюдается, то программа перезапускается с самого начала. Если сообщение отделяется от списка переменных точкой с запятой, то на экран выводится знак «?», если запятой, то знак «?» не выводится на экран. Точка с запятой позволяет сохранять позицию курсора на той же строке после ввода данных. При вводе слишком большого или недостающего количества данных появляется сообщение: “Redo from start” – повторить сначала.

INPUT – оператор ввода. Ключевое слово «ввести». Используется для передачи в программу каких-либо значений. Общий вид оператора: INPUT ["текст" {,|;} ] v1, v2, ..., vn, пример: INPUT , на экране появится приглашение ввести данные (появится знак "?")выполнение программы приостанавливается и компьютер будет ждать их ввода. Затем с клавиатуры, через запятую нужно ввести значения переменных, указанных в списке переменных.

Сообщение – строковая константа, которая используется в качестве подсказки о том, какие данные и в каком порядке следует ввести пользователю с клавиатуры. При вводе значений строковая константа заключается в кавычки, если она начинается со значащих пробелов или заканчивается ими, а также, если содержит запятые или двоеточия. Список переменных – имена переменных, перечисленных через запятую, значения которых предполагается вводить с клавиатуры. После введения данных с клавиатуры необходимо нажать ввод (enter). Например: INPUT “Введите значения X, Y, Z”, Х, Y, Z. Пользователь с клавиатуры должен ввести числовые значения X, Y, Z через запятую, например: 3, 4, 5. После окончания ввода нажать клавишу Enter. Это действие будет равносильно операторам присваивания: X=3: Y=4: Z=5

Если сообщение отделяется от списка переменных точкой с запятой, то на экран выводится знак «?», если запятой, то знак «?» не выводится на экран. Точка с запятой позволяет сохранять позицию курсора на той же строке после ввода данных. При вводе слишком большого или недостающего количества данных появляется сообщение: “Redo from start” – повторить сначала.

Совместное действие операторов READ и DATA дают возможность вводит данные в программу из блока данных. READ - «читать» - список переменных (Список переменных – имена переменных, перечисляемые через запятую). DATA -«данные» - список констант – числовые или строковые константы, перечисляемые через запятую. Строковая константа заключается в кавычки, если она начинается со значащих пробелов или заканчивается ими, а также если содержит запятые или двоеточия. Оператор READ может содержать несколько переменных, которым присваиваются соответствующие величины в операторе DATA. Если их там окажется меньше, чем переменных в операторе READ, то появится сообщение об ошибке. Количество переменных в операторе READ должно быть не больше количества констант в операторе DATA. Неиспользованные константы из блока данных игнорируются. Операторы READ и DATA не обязательно должны быть парными. Первой считывается самая первая величина в самом первом операторе DATA в программе. За один раз считывается одна величина. Каждая величина считывается только один раз, остальные считываются по порядку. Можно возвратить указатель позиции в начало блока данных с помощью оператора RESTORE (восстановление). По этой команде машина восстанавливает все уже прочитанные данные и при следующем прочтении воспринимает содержимое оператора DATA так, как будто эти данные читаются впервые. Эта команда особенно полезна в диалоговых программах, когда предусматривается возможность неоднократного прочтения одних и тех же данных. Первый оператор READ, следующий за оператором RESTORE, будет считывать первое значение из блока данных. Т.к содержимое оператора DATA может быть прочитано, только оператором READ, то оператор DATA относится к невыполняемым операторам. Пример: DATA –3.2, 12.3, 125 DATA Аргумент, 3.14 READ А, В, С, F$, P . После выполнения приведенных операторов переменные получат значения: А = -3.2 В = 12.3 С = 125 F$= “Аргумент” P = 3.14

Оператор вывода.

Оператор вывода служит для вывода числовой и текстовой информации на экран монитора или принтер в процессе выполнения программы. Общий вид оператора: PRINT [список вывода][{; | ,}] .PRINT – ключевое слово «печать»; список вывода может содержать константы, переменные, выражения, функции, разделенные запятыми или точками с запятой.

Различаются зонный и компактный выводы. Если данные в списке вывода разделены запятыми, то каждое выводимое значение размещается в соответствующей зоне. При зонном формате (печать по зонам) каждая строка содержит 5 зон по 14 позиций каждая. Если данные в списке вывода разделены точками с запятой, то вывод значений осуществляется компактно, подряд друг за другом (например, числа выводятся через один пробел). Запятые и точки с запятой могут использоваться в операторе PRINT совместно. Необходимо помнить, что при выводе числовых данных первая позиция отводится под знак числа. Например:

Х = 10 : Y= - 2

PRINT “ При Х= ”; Х, “Y=”;Y

PRINT “ Х + Y = ”; Х +Y

PRITN “ Х - Y = ”; Х -Y

PRINT “ Х*Y = ”; Х * Y

На экране:

При Х= 10 Y=-2

Х + Y = 8

Х - Y = 12

Х*Y =-20

Если в конце списка вывода оператора PRINT стоит запятая или точка с запятой, то следующий оператор PRINT выводит данные в той же строке, что и предыдущий. Например: G=1998: D$=”Год рождения - ”

PRINT D$; PRINT G

На экране: Год рождения – 1998

Оператор PRINT может записываться без списка величин. В этом случае он выводит на экран пустую строку, строку пробелов. В одном операторе PRINT можно использовать разные разделители. Если в программе используется несколько операторов PRINT, то работают они как один с общим списком выводимых величин с единственным исключением: при отсутствии в конце оператора PRINT разделителя (, или ;) следующий за ним оператор PRINT выводит величины с начала строки. Например:

PRINT “ПОПУГАЙ”;

PRINT “ГОВОРИТ”,

PRINT “ОТЛИЧНО”

На экране: ПОПУГАЙ ГОВОРИТ ОТЛИЧНО

Функция Tab устанавливает позицию курсора на определенной позиции экрана. С установленной позиции и будет начинаться вывод информации, содержащейся в операторе PRINT.

Оператор комментария.

REM – оператор комментария. Все что следует после этого оператора до конца строки игнорируется компилятором и предназначено исключительно для человека. Т.е. здесь можно писать что угодно. Удобно использовать комментарий в начале программы для указания её названия и назначения. Оператор комментария должен быть единственным в операторной строке, либо последним. Многие интерпретаторы также поддерживают в качестве знака начала комментария одиночную кавычку '. Ключевое слово REM можно заменить символом «’» (апостроф). Нельзя использовать оператор REM в середине многооператорной строки, т.к. компьютер игнорирует все, что идет следом за ним.

Операторы, контролирующие порядок выполнения программ.

GOTO- " перейти к ..." - первый оператор контроля выполнения программы или оператор безусловного ветвления. GOTO - управляющий оператор безусловного перехода. Используется для передачи управления между структурами одного и того же модуля. Когда компьютер находит его, то переходит к выполнению строки с номером , указанным после него. Этот оператор позволяет изменить естественный порядок выполнения действий и перейти к выполнению программы, начиная с некоторой указанной строки или помеченного оператора. Существует две его формы - GOTO n и GOTO метка. Где n – номер строки (число), метка – метка оператора (метка – это идентификатор, который ставится перед требуемым оператором и отделяется от него двоеточием). Современная технология программирования основана на принципе «программирования без goto», поэтому использование операторов безусловного перехода должно быть сведено к минимуму.

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

IF УСЛОВИЕ THEN ЧТО ДЕЛАТЬ ELSE

Если условие выполнено, компьютер будет выполнять то, что указано после THEN. Условный оператор изменяет порядок выполнения действий в программе в зависимости от истинности или ложности некоторого условия. оператор ELSE - «иначе». Оператор IF проверяет условие, если логическое выражение принимает значение «истина», то выполняется оператор, следующий за THEN, затем управление передается следующей операторной строке. Если логическое выражение принимает значение «ложь», то выполняется оператор, следующий за оператором ELSE. Если в операторе IF опущена ветвь ELSE, то при значении логического выражения «ложь» управление передается следующей операторной строке. Оператор имеет следующий вид - IF условие THEN операторы 1 [ELSE операторы 2]. Условия – это выражения, которые могут быть оценены как истинные (не ноль) или ложные (ноль); блоки операторов – это один или несколько операторов в одной или нескольких строках; операторы – один или несколько операторов, разделённых двоеточием.

200 IF R$=''ДА '' THEN 500

300 IF R$=''НЕТ" THEN 600

400 GOTO 100

500 PRINT "Это положительно"

550 GOTO 100

600 PRINT "Почему отрицательно"

650 GOTO 100

Если ответили ДА, то управление переходит на строку с номером 500, затем 550 и затем 100. Если ответили НЕТ, управление передается на строку с номером 600, потом 650 и затем 100. После чего все повторяется сначала.

Примеры логических операторов.

IF УСЛОВИЕ OR УСЛОВИЕ THEN ДЕЙСТВИЕ - действие будет выполнено, если хотя бы одно из условий будет выполнено.

IF УСЛОВИЕ AND УСЛОВИЕ THEN ДЕЙСТВИЕ - действие будет выполнено, если оба условия будут выполнены одновременно.

IF NOT УСЛОВИЕ THEN ДЕЙСТВИЕ - действие будет выполнено, если условие не выполняется.

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

CASE тестовые условия 1

[блок операторов 1]

CASE тестовые условия 2

[блок операторов 2]]

Где "главное выражение"- любое числовое или символьное выражение, тестовые условия 1,2 - выражения для сравнения с главным выражением, блок n операторов - операторы в одной или нескольких строках. Ключевых слов CASE может быть много. CASE используется, когда сравниваются; значение главного выражения с тестовыми условиями. Если при сравнении в результате получается значение " истина ", то выполняется блок операторов следующий за словами END SELECT, если условия оказались ложными, то выполняется блок операторов после слов CASE ELSE.

Циклы и подпрограммы.

Циклы.

При программировании алгоритмов циклической структуры используются специальные операторы цикла. Операторы цикла бывают трех типов: бесконечные циклы, циклы, оканчивающиеся по условию, циклы со счетчиком.

Например; оператор цикла FOR - NEXT - применяется при программировании циклов с заранее известным числом повторений и относится к циклу со счетчиком. Такие циклы требуют специальной переменной - счетчика, значение которой определяет выполнение цикла. Этот оператор имеет следующий вид :

FOR ИМЯ СЧЕТЧИКА=НАЧАЛЬНОЕ ЗНАЧЕНИЕ

TO КОНЕЧНОЕ ЗНАЧЕНИЕ

STEP ШАГ

NEXT

NEXT – замыкающий оператор, он должен стоять в конце цикла.

STEP – шаг

TO означает – «до»

Пример:

FOR C=0 TO 43 STEP 2

PRINT “C=”,C;

NEXT C

Данная программа означает – «Выполнить цикл для значений счетчика С от 0 до конечного значения 43. Значение счетчика должно изменяться каждый раз на 2 .

Оператор цикла WHILE - WEND - организует цикл с неизвестным заранее числом повторений- бесконечные циклы. Для этих целей можно также использовать оператор цикла DO - LOOP, выход из этого цикла осуществляется через оператор GOTO или стандартным образом через EXIT DO.

Циклы, оканчивающиеся по условию содержат операции типа IF…THEN. Такие циклы удобны, если нужно вводить данные с клавиатуры или брать их из оператора GATA.

Подпрограммы.

Подпрограммы обычно содержат некоторую последовательность действий, которую нужно многократно выполнять в различных местах основной программы. Организовать доступ к подпрограммам можно разными способами: использовать операторы условного ветвления:

IF A<B THEN 50 ELSE 500

Можно использовать оператор множественного ветвления:

ON A GOTO 1000,2000

Этот оператор, в зависимости от А, активизирует подпрограммы начинающиеся со строк 1000 и 2000. В конце подпрограммы должна стоять команда, позволяющая вернуться снова к выполнению основной программы.

Вход в подпрограмму должен обязательно осуществляться по команде GOSUB – он говорит компьютеру : « Запомни номер текущей строки». Подпрограмма должна обязательно заканчиваться оператором RETURN, что означает «возврат».

Операторы спецификации.

Эти операторы имеют дело с числами. Например, преобразуют дроби, округляют числа с определенной точностью. Например; оператор PRINT всегда округляет числа с одинарной точностью до шести знаков. Не важно, где эти знаки стоят - до или после десятичной точки. При этом само число, хранящееся в памяти компьютера, содержит семь значащих цифр. Оператор заменяет длинные последовательности нулей сообщением о порядке числа. Это означает, что число нужно умножить на 10 в степени, равной порядку. Десятичные числа, больше 1000000 и меньше 0,01, по команде PRINT выводится на экран в следующем формате: Х.YYYYY E ZZ. В этом же формате выводятся отрицательные числа, меньше -999999 и больше -0,01. Старшая значащая цифра пишется слева от десятичной точки. Следующее за этим обозначение Е ZZ заменяет собой выражение 10 в степени ZZ. Если число находится в интервале от-1 до +1, то ZZ отрицательно. Иными словами, запись Х.YYYYY E ZZ означает Х.YYYYY*(10 в степени ZZ). Символ # , поставленный после имени переменной, переводит ее из одинарной точности в двойную., которая может содержать уже 17 значащих цифр. Оператор PRINT выводит на экран только 16 значащих цифр, 17ая используется для округления. Числа, имеющие от 8 до 17 значащих цифр, также рассматриваются как числа с двойной точностью.

Список математических функций в Бейсике:

ABS(X) – вычисление абсолютного значения Х

ATN(X) – вычисление арктангенса Х

CDBL(X) – преобразование Х в двойную точность

CINT(X) – преобразование Х в целое число

COS(X) – вычисление косинуса Х

CSNG(X) – преобразование Х в одинарную точность

EXP(X) – вычисление значения е в степени Х

FIX(X) – усечение дробной части

INT(X) – преобразование Х в целое число

LOG(X) – вычисление натурального логарифма

RANDOMIZE(X) – инициализация генератора случайных чисел

RND(X) – вычисление случайного числа от 0 до Х

SGN(X) – определение знака числа

SIN(X) – вычисление синуса Х

SOR(X) – вычисление квадратного корня из Х

TAN(X) – вычисление тангенса Х

Оператор работы с массивами.

Оператор описания массивов служит для резервирования места в памяти компьютера для элементов массивов. Является неисполняемым. Массивом называют упорядоченную последовательность величин, обо­значаемую одним именем. Именем массива может быть любое допусти­мое в Бейсике имя. Данные, являющиеся элементами массива, располагаются в последова­тельных ячейках памяти. Это означает, что массив занимает непрерывную область памяти.

DIM является сокращением английского слова DIMension , что в переводе означает "размер". Этот оператор служит для резервирования в памяти место под переменные с именем указанным после оператора DIM. Число таких переменных указывается в скобках. Массивы могут состоять из переменных любого типа. Они могут быть целыми, действительными, одинарной и двойной точности и строковыми. Все элементы массива должны быть одного типа. Выражение, стоящее в скобках и определяющее номер элемента, может быть числом, переменной ли арифметическим выражением. Общий вид оператора: DIM список массивов. Одномерный массив имеет вид DIM<имя>(d), а двумерный DIM<имя>(n,m). Например: DIM A(19), X(3,4), F$(9) . Оператор DIM резервирует место в памяти для одномерного массива А, состоящего из 20 элементов А(0), А(1), А(2), …, А(19), для двумерного массива Х, содержащего 4 строки и 5 столбцов (включая нулевые) Х(0,0), Х(0,1), …, Х(3,4), и для строкового массива F$, содержащего 10 элементов F$(0), F$(1), …, F$(9). Нумерация элементов массива ведется не с 1, а с 0. Тоже самое относится и к многомерным массивам. Любое измерение начинается с 0. Элементы массива располагаются в памяти машины следующим образом:

Целая переменная занимает в памяти 2 байта. Поэтому массив целых переменных равен произведению всех его членов на 2. DIM А%(3,7) - резервирует в памяти машины 4*8=32байт.

Переменная одинарной точности требует 4 байта. DIM А!(3,7) - 4*4*8=128байт.

Переменная с двойной точностью занимает 8байт. DIM А#(3,7) - 8*4*8=256байт.

Строковые переменные могут занимать различный объем памяти в зависимости от длины строки. Область памяти, отводимая под строковые переменные ограничена и задается оператором CLEAR M, где М - число байт , резервируемые под строковые переменные.

Для ввода и вывода элементов массива используются операторы ввода и вывода INPUT, READ, DATA, PRINT. Ввод и вывод массивов осуществляется с помощью оператора цикла FOR…NEXT.

Оператор очищения экрана.

Оператор CLS используется для очищения экрана. В результате его выполнения вся информация с экрана удаляется, экран окрашивается в фоновый цвет, а курсор возвращается в левый верхний угол экрана. Например:10 CLS.

Оператор завершения работы программы.

Ранее открытые файлы закрываются с помощью оператора CLOSE. Он имеет следующий вид: CLOSE [[#]номер файла% [,[#]номер файла%]...]. Если номера файлов в операторе CLOSE не указаны, то закрываются все открытые файлы.

Оператор END используется для завершения выполнения программы. Он является последним в тексте программы. Например: 60 END.

Программа, написанная на языке программирования QBasic, может состоять из нескольких разделов, например: раздела объявления констант; раздела объявления переменных; раздела объявления типов; тела программы. Порядок размещения разделов произвольный. Можно создавать несколько одинаковых разделов. Единственное правило, которое необходимо строго выдерживать, состоит в том, что в любом месте программы можно использовать лишь те элементы языка, которые были определены ранее по тексту программы или являются предопределёнными.

В программе существует еще ряд команд таких как;

RUN - Запуск текущей программы с первого оператора строки с самым маленьким номером.

LOAD - Команда интерактивного режима, которая загружает в память программу из файла на внешнем носителе. При этом обычно из памяти удаляется ранее загруженная программа и данные.

LIST - Вывод на монитор текста программы в правильной последовательности строк.

SAVE - Команда интерактивного режима, которая сохраняет текущую программу в файле на внешнем носителе.

DIR – Команда вывода на экран или принтер данных о файлах, содержащихся на диске.

REN – Команда изменения имени файла.

TYPE – Команда просмотра содержимого текстовых файлов.

USER – Команда обращения различных пользователей к своим файлам, хранящихся на диске.

STAT – Представляет пользователю информацию о состоянии диска.

PIP – Осуществляет обмен данными с периферийными устройствами.

ED – Позволяет пользователю запустить текстовый редактор.

DDT – Позволяет проследить за работой различных программ в машинных кодах и выявить имеющиеся в них ошибки.

FORMAT – Форматирование диска.

SG – Копирует операционную систему с диска на диск.

ERA - Команда удаления файлов. И др.

Графические операторы.

Для зажигания точки на экране монитора используется команда PSЕТ (Х,Y),Z . Х и Y- координаты точки на экране по горизонтали и вертикали соответственно. Z- цвет точки, который принимает значение от 0 до 7. Для работы программы необходима специальная функция - генератор случайных чисел :RND(N). Она принимает значения равные 1, деленной на случайным образом выбранное число из интервала от 1 до N. На экране появляются точки разного цвета, чтобы их погасить, нужно ввести функцию PRESET(XY). Для рисования линий существует специальный оператор LINE. Например: LINE (X1,Y1)-(X2,Y2),K,(F). X1,Y1 и X2,Y2 - координаты точек, которые нужно соединить прямой линией. К- цвет линии. Если рисуют линию, то последнюю букву опускают, если рисуют прямоугольник с диагональю X1,Y1 - X2,Y2 , то ставят букву В . Если прямоугольник закрашивается, то вместо В ставим F. Оператор RELOK(X,Y) служит для создания трехмерной графики. Оператор PAINT (X,Y),N,M закрашивает область внутри которой находится точка с координатами X,Y. PAINT от англ. - красить. Цвет закрашивания задается числом N, цвет границы - М. Кроме того существует еще один оператор DRAW "СТРОКА", ЦВЕТ. DRAW от англ.- рисовать. СТРОКА задает перечень команд рисования. Они пишутся подряд, ничем не разделяясь. Например :

UN-вверх на N точек

DN-вниз на N точек

RN-вправо на N точек

LN-влево на N точек

EN-вверх и вправо на N точек по горизонтали

FN- вниз и вправо на N точек по горизонтали

GN -вниз и влево на N точек по горизонтали

HN-верх и влево на N точек по горизонтали

MX,Y-рисовать линию от текущей точки до точки с координатами X,Y

Кроме того, перед любой командой рисования могут стоять поясняющие операнды. Например; А1- на 90 градусов, А2- на 180 градусов и т.д.. Для рисования эллипсов служит оператор CIRCLE(X,Y), где X,Y - центр эллипса.

В командах LINE, PSЕТ и PAINT перед значением координат можно указать, что они не абсолютные, а смещены от текущей точки. Для этого служит оператор STEP. Функция POINT(X,Y), принимает значение, соответствующее номеру цвета точки с координатами X,Y. При помощи оператора COLOR M,N можно менять цвет экрана. Оператор SCREEN M,N переключает объект на невидимой странице в видимую область.

Память в Бейсике.

У каждой ячейки памяти имеется адрес. Любая переменная занимает определенное количество ячеек памяти. Если не использовать оператор присваивания, то, необходимо знать адрес первой ячейки. Для этого существует специальная функция VARPTR( ИМЯ ПЕРЕМЕННОЙ). Можно указывать имена любых переменных, в том числе и элементов массива. Следующий оператор POKE M,N и PEEK (M), где М - адрес ячейки памяти. Оператор POKE записывает байт N по адресу М. PEEK возвращает байт, записанный по адресу М.

Работа с файлами.

Блоки информации в директориях называются файлами. Имена файлов состоят из двух частей. Первая часть – собственное имя, оно может содержать от 1 до 8 символов (буквы, цифры, специальные знаки). Вторая часть имени – расширение, содержит от 0 до 3 символов и отделена от первой части точкой. Вторая часть поясняет, что это за программа. Например, программы, написанные на языке Бейсик имеют расширение BAS. Программы, написанные на Фортране имеют расширение FOR, а ассемблеровские – ASM и т.д. Работа с файлами включает следующие обязательные операции: открытие файла, чтение и запись обрабатываемых данных, закрытие файла. Для открытия файла используется оператор OPEN. OPEN файл$ [FOR режим] AS [#]номер файла, файл$ – имя файла. В качестве параметра файл$ в операторе OPEN можно использовать переменную символьного типа, которой присваивается имя файла. Режим INPUT предназначен для чтения информации из файла. Режим OUTPUT предназначен для записи информации в файл, обычно в новый. Режим APPEND предназначен для добавления информации в файл, причём новая информация размещается в конце файла, за последней записью. Запись информации в файл может производиться операторами PRINT, PRINT USING и WRITE. Различие между операторами PRINT# [номер файла,] и WRITE# [номер файла,] заключается в том, что первый из них выводит данные в файл точно так же, как на экран монитора, а второй – разделяет их запятыми и заключает символьные константы в двойные кавычки. Чтобы считать данные, которые были ранее записаны в файл с помощью оператора WRITE, или какого-либо другого оператора, или набраны с учётом необходимого формата вручную, используется оператор INPUT.

В операционной системе имеется набор специальных команд- «управляющих символов». Для их ввода необходимо нажать одновременно клавишу CTRL и клавишу с требуемым символом. Например:

CTRL-С - команда реинициализации системы – «теплый старт» (с системного диска копируется в память компьютера только часть операционной системы, остальная память остается нетронутой).

CTRL-J –вызывает перевод строки.

CTRL-М – вызывает возврат каретки.

CTRL-Н (или BACKSPACE) – возвращает курсор на одну позицию назад и стирает символ, стоящий в этой позиции.

CTRL-V – удаляет уже набранную командную строку и перемещает курсор в начало следующей строки.

DEL – стирает символ слева от курсора.

CTRL-Х – удаляет текст командной строки и возвращает курсор в ее начало.

CTRL-Е – используется для переноса командной строки на следующую строку.

CTRL-R – используется для повторного ввода командной строки, содержащий удаленные при нажатии DEL символы.

CTRL- S – служит для задержки вывода текста на экран.

CTRL-Р – служит для вывода на принтер любого текста с экрана.

Ранее открытые файлы закрываются с помощью оператора RESET. Оператор CLOSE- закрывает один или несколько файлов или устройств.

Нужно отметить, что Бэйсик - не чувствительный к регистру язык. То есть для Бэйсика слова PRINT и print - это одно и тоже. Это касается не только ключевых слов, но и имён переменных. Хотя некоторые реализации языка являются чувствительными к регистру полностью или частично (например, Liberty BASIC).

Заключение.

В настоящее время Basic — это не один язык, а целое семейство языков, отличающихся временем создания, парадигмами программирования и синтаксисом, зачастую до полной потери совместимости программ. Ранние версии не поддерживали даже структурное программирование; со временем структурное и процедурное программирование стали общепринятыми парадигмами, и появились версии, поддерживающие их. Вторую жизнь Бейсик получил с появлением в 1991 году Visual Basic от Microsoft. Этот язык напоминал оригинальный только синтаксисом, но был значительно более современным. Visual Basic и его варианты стали одним из наиболее часто используемых языков на платформе Windows. Позже был создан вариант под названием WordBasic, используемый в MS Word до появления Word 97. Visual Basic for Applications (VBA) был встроен в Excel 5.0 в 1993 году, затем в Access 95 в 1995-ом, а после и во все остальные инструменты, входящие в пакет Office — в 1997-ом. Internet Explorer 3.0 и выше, а также поставки Windows включали интерпретатор скриптового языка VBScript. В полный вариант пакета OpenOffice также включён интерпретатор Бейсика. Так Basic перерос из средства для создания программ любителями-непрофессионалами до полноценного средства создания программ. Существует множество версий языка Бейсик, более сорока, и все они имеют особенности. Это и Qbasic, и Visual Basic, GWBASIC, MSX-BASIC, TurboBASIC, QuickBASIC и др. Но в каждой из них можно выделить общее, в котором отражены характерные (стандартные) грамматика, синтаксис и семантика языка Basic. Все версии BASIC схожи друг с другом, и поэтому, изучив одну из них, несложно воспользоваться любой имеющейся версией для решения задач. Ныне Бейсик вышел за рамки языка для начинающих. Последней версией языка является среда программирования Visual Basic. Графический Visual Basic был создан фирмой Microsoft в качестве базового средства программирования для новейших моделей компьютеров IBM PC с операционной систе­мой Windows. Этот язык может использоваться только в средеWindows и только на старших моделях IBM PC. Помимо написания полноценных программ, Бейсик широко применяется как основа для различных скриптовых языков (например, макросы в пакете Microsoft Office пишутся на диалекте VBA, язык сценариев VBScript используется в SCADA-системах и других подобных программах). Если же говорить о современных диалектах и реализациях Бейсика, то они настолько далеко ушли от первоначальной формы языка, что всё вышесказанное вряд ли можно считать относящимся к ним. Современные диалекты Бейсика являются достаточно структурированными языками, они сопоставимы по возможностям с такими языками, как Си, Паскаль и т.п.

Список литературы.

1.Ахманов С.А., Персианцев И.Г.,Рахимов А.Т. и др.Знакомьтесь:персональная ЭВМ Корвет.М.:Наука.1989.-240с.

2. Бобровский С.И.Программирование на языке QBasic для школьников и студентов.М.:Десс Ком;Инфорком-Пресс.2000.-208с.

3. ГеворкянГ.Х.,Семенов В.Н.Бейсик- это просто.М.:Радио и Связь.1989.-143с.

4. Жданова Т.А.,Бузыкова Ю.С.Основы алгоритмизации и программирования.Х.:ТОГУ.2011.-59с.

5.Корчак А.Е.Справочник БЕЙСИК – версии для MS-DOS.М.:МЦНТИ.1996.-463с.

6.Лемешко Е.В.,Романчук В.Г.Основы программирования на языке Бейсик.М.:МИУ.1988.-49с.

7.Ляхович В.Ф.Основы информатики.Ростов н/Д.:Феникс.2000.-608с.

8. Опарин Д.В.Алгоритмизация и програмирование на языке высокого уровня QBASIC.Е.:ГОУ ИПО УГТУ-УПИ.2009.-56с.

9. Пестриков В.М.,Тяжев А.Т.QBASIC на примерах.СПб.:БХВ-Петербург.2010.-304с.

10. Потемкина В.Г.Введение в программирование на языке Microsoft BASIC.М.:Диалог-МИФИ.1991.-160с.

11. Сафронов И.К.Бейсик в задачах и примерах.-2-е изд.,перераб. –СПб.:БХВ-Петербург.2006.-320с.

12. Трояновский В.М.,Шаньгин В.Ф.Бейсик для начинающих и будущих профессионалов.М.:Высшая школа.1992.-239с.