Файл: "ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ QBASIC".pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 13.03.2024

Просмотров: 49

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Константы – данные, значение которых не меняется во время работы программы. Пример: 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