Функции округления и знака
Ряд особых функций служат для выполнения операций округления числовых данных и анализа их знака.
fix(A) — возвращает массив А с элементами, округленными до ближайшего к нулю целого числа. Для комплексного А действительные и мнимые части округляются отдельно.
Примеры:
» А=[1/3 2/3: 4.99 5.01]
А =
0.3333 0.6667
4.9900 5.0100
» fix(A)
ans =
0 0
4 5
floor(A) — возвращает А с элементами, представляющими ближайшее меньшее или равное соответствующему элементу А целое число. Для комплексного А действительные и мнимые части преобразуются отдельно.
Примеры:
» А=[-1/3 2/3: 4.99 5.01]
А =
-0.33330.6667
4.99005.0100
» floor(А)
ans =
-1 0 4 5
ceil (A) — возвращает ближайшее большее или равное А целое число. Для комплексного А действительные и мнимые части округляются отдельно.
Примеры:
» а=-1.789;
» ceil (а)
ans =
-1
» а=-1.789+1*3.908;
» cei l(а)
ans =
-1.0000 + 4.0000i
rem(X,Y) — возвращает X - fix(X./Y).*Y, где fix(X./Y) — целая часть от частного X/Y.
Если операнды X и Y имеют одинаковый знак, функция rem(X, Y) возвращает тот же результат, что mod(X.Y). Однако (для положительных X и Y) rem(-x.y) = mod(-x,y)-y. Функция rem возвращает результат, находящийся между 0 и sign(X)*abs(Y). Если Y=0, функция rem возвращает NaN. Аргументы X и Y должны быть целыми числами. Из-за неточного представления в компьютере чисел с плавающей запятой использование вещественных (или комплексных) входных аргументов может привести к непредвиденным результатам.
Пример:
» Х=[25 21 23 55 3];
» Y=[4 8 23 6 4];
» rem(X.Y)
ans=
15013
round(X) — возвращает округленные до ближайшего целого элементы массива X. Для комплексного X действительные и мнимые части округляются отдельно.
Пример:
» Х=[5.675 21.6+4.897*1 2.654 55.8765];
» round(X)
ans =
6.0000 22.0000 +5.0000i 3.0000 56.0000
sign(X) — возвращает массив Y той же размерности, что и X, где каждый из элементов Y равен:
1, если соответствующий элемент X больше 0;
0, если соответствующий элемент X равен 0;
-1, если соответствующий элемент X меньше 0. Для ненулевых действительных и комплексных X — Sign(X)=X./abs(X).
Пример:
» Х=[-5 21 2 0 -3.7]:
» sign(X)
ans =
-1 1 1 0 -1