- •Глава 3 язык программирования бейсик
- •3.1 Простейшие конструкции языка
- •3.2 Основные операторы языка
- •Строка– строка экрана (1 – 25), на которую должен переместиться курсор. Столбец– столбец экрана (1 – 80), к которому должен переместиться курсор.
- •3.3 Характерные приемы программирования типовых алгоритмов
- •Вариант 1
- •9. Составить программу для условия задачи п.9
- •10. Составить программу для условия задачи п.10
- •11. Составить программу для условия задачи п.11
- •12. Составить программу для условия задачи п.12
- •13. Составить программу для условия задачи п.13
- •14. Составить программу для условия задачи п. 14
Глава 3 язык программирования бейсик
Язык программирования BASIC, особенно его современные версии, является самым удобным и легко воспринимаемым при освоении основ алгоритмизации и программирования. В качестве рабочей версии языка в пособии рассматривается QuickBASIC – отдельный пакет программ для IBM PC, разработанный фирмой Microsoft. QBASIC является языком, позволяющим профессионально использовать все современные методы и технологию программирования.
3.1 Простейшие конструкции языка
QBASIC, как и любой другой язык прграммирования, является средством общения с компьютером. QBASIC имеет свою грамматику и свой словарь. К простейшим конструкциям относятся константы, переменные, стандартные функции и выражения, реализуемые с помощью алфавита.
Алфавит языка включает в себя:
буквы латинского алфавита от A до Z (прописные и строчные);
цифры от 0 до 9;
специальные символы: + (знак плюс) – (знак минус) * (звезда) / (наклонная черта) \ (обратная наклонная черта) ^ (знак вставки) ; (точка с запятой) . (точка) , (запятая) : (двоеочие) ! (восклицательный знак) ? (вопросительный знак) ” (кавычки) () (левая и правая скобки) = (знак равенства) > (знак больше) < (знак меньше) ’ (апостроф-одинарная кавычка) % (знак процента) & (знак амперсанда) $ (знак доллара) # (диез) _ (знак подчеркивания) ~ (тильда);
служебные слова ( SAVE, READ, OPEN, SIN и т.д.).
Русские буквы и некоторые другие символы клавиатуры не входят в алфавит QBASIC, но их можно использовать в двойных кавычках и комментариях.
Константы – это постоянные величины, значения которых не меняются в процессе выполнения программы. Константы делятся на числовые и текстовые. Числовая константа представляет собой число со знаком “+”, “-“ или без знака. Различают константы целого и вещественного типов. Вещественные константы могут быть представлены в естественной и экспоненциальной форме. В естественной форме (или в форме с фиксированной точкой) число представляется последовательностью цифр со знаком или без него, а для отделения целой части от дробной используется десятичная точка. Ноль целых можно опускать. В экспоненциальной форме (или в форме с плавающей точкой) число записывается в виде ±mE±p, где m – мантисса числа; E – символ, обозначающий основание десятичной системы счисления; p – порядок. Значение такой константы определяется как ±m10±p. Целые константы представляют собой запись числа без десятичной точки. Примеры записи чисел приведены в таблице 3.1. Текстовая константа – это набор любых комбинаций буквенно-цифровых и специальных символов, заключенных в кавычки.
Пример: “Иванов ГР. МЛК-1-92”, “Бейсик”, “BASIC”.
Переменная – это величина, значение которой может изменяться в процессе выполнения программы. Различают простые переменные и индексированные.
Идентификатор – имя переменной содержит максимум 40 символов и должно начинаться с буквы. Допустимые символы: "A…Z", "0…9" и точка ".". Последним может быть один из символов, обозначающих стандартный тип данных ( $ %). Примеры записи имен простых переменных: A, X$, X1, ABC.JOB, VAL1. Переменные с индексами (индексированные) являются элементами массивов.
Таблица 3.1 - Примеры записи чисел
Числа |
Запись на Бейсике |
Тип константы |
2 |
2 |
Целая |
0,65 |
0.65 или .65 |
Вещественная в естественной форме |
-11,426 |
-11.426 |
Вещественная в естественной форме |
2,6104 |
2.6E4 |
Вещественная в экспоненциальной форме |
-0,00321 |
-0.321E-2 или -.321E-2 |
Вещественная в экспоненциальной форме |
-1,3210-7 |
-1.32E-7 |
Вещественная в экспоненциальной форме |
Массив – это упорядоченная последовательность однородных величин, называемых набором данных, обозначенных общим именем. Расположение значения в массиве определяется индексами, которые записываются после имени в круглых скобках через запятую. Различают одномерные массивы (вектора), и двумерные массивы (матрицы). Для размещения массива в памяти ЭВМ должно быть выделено соответствующее количество полей (ячеек) памяти.
Примеры записи имен элементов массивов:
D (5) – пятый элемент одномерного массива D;
X (I) – i- тый элемент одномерного массива X;
A(2,3) – элемент двумерного массива A, стоящий на пересечении 2-й строки и 3-го столбца матрицы;
Z(I,J) – элемент двумерного массива Z, стоящий на пересечении i-й строки и j-го столбца матрицы.
Стандартые типы данных. В QBASIC можно объявить следующие стандартные типы данных:
Тип |
Символ |
Содержание |
INTEGER – целый |
% |
Целые числа в интервале от -32768 до 32767 |
LONG – длинный целый |
& |
Целые числа в интервале от –2147483648 до +2147483648 |
SINGLE – вещественный одинарной точности |
! |
Числа с плавающей запятой в интервале от +-8,4310-37 до +-3,371038 |
DOUBLE – двойной точности |
# |
Числа с плавающей запятой в интервале от +-4,1910-307 до +-1,6710308 |
STRING – символьный (строковый) |
$ |
Любые тексты максимальной длиной 32767 знаков |
Примеры:
N%, X1%, A%(I) – имена переменных целого типа;
Y$, B$(5), C$(I,J) – имена переменных символьного типа;
Z!, D!(I), M# - имена переменных вещественного типа.
-
Если тип не определен, то переменная считается вещественной одинарной точности по правилу умолчания.
Операции. QBASIC выполняет над данными арифметические и логические операции, а также операции отношения.
Арифметические операции:
^ возведение в степень
+, - присвоение знака числу
*, / умножение и деление
\ целочисленное деление
MOD остаток после целочисленного деления
+, - сложение и вычитание.
Порядок выполнения операций задается установленным приоритетом. Арифметические операции перечислены в порядке убывания приоритета.
Операции отношения:
= равно = меньше или равно
больше = больше или равно
меньше не равно
Результатом операции отношения является логическое значение "истина", если условие отношения удовлетворяется, или "ложь" – в противном случае.
Логические операции:
NOT – отрицание
AND – логическое И (логическое умножение)
OR – логическое ИЛИ (логическое сложение)
EQV – эквивалентность
Результат логической операции – "истина" или "ложь". Операции перечислены по убыванию приоритетов.
Функции. В Бейсике используются два вида функций: стандартные и пользовательские. Стандартные или встроенные функции – это функции, наиболее часто используемые в вычислительной математике (например, квадратный корень числа, логарифм числа, и т.д.). Функции пользователя будут рассмотрены ниже.
Обращение к стандартной функции осуществляется с помощью имени (идентификатора) этой функции и аргументов, заключенных в круглые скобки. В качестве аргументов могут использоваться константы, переменные, функции, выражения.
Например: SIN(87), SIN(X), SIN(X+25), SIN(ABS(X)).
Таблица стандартных функций представлена в Приложении 1 данного пособия.
Выражение – это компактная запись, состоящая из констант, переменных, функций, разделенных скобками и знаками операций.
При записи выражений следует пользоваться следующими правилами (примеры записи выражений приведены в таблице 3.2).
Нельзя опускать знак умножения, произведение ab следует писать как A*B; в QBASIC ab - имя переменной.
Выражение в виде дроби записывается в одну строку с использованием знака операции деления “/” или "\".
Не допускается запись непосредственно следующих друг за другом арифметических операций: c/-d пишется как c/(-d).
Порядок выполнения арифметического выражения определяется скобками. При их отсутствии операции выполняются согласно старшинству (приоритету) операций в следующем порядке: вычисление значения функции; возведение в степень; умножение и деление; сложение и вычитание.
Все операции в выражении выполняются слева направо, за исключением операции возведения в степень, которая выполняется справа налево:выполняется - X^(Y^Z).
Операция возведения в целую степень выполняется через многократное умножение, а в действительную – через логарифмическую функцию.
Таблица 3.2 - Примеры записи выражений и операций
Математическая |
на Бейсике |
- (p / c) + SQRT(T^3 + 1) | |
Bx2 + c |
B*X^2 + C |
1 ≤ xi j ≤ 4 |
x(i,j)<= 4 AND x(i,j)>= 1 |
x= 1или x = 0 |
x = 1 OR x = 0 |
i ≠ j |
I <> j |
Остаток от деления 25 на 8 |
25 MOD 8 (результат = 1) |
(a*SIN(x^3 - 6.9)^2 + b)/(c – d)+LOG(ABS(c – d^2)) |