Арифметические выражения записываются по
следующим правилам:
Нельзя опускать знак умножения между
сомножителями и ставить рядом два знака
операций.
Индексы элементов массивов
записываются в квадратных (школьный АЯ,
Pascal) или круглых (Basic) скобках.
Для обозначения переменных
используются буквы латинского алфавита.
Операции выполняются в порядке
старшинства: сначала вычисление
функций, затем возведение в степень,
потом умножение и деление и в последнюю
очередь — сложение и вычитание.
Операции одного старшинства
выполняются слева направо. Однако, в
школьном АЯ есть одно исключение из
этого правила: операции возведения в
степень выполняются справа налево. Так,
выражение 2**(3**2) в школьном АЯ
вычисляется как 2**(3**2) = 512. В языке
QBasic аналогичное выражение 2^3^2
вычисляется как (2^3)^2 = 64.
А в языке Pascal вообще не предусмотрена
операция возведения в степень, в Pascal
x^y записывается как exp(y*ln(x)),
а x^y^z как exp(exp(z*ln(y))*ln(x)).
Примеры записи
арифметических выражений
Математическая запись
Запись на школьном
алгоритмическом языке
x * y / z
x / ( y * z ) или x / y
/ z
( a**3 + b**3 ) / ( b*c )
( a[i+1] + b[i-1] ) / ( 2*x*y )
( -b + sqrt(b*b - 4*a*c)) / ( 2*a )
(x<0)
sign(x) * abs(x) ** (1/5)
0.49 * exp(a*a - b*b) + ln(cos(a*a)) ** 3
x/(1 + x*x/(3 + (2*x)**3))
Типичные ошибки в записи выражений:
5x + 1 a + sin x ((a + b)/c**3
Пропущен знак умножения между 5 и х
Аргумент x функции sin x не заключен в
скобки
Не хватает закрывающей скобки