
- •Министерство образования российской федерации
- •Внешние устройства пк
- •2.1. Элементы языка
- •Мантисса e порядок
- •2.2. Операторы языка
- •Операторы управления
- •If логическое_условие goto метка_оператора
- •2.3. Организация ветвлений
- •Input “Укажите х”, X
- •15 ? “Неверно”
- •2.4. Организация циклов
- •Программа к задаче 9
- •Input "Введите числа X и y", X, y
- •2.5. Работа с массивами
- •Input "Введите число вкладчиков и процент ",n,p
- •2.6. Модульное программирование
- •2.7. ОбРаботка Символьных данных
- •Пример. ?instr(”Саша”,”а”),instr(3,”Саша”,”а”) Результат: 2,4
- •2.8. Численные методы анализа
- •Input “Введите левую и правую границы a и в ”, a, b,
- •Input “Введите допустимую погрешность e ”, e
- •2.9. Выявление нажатия клавиш
- •2.10. Работа с графикой
- •2.11. Работа с дисковыми файлами
- •3.1. Решение уравнений
- •3.2. Численное интегрирование функций
- •3.3. Решение дифференциальных уравнений
- •4.1. Линейная регрессия
- •4.2. Полиномиальная аппроксимация
- •П1. Интерфейс среды qbasic
- •П2. Клавиши управления
- •П3. Меню интерпретатора
- •Ответы на тестовые задания, имеющиеся в тексте пособия:
- •& Тесты по курсу
- •Литература
- •Оглавление
- •2.6. Модульное программирование 38
- •2.8. Численные методы анализа 41
- •Информатика
2.1. Элементы языка
В Бейсике разрешено использование следующих основных символов:
1. Буквы латинского и русского языков (буквы кириллицы могут использоваться только в константах).
2. Цифры.
3. Специальные символы:
+ плюс, – минус, * умножение, / деление, ^ возведение в степень;
= равно, > больше, < меньше (отношение неравенства отображается двумя значками <>);
точка, запятая, скобки, точка с запятой, двоеточие, знак подчеркивания, кавычки и некоторые другие.
Переменные. Каждая переменная характеризуется именем, типом и значением. Все, используемые в программе, переменные снабжаются латинскими именами. Имя должно начинаться с буквы и может включать до сорока букв и цифр. В имени может содержаться также точка и символы определения типа (%, &, !, #, $). Программист выбирает имена произвольно, но таким образом, чтобы они указывали на смысл переменной. За каждой переменной компьютер закрепляет одну ячейку памяти.
Примеры имен: Х, y, A24, VES, Netto, MAXIMUM.
Большие и маленькие буквы в именах и операторах воспринимаются Бейсиком одинаково, т.е. буквы I и i обозначают одну и ту же переменную.
В Бейсике имеются числовые и символьные переменные.
Тип переменной определяется ее именем. Если оно заканчивается знаком:
% – то переменная целого типа,
& – переменная целого типа длинная,
! – вещественного типа простой точности (действует по умолчанию),
# – вещественного типа удвоенной точности,
$ – переменная символьного типа.
Если тип не указан, он считается вещественным простой точности (т.е. тип “!”).
Пример: NAME$, x%, Y, Y!, massa#, Ves&
симв. целый простой двойной целый
тип тип точности точности длинный
Если в программе используются переменные, не получившие до этого никакого значения (неопределенные переменные), то по умолчанию числовые переменные получат значение 0, а символьные – значение пустой строки длиной 0. Рассмотрим их подробнее.
Числовые целые (INTEGER). Целые числа в диапазоне от –32768 до 32768. Числа в таком формате занимают в памяти два байта.
Примеры: 65, –1065
Числовые целые длинные (LONG). Это целые числа в диапазоне (точнее от –2147483648 до 2147483647). Необходимо четыре байта памяти.
Числовые вещественные обычной точности (SINGL). Число с одинарной точностью требует 4 байта и имеет диапазон (конкретно от –3.4E+38 до –1.4E–45 для отрицательных значений и от 1.4Е–45 до 3.4Е+38 для положительных). Такие числа могут иметь целую и дробную части, разделенные десятичной точкой (например, 12.35), либо быть представлены в экспоненциальной форме:
Мантисса e порядок
что соответствует числу вида мантисса*10порядок. Буква Е обозначает, таким образом, число 10, а порядок – его степень. Благодаря экспоненциальному представлению, числа могут отображаться в очень большом диапазоне.
Примеры: 8Е–4 =0.0008 5.3Е6=5300000
Как видно, значение порядка определяет фактическое положение десятичной точки в числе. По этой причине такой формат чисел называется еще форматом с плавающей точкой.
Числовые вещественные двойной точности (DOUBL). Диапазон чисел (от –1.8E+308 до –4.9E–324 для отрицательных значений и от 4.9Е–324 до 1.8Е+308 для положительных). Повышение точности расчетов требует значительных дополнительных затрат времени и ресурсов памяти компьютера. Число с двойной точностью нуждается в восьми байтах памяти и отображает 16 достоверных знаков. Числу с одинарной точностью нужно только 4 байта (6 достоверных цифр).
Символьные (STRING). Такие переменные предназначены для представления текстов и должны быть заключены в кавычки. Длина символьной константы равна четырем байтам плюс количество байт, равное длине символьного значения. Максимальная длина такой переменной – 32567 знаков.
Примеры: “Таблица”, “256.34”
Указание типа переменных может быть задано не только специальными символами конце имени, но и операторами определения типа.
DEFINT диапазон букв [,диапазон букв ]
DEFLNG диапазон букв [,диапазон букв ]
DEFSNG диапазон букв [,диапазон букв ]
DEFDBL диапазон букв [,диапазон букв ]
DEFSTR диапазон букв [,диапазон букв ]
Эти операторы задают типы: целый, длинный целый, обычной точности, двойной точности и символьный для переменных начинающихся на перечисленные буквы.
Пример. DEFINT A-D, X-Z, R
Здесь переменные, имена которых начинаются с букв A,В,С,D,X,Y, Z,R, объявляются целочисленными типа INTEGER. Указывать специальные символы % в конце имен более не нужно.
Операции. Программисту в Бейсике доступны следующие операции (таблица 2.1.1). Как видим, приоритет выполнения операций совпадает с общепринятым. Он может быть изменен введением скобок.
Прио- ритет |
Обозна- чение |
Наименование операции |
Пример |
1 |
^ |
возведение в степень |
A^B |
2 |
– |
унарный минус (минус единица) |
–A |
3 |
* |
умножение |
A*B |
/ |
деление |
A/B | |
4 |
\ |
целочисленное деление |
A\B |
5 |
MOD |
нахождение целочисленного остатка от деления (делимое округляется до целого и делится на делитель, целый остаток является результатом) |
A MOD B Пример: 13.7mod4=2 |
6 |
+ |
сложение |
A+B |
– |
вычитание |
A–B | |
|
|
Таблица 2.2.1 |
|
Кроме операций в языке имеется ряд математических функций.
Арифметические функции
ABS(числовое выражение)– абсолютное значение числового выражения. Пример: ABS(–6)=6.
SGN(числовое выражение)– функция, возвращающая знак числа. Если число положительно, SGN возвращает +1, если равно нулю – ноль, если отрицательно, возвращает –1.
Примеры: SGN(12)=1; SGN(0)=0; SGN(–13.4)=–1.
CINT(числовое выражение)– округление числа до целого.
Пример: CINT(1.2)=1; CINT(1.9)=CINT(1.5)=2; CINT(–1.2)=–1;CINT(–1.5)=–2.
INT(числовое выражение)– целая часть числа.
Примеры: INT(1.2)=INT(1.9)=INT(1.5)=1; INT(–1.2)=INT(–1.5)=–2.
FIX(числовое выражение)– усечение числа до целого.
Примеры: FIX(1.2)=FIX(1.9)= FIX(1.5)=1; FIX(–1.2)=FIX(–1.5)=–1.
Тригонометрические функции
ATN(числовое выражение)– арктангенс числа.
COS(числовое выражение)– косинус угла, заданного в радианах.
SIN(числовое выражение) – синус угла, заданного в радианах.
TAN(числовое выражение)– тангенс угла, заданного в радианах.
Степенные функции
EXP(числовое выражение)– основание натурального логарифма в степени заданного аргумента (ex).
LOG(числовое выражение)– натуральный логарифм числа.
SQR(числовое выражение)– квадратный корень числа.
Прочие функции
CDBL(числовое выражение)– преобразует в число двойной точности.
CSNG(числовое выражение)– преобразует в число простой точности.
RND( )– вырабатывает псевдослучайное число обычной точности в диапазоне от 0 до 1.
TIMER– выдает число секунд с полуночи в соответствии с показаниями системных часов компьютера.
TIME$– выдает в символьном виде текущее время в следующем формате времени – ЧЧ:ММ:СС (т.е. две цифры часов, две цифры минут, две цифры секунд).
Выражения. Выражения используются для вычисления формул. Участники выражения соединяются знаками операций. Выражения строятся по определенным правилам, учитывающим необходимость записи формул в строку. Вычисления в них реализуются слева-направо в последовательности, определяемой приоритетами операций. Порядок действий может быть изменен скобками.
Следующие два примера иллюстрируют правила построения выражений.
Формулы в обычной записи: Выражения на Бейсике:
XC+2.5*H/(6*K)
F4/B^(–3)+(C*A/SIN(X)–5)*8.4
П
X
A+B
