Арифметические выражения и встроенные функции
Арифметическое выражение представляет собой совокупность операндов: числовых констант, переменных, функций, связанных знаками арифметических операций и круглыми скобками. Арифметические выражения во много похожи на алгебраические формулы с некоторыми отличиями, определенными необходимостью записи формулы на одной строке. Перечень арифметических операций языка QB приведен в табл. 4.Кроме традиционных арифметических действий, таких как, сложение, вычитание, умножение, деление и возведение в степень, при записи арифметических выражений используются операции целочисленного деления и взятие остатка от целочисленного деления. При выполнении целочисленного деления отбрасывается дробная часть результата. Так, 46\8 равно 5, а 9\10 равно 0. Операция MOD (остаток или деление по модулю) заключается в вычислении остатка от деления двух целых чисел. Так, 46 MOD 8 равно 6, а 9 MOD 10 равно 9.
Таблица 4
Операция | Назначение | Пример |
^ | Возведение в степень | а^4 |
- | Изменение знака числа | -a |
*, / | Умножение, деление | a*b/76 |
\ | Целочисленное деление | 46\8 |
MOD | Остаток или деление по модулю | 46 MOD 8 |
+, - | Сложение, вычитание | 4+8-к1 |
Порядок выполнения действий соответствует приведенным выше приоритетам. Операции с одинаковым приоритетом выполняются слева направо. Порядок выполнения действий может изменяться только скобками. При вычислении арифметических выражений, в которые входят операнды различных типов, происходит преобразование операндов к типу операнда с наивысшей точностью.
Используемые в арифметических выражениях функции называют арифметическими встроенными функциями. Они представляют собой специальные стандартные программы (процедуры), которым передается один или несколько аргументов и которые возвращают вычисленное значение через имя функции. Полный список арифметических встроенных функций QB приводится в табл. 5.
Таблица 5
Имя функции | Результат выполнения функции |
ABS(x) | Абсолютная величина числа х |
SQR(x) | Корень квадратный из числа х>=0 |
EXP(x) | Число е (2.718282) в степени х |
LOG(x) | Натуральный логарифм числа х>0 |
SIN(x) | Синус числа х |
COS(x) | Косинус числа х |
TAN(x) | Тангенс числа х |
ATN(x) | Арктангенс числа х (от –π/2 до +π/2) |
SGN(x) | Знак числа x,результат:1, при x>0;0, при x=0; -1, при x<0 |
RND(x) | Число из случайной последовательности в диапазоне от 0 до 1. |
INT(x) | Ближайшее целое, не превосходящее х |
FIX(x) | Целая часть х |
Сделаем несколько пояснений относительно использования функцииRND(x).RND(x) –математическая функция, которая возвращает случайное число в интервале от 0 до 1. Чтобы при каждом запуске программы генерировалась разная последовательность случайных чисел, следует использовать оператор RANDOMIZETIMER. Если у функции RND(x) аргумент x≥0 или отсутствует, то возвращается следующее число из последовательности случайных чисел. Если же аргумент x<0, то функция RND(x) будет всегда возвращать одно и то же число для этого аргумента.
Обращение ко всем функциям всегда происходит по их именам, за которыми в скобках следуют аргументы. Вычисление функций в арифметическом выражении предшествует выполнению арифметических операций. Аргументом встроенной функции может быть любое арифметическое выражение.
Например:
Записать арифметическое выражение на языке QB w=abs(x^(y/x)-(y/x)^(1/3))+(y-x*z)*(cos(y)^2-z/(y-x))/(1+(y-x)^2) |
Дата добавления: 2016-05-31; просмотров: 3026;