- •Введение
- •1. Начальные сведения
- •1.1. Назначение и применение эвм
- •1.2. Этапы решения задач на эвм
- •2. Описание языка basic
- •2.1. Общая характеристика алгоритмического языка basic
- •2.2. Символы языка basic
- •2.3. Простейшие конструкции языка basic
- •Примеры записи чисел на basiCе
- •Стандартные функции
- •2.4. Арифметические выражения
- •2.5. Структура программы на языке basic
- •2.5.1. Программы линейной структуры на языке basic
- •Определение нестандартных функций оператором def fn.
- •2.5.2. Программы ветвящейся структуры
- •1) If «условие» then (или go to) n;
- •2) If «условие» then «действие»;
- •3) If «условие» then «действие 1» else «действие 2»;
- •4) If «условие 1» then
- •2.5.4. Программирование с использованием массивов.
- •Печать p-s
- •Печать t
- •Печать s(I)
- •3.Программирование с использованием подпрограмм.
- •4. Обработка графической информации
- •4.1. Графические операторы бейсика
- •4.1.1. Установка режима экрана
- •4.1.2. Оператор задания цвета
- •4.1.3. Очистка экрана
- •4.1.4. Построение точки
- •4.1.5. Построение линий и прямоугольников
- •4.1.6. Построение окружности
- •4.1.7. Заливка
- •4.1.8. Построение дуг
- •4.2. Круговая диаграмма
- •Logate строка, столбец, курсор,
- •4.3. Построение эллипса
- •4.4.Построение ломаных
- •4.5. Команды перемещения
- •4.6. Задание цвета изображений
- •4.7. Поворот изображений
- •4.8. Масштабирование изображений
- •4.9. Построение графика функции.
- •5. Программа.
- •Литература
2.3. Простейшие конструкции языка basic
Числа. Для отделения целой части числа от дробной используется точка (см. табл. 2.1).
Таблица 2.1
Примеры записи чисел на basiCе
Число |
Запись на BASICе |
Тип |
Кол-во занимаемой памяти |
Диапазон |
3,46 |
3.46 |
Фиксированная запятая |
4 байта |
от 10до 10 |
0,0058 |
58Е-4 |
Плавающая запятая |
4 байта |
от 10до 10 |
150000 |
15Е 4 |
Плавающая запятая |
4 байта |
от 10до 10 |
75 |
75 % |
Целый |
2 байта |
от -32768 до 32767 |
Переменные. Для обозначения переменных в BASICе используются имена, состоящие из буквы и цифр. Первым символом всегда является буква.
Например, A, A2, C. В качестве букв используются буквы латинского алфавита. Для целочисленных переменных, значениями которых являются целые числа, к имени добавляется знак % или &, для вещественных переменных обычной точности !, для вещественных переменных двойной точности #, для символьных переменных $.
Например, A%, A2%, C%.
Стандартные функции. Стандартные функции (см. таблицу 2.2) имеют аргумент, заключенный в круглые скобки. В качестве аргумента можно употреблять любое арифметическое выражение.
Таблица 2.2
Стандартные функции
№ |
Название функции |
Математическое определение |
Запись на BASICе |
1. 2. 3. 4. 5. 6. 7. 8.
9. 10. 11. 12. 13. |
Синус Косинус Тангенс Арктангенс Показательная функция Натуральный логарифм Десятичный логарифм Знак сигнатуры
Абсолютная величина Квадратный корень Целая часть числа Датчик случайных чисел Число π |
sin x cos x tg x arctg x e ln x lg x
|x| [x]
π |
SIN(X) COS(X) TAN(X) ATN(X) EXP(X) LOG(X) LOG(X)/LOG(10) SGN(X)
ABS(X) SQR(X) INT(X) RND(X) 4*ATN(1) |
Замечание. Аргумент функции RND можно опустить. Аргумент тригонометрической функции задается в радианах. Для перевода значения, заданного в градусах, в радианы можно использовать формулу:
<значение в радианах> = <значение в градусах> * π/180.
Для арктангенса значение угла находится в интервале (-π/2; π/2).
Для получения других обратных тригонометрических функций можно использовать формулы
arcsin(x)=arctg(x/),
arccos(x)=arctg()/x),
arcctg(x)=arctg(1/x).
2.4. Арифметические выражения
Для обозначения арифметических операций используются знаки:
“ + ” сложение, “ - “ вычитание, “ * ” умножение, “ / ” деление,
“ ^ ” возведение в степень, “ \ ” деление нацело, MOD остаток от деления.
Если в арифметическом выражении имеется несколько различных арифметических операций, то порядок их выполнения задается правилами приоритета:
1. возведение в степень.
2. умножение, деление.
3. сложение, вычитание.
Примеры записи арифметических выражений
sinx SIN(X^3)^2
X^(4/3)
(A^3+EXP(2*COS(X)))/(X^2-Y^3)^(1/3)
2.5. Структура программы на языке basic
2.5.1. Программы линейной структуры на языке basic
Линейная программа должна состоять из следующих операторов (см. рис. 2.1): ввода данных, присваивания, вывода (печать) результатов расчета. Линейный вычислительный процесс сводится к последовательным вычислениям арифметических выражений, причем последовательность вычислений полностью соответствует порядку записи математических зависимостей в постановке задачи.
Оператор-комментарий. Для облегчения восприятия и большей наглядности программы в нее целесообразно включать комментарии, которые поясняют работу отдельных частей программы, характеризуют используемые переменные и т.д.
Для записи комментариев используется оператор REM (REMARK). В этом операторе за словом REM могут быть записаны любые символы QuickBASICа. Включение операторов REM в программу никак не влияет на ее выполнение.
Оператор ввода служит для задания исходных данных при выполнении программы. Операторы вывода позволяют получить результаты выполнения программы.
Ввод осуществляется одним из двух способов:
- c использованием оператора INPUT;
- c использованием пары операторов DATA, READ.
Оператор INPUT. При использовании оператора INPUT данные вводятся с клавиатуры дисплея во время выполнения программы. Общий вид оператора
INPUT <список переменных>
Например. INPUT a, b, c1
Операторы DATA, READ. Оператор READ имеет вид
READ <список переменных>
Например. READ a, b, c1
Оператор DATA имеет вид
DATA <список констант>.
Например. DATA 1.6, -8, 1Е-3
Оператор DATA содержит данные, которые при выполнении операторов READ будут вводиться в переменные, перечисленные в списке ввода операторов READ.
Оператор RESTORE. Данные из области DATA можно считывать, повторно используя, оператор RESTORE.
Общий вид оператора
RESTORE <арифметическое выражение>.
Значение целой части арифметического выражения определяет номер данного, с которого начнется повторное считывание. Если арифметическое выражение отсутствует, осуществляется возврат к началу списка.
Пример.
DATA 10.6, 0.1, 15, 1.2
READ A, B, C, D
RESTORE
READ E, F
. . . . . . .
Оператор PRINT. Используется для вывода на экран дисплея результатов вычислений. Общий вид оператора
PRINT <список>
Список вывода может содержать имена переменных, числа, арифметические выражения и тексты. Если в списке вывода содержатся арифметические выражения, то они сначала вычисляются, а затем выводятся вычисленные значения.
Для удобства восприятия выводимых результатов экран условно разделен на 5 зон, по 14 позиций каждая, и вывод каждого следующего данного осуществляется в следующую зону. Такая форма вывода обеспечивается использованием “ , “ (запятой) в качестве разделителя в списке вывода. Такой способ вывода с использованием в качестве разделителя запятой называется выводом в зонном формате.
Если в качестве разделителя используется “ ; “, то вывод осуществляется в так называемом плотном формате, т.е. каждое следующее данное выводится после предыдущего через пробел.
Оператор присваивания. Оператор присваивания служит для присваивания переменной значения арифметического выражения и имеет вид
LET V = <арифметическое выражение>
(LET можно опустить), где V - переменная, которой присваивается значение.
При выполнении оператора присваивания вычисляется выражение в правой части и присваивается переменной в левой части V.
Оператор END. Оператор END указывает на физический конец программы. При выполнении оператора END закрываются все открытые файлы и останавливается выполнение программы.
Пример 1. Вычислить значение функции
,
где ,, m - номер варианта, n - номер группы.
Начало
Ввод
m, n
Печать
x, t, y
Конец
Рис. 2.1. Блок - схема линейного вычислительного процесса
Программа для примера 1 (см. рис. 2.1.):
REM LR-1-1, m=13, n=5
INPUT "M,N"; M,N
X=EXP(-(N/M)^(1/2))
T=LOG(M/SQR(N))+7.21
Y=(COS(X^2-SQR(T))+SIN(X-T^(1/3)))/(SIN(T-X^(1/4))^2)+1.731)
PRINT X, T, Y
END
После ввода текста программы в память ЭВМ для ее запуска нужно выбрать меню RUN и в нем команду START или Shift+F5. На экране появится текст M,N? - после чего нужно ввести значения M,N и нажать "Enter". После этого ЭВМ напечатает на экране значения X, T, Y.