Как на с писать математические функции. Математические функции Excel

В данной статье будет рассмотрена та часть математических функций, которая наиболее часто применяется в решении различных задач. С полным перечнем можно ознакомиться на вкладке «Формулы» => выпадающий список «Математические»:

Какие функции затронет статья:

Функции, связанные с округлением

Функция ОКРУГЛ

Осуществляет стандартное округление, а именно округляет число до ближайшего разряда с указанной точностью.

Синтаксис: =ОКРУГЛ (число; число_разрядов), где

  • Число – обязательный аргумент. Число либо ссылка на ячейку, его содержащую;
    • И т.д.
  • -1 – округление до десятков;
  • -2 – округление до сотен;
  • И т.д.

Пример использования:

=ОКРУГЛ
=ОКРУГЛ (5,45;1) – формула возвращает значение 5,5.
=ОКРУГЛ (5,45;3) – не меняет число, т.к. указанное число разрядов превышает его точность.
=ОКРУГЛ

Функция ОТБР

Отбрасывает дробную часть числа. Отличие от предыдущей функции заключается в том, что число по факту не округляется, а только усекается до указанного разряда.

Синтаксис: =ОТБР (число; [число_разрядов]), где

  • Число – обязательный аргумент. Число либо ссылка на ячейку с числом;
  • Число_разрядов – необязательный аргумент. Указывает, какое количество знаков после запятой необходимо оставить:
    • 0 – точность до целого числа;
    • 1 – точность до десятых долей;
    • 2 – точность до сотых долей;
    • И т.д.

Пример использования:

=ОТБР (5,45;0) – формула возвращает значение 5.
=ОТБР (5,85;0) – так же возвращает значение 5.
=ОТБР (5,45;1) – возвращает значение 5,4.
=ОТБР (5,45;3) – формула не меняет число, т.к. указанное количество разрядов превышает его точность.

Функция ОКРУГЛВВЕРХ

Производит округление до ближайшего большего по модулю числа с указанной точностью.

Синтаксис: =ОКРУГЛВВЕРХ (число; число_разрядов), где

  • Число_разрядов – обязательный аргумент. Указывает, какое количество знаков после запятой необходимо оставить:
    • 0 – округление до целого числа;
    • 1 – округление до десятых долей;
    • 2 – округление до сотых долей;
    • И т.д.

Аргумент может также принимать отрицательные числа:

  • -1 – округление до десятков;
  • -2 – округление до сотен;
  • И т.д.

Пример использования:

=ОКРУГЛВВЕРХ (5,001;0) – формула возвращает значение 6.
=ОКРУГЛВВЕРХ (-5,001;0) – формула возвращает значение -6, т.к. -6 по модулю больше, чем -5,001 по модулю.
=ОКРУГЛВВЕРХ (5,45;1) – возвращает значение 5,5.
=ОКРУГЛВВЕРХ (5,45;3) – функция не изменяет число, т.к. требуемая разрядность превышает его точность.
=ОКРУГЛВВЕРХ (5,45;-1) – формула возвращает значение 10.

Функция ОКРУГЛВНИЗ

Аналогична предыдущей функции, за исключением того, то округляет число в меньшую сторону по модулю с указанной точностью.

Пример использования:

=ОКРУГЛВНИЗ (5,99;0) – формула возвращает значение 5.
=ОКРУГЛВНИЗ (-5,99;0) – формула возвращает значение -5, т.к. -5 по модулю меньше, чем -5,99 по модулю.
=ОКРУГЛВНИЗ (5,45;1) – функция возвращает значение 5,4.
=ОКРУГЛВНИЗ (5,45;3) – не меняет число, т.к. указанная разрядность превышает его точность.
=ОКРУГЛВНИЗ (5,45;-1) – формула возвращает значение 0.

Функция ОКРУГЛТ

Округляет число до ближайшего кратного числу, заданного вторым аргументом.

Синтаксис: =ОКРУГЛТ (число; точность), где

  • Число – обязательный аргумент. Число либо ссылка на ячейку, содержащую число;
  • Точность – обязательный аргумент. Число, для которого необходимо найти кратное ближайшее к первому аргументу. В случае задания нулевого значения, функция всегда будет возвращать 0.

Знаки двух аргументов должны совпадать, иначе функция вернем ошибку.

Пример использования:

=ОКРУГЛТ
=ОКРУГЛТ (5,45; 1,45) – возвращает значение 5,8, т.к. 5,8/1,45=4 и это ближе, чем 7,25/1,45=5.
=ОКРУГЛТ (5,45;3) – формула возвращает значение 6, т.к. 6/3=2, ближе, чем 3/3=1.

Функция ОКРВВЕРХ.МАТ

Появилась в Microsoft Excel 2013. Она округляет число до ближайшего большего кратного числу, заданного вторым аргументом.

Синтаксис: =ОКРВВЕРХ.МАТ

  • Число – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение;
  • Точность – необязательный аргумент. Число, для которого необходимо найти большее кратное, наиболее приближенное к заданному числу. В случае задания данному аргументу нулевого значения, функция всегда будет возвращать 0.
  • Режим – необязательный аргумент. Принимает число. Если режим не задан либо равно нулю, то округление будет производиться до большего кратного не по модулю. Если же аргумент отличается от 0, то при округлении отрицательных чисел, большим будет считаться кратное наиболее отдаленное от нуля, т.е. по модулю.

Пример использования:

=ОКРВВЕРХ.МАТ (5,45;0) – формула возвращает значение 0.
=ОКРВВЕРХ.МАТ (5,45;4) – формула возвращает значение 8, несмотря на то, что кратное 4 ближе к 5,45.
=ОКРВВЕРХ.МАТ (-5,45;4) – формула возвращает значение -4, т.к. режим не задан, то округление производиться не по модулю.
=ОКРВВЕРХ.МАТ (-5,45;4;1) – формула возвращает значение -8, т.к. аргумент режим отличается от нуля, то округление производиться по модулю.

Функция ОКРВНИЗ.МАТ

Появилась в Microsoft Excel 2013. Она округляет число до ближайшего меньшего кратного числу, заданного вторым аргументом.

Синтаксис: =ОКРВНИЗ.МАТ (число; [точность]; [режим]), где

  • Число – обязательный аргумент. Число либо ссылка на ячейку, содержащую число;
  • Точность – необязательный аргумент. Число, для которого необходимо найти меньшее кратное, наиболее приближенное к первому аргументу. В случае задания нулевого значения, функция всегда будет возвращать 0.
  • Режим – необязательный аргумент. Принимает число. Если данное число отсутствует либо равно нулю, то округление будет производиться до меньшего кратного не по модулю. Если же аргумент отличается от 0, то при округлении отрицательных чисел, меньшим будет считаться кратное наиболее приближенное к нулю, т.е. по модулю.

Обращаем внимание на то, что третьи аргументы функций ОКРВВЕРХ.МАТ и ОКРВНИЗ.МАТ, не смотря на то, что очень похожи, все же отличаются, т.к. имеют противоположный эффект. Для избавления от путаницы можно прибегать к следующей ассоциации:

  • Если режим для функции ОКРВВЕРХ.МАТ равен 0, то направление округления к нулю, т.к. аргумент действует только на отрицательные числа;
  • Если режим для функции ОКРВНИЗ.МАТ равен 0, то направление округления от нуля.

Пример использования:

=ОКРВНИЗ.МАТ (5,45;0) – формула возвращает значение 0.
=ОКРВНИЗ.МАТ (5,45;3) – формула возвращает значение 3, несмотря на то, что кратное 6 ближе к 5,45.
=ОКРВНИЗ.МАТ (-5,45;3) – возвращает значение -6, т.к. режим не задан, то округление производиться не по модулю.
=ОКРВНИЗ.МАТ (-5,45;4;1) – функция возвращает значение -4, т.к. аргумент режим принимает не равен 0, то округление производиться по модулю.

Функция ЦЕЛОЕ

Округляет число до целого в меньшую сторону.

Синтаксис: =ЦЕЛОЕ (число), где число – обязательный аргумент, принимающий числовое значение либо ссылку на ячейку с числовым значением.

Пример использования:

=ЦЕЛОЕ (5,85) – формула вернет значение 5.
=ЦЕЛОЕ (-5,85) – вернет значение -6.

Функция ЧЁТН

Округляет число до ближайшего большего по модулю четного числа.

Синтаксис: =ЧЁТН (число), где число – обязательный аргумент. Принимает числовое значение либо ссылку на ячейку, содержащую число.

Пример использования:

=ЧЁТН (6,85) – вернет значение 8.
=ЧЁТН (-6,85) – вернет значение -8.

Функция НЕЧЁТ

Аналогична функции ЧЁТН за исключением того, что числа округляются до нечетных.

Пример использования:

=НЕЧЁТ (5,85) – вернет значение 7.
=НЕЧЁТ (-5,85) – вернет значение -7.

Суммирование и условное суммирование

Функция СУММ

Суммирует свои аргументы. Максимальное число аргументов 255.

Если функция ссылается на ячейку, диапазон ячеек или массив, содержащий текстовые либо логические значения, то такие значения игнорируются. Если какой-либо аргумент принимает константу (значение введенное руками), содержащую текстовое значение, то такой аргумент возвращает ошибку, в результате чего вся формула вернет ошибку.

Если же в качестве аргумента функции принимается константа с логическим значением, то ЛОЖЬ приравнивается к нулю, а ИСТИНА к единице.

Синтаксис: =СУММ (число1; [число2]; …), где

Пример использования:

  • В данном примере значение ячейки A5 игнорируется.

  • =СУММ (1;2;3;4;"текст") – данный вариант вернет ошибку #ЗНАЧ!, т.к. последний аргумент явно принимает текстовое значение.
  • =СУММ (ИСТИНА;ЛОЖЬ) – формула вернет значение 1.

Функция СУММПРОИЗВ

Производит суммирование произведений массивов либо диапазонов.

Если аргументы принимают диапазоны либо массивы, содержащие текстовые или логические значения, то такие значения игнорируются.

Если в аргументе явно задать логическое либо текстовое значение или ссылку на одну ячейку, содержащую такое значение, то вся формула вернет ошибку.

Синтаксис: =СУММПРОИЗВ (массив1; [массив2]; …), где

  • Массив1 – обязательный аргумент, являющийся числом либо ссылкой на ячейку, диапазон ячеек или массив, содержащих числовое значение;
  • Массив2 и последующие аргументы – необязательные аргументы, аналогичные первому.

Все аргументы функции должны иметь одинаковую размерность, т.е. если один аргумент ссылается на диапазон с 5 ячейками, то и остальные аргументы должны иметь по 5 элементов. Также должны использоваться диапазоны и массивы одних типов, т.е. горизонтальные и вертикальные массивы и диапазоны либо двумерные и одномерные массивы не могут использоваться одновременно в данной функции, иначе она возвратит ошибку. Чтобы лучше понять этот абзац, ознакомьтесь со статьей «Массивы Excel».

Пример использования:

  • В данном примере один диапазон содержит текст, но функция игнорирует данное значение и возвращает сумму произведений остальных элементов.

  • В данном случае формула возвращает ошибку, потому что, не смотря на одинаковое количество элементов в двух диапазонах, они имеют разные типы, т.е. A1:A5 – вертикальный диапазон, а B1:F1 – горизонтальный диапазон.

Функция СУММЕСЛИ

Возможно, одна из самых полезных функций, по мнению office-menu. Она производит суммирование элементов, которые соответствуют заданным условиям.

Синтаксис: =СУММЕСЛИ (диапазон_условия; критерий;[диапазон_суммирования]), где

  • диапазон_условия – обязательный атрибут. Ссылка на ячейку или диапазон ячеек, которые необходимо проверить на совпадение с условием;
  • критерий – обязательный атрибут. Содержит в себе конкретное значение либо условие для проверки. Условия типа больше, меньше, равно либо их комбинации всегда заключаются в кавычки.
  • диапазон_суммирования – необязательный атрибут. Ссылка на ячейку либо диапазон ячеек, которые необходимо просуммировать в случае, если элемент диапазона условия подходит под критерий. Если аргумент не указан, то по умолчанию он принимает значение первого аргумента. Также, если диапазон указан не правильно, т.е. для вертикального диапазона условия, указан горизонтальный диапазон суммирования, то последний заменяется на вертикальный, не меняя своего первого элемента, т.е. претерпевает транспонирование.

Пример использования:

  • В данном примере производится суммирование чисел, которые больше 2. Так как диапазон суммирования не указан, то по умолчанию принимает диапазон условия.

  • В следующем примере используются разные типы диапазонов, поэтому 3 аргумент меняет ссылку с A1:B1 на A1:A2, и функция возвращает значение 2.

  • При совместном использовании текстовых и числовых значений в диапазоне условия, проверяться будут либо те, либо другие. Рассмотрите последние два примера.

В первом случае, необходимо произвести суммирование по B1:B5, если элемент из A1:A5 больше нуля. Возвращаемое значение 4, так как текстовый элемент A3 игнорируется.

Теперь изменим условие и найдем сумму, если элементы для условия больше или равняются «а». По условиям сортировки все числа являются меньшими любым буквам, поэтому результат должен быть 5. Но так как в условии задано сравнение с текстовой строкой, то все числовые значения отбрасываются. Чтобы они учитывались, их необходимо перевести в текстовый формат. Также можно использовать массивы, для лучшего контроля перевода чисел в текст – {=СУММ(ЕСЛИ(ТЕКСТ(A1:A5;0)<="а";B1:B5;0))}.

Функция СУММЕСЛИМН

Выполняет те же действия, что и СУММЕСЛИ, но может проверять различные условия по нескольким диапазонам.

Синтаксис: =СУММЕСЛИМН (диапазон_суммирования; диапазон_условия1; критерий1; [диапазон_условия2]; [критерий2]; …), где аргументы в точности совпадают с аргументами функции СУММЕСЛИ, за исключением того, что диапазон суммирования и первая пара диапазон условия - критерий являются обязательными аргументами. Все последующие пары (от диапазон_условия2; критерий2 до диапазон_условия127; критерий127) необязательны.

Также в данной функции не происходит никаких подмен диапазонов, поэтому все заданные в функции диапазоны должны быть равны по размерности и иметь один тип, т.е. только горизонтальные либо только вертикальные.

Пример использования:

Необходимо узнать сумму ячеек, удовлетворяющих условиям:

  1. По A1:A5 больше 2;
  2. По B1:B5 меньше или равно “г”.

Таким образом, по первому критерию подходят 3 ячейки, по второму 4, но ячеек, которые подходят под оба условия две – C3 и C4. Поэтому формула вернет значение 2.

Функции, связанные с возведением в степень и извлечением корня

Функция КОРЕНЬ

Извлекает квадратный корень из числа.

Синтаксис: =КОРЕНЬ (число), где аргумент число – является числом, либо ссылкой на ячейку с числовым значением.

Пример использования:

=КОРЕНЬ (4) – функция вернет значение 2.

Если возникает необходимость извлечь из числа корень со степенью больше 2, данное число необходимо возвести в степень 1/(показатель корня). Например, для извлечения кубического корня из числа 27 необходимо применить следующую формулу: =27^(1/3) – результат 4.

Функция СУММКВРАЗН

Производит суммирование возведенных в квадрат разностей между элементами двух диапазонов либо массивов.

Синтаксис: =СУММКВРАЗН (диапазон1; диапазон2), где первый и второй аргументы являются обязательными и содержать ссылки на диапазоны либо массивы с числовыми значениями. Текстовые и логические значения игнорируются.

Вертикальные и горизонтальные диапазоны и массивы в данной функции не различаются, но должны иметь одинаковую размерность.

Пример использования:

=СУММКВРАЗН ({1;2};{0;4}) – функция вернет значение 5. Альтернативное решение =(1-0)^2+(2-4)^2.

Функция СУММКВ

Воспроизводит числа, заданные ее аргументами, в квадрат, после чего их суммирует.

Синтаксис: =СУММКВ (число1; [число2]), где число1 … число255, число, либо ссылки на ячейки и диапазоны, содержащие числовые значения. Максимальное число аргументов 255, минимальное 1. Все текстовые и логические значения игнорируются, за исключением случаев, когда они заданы явно. В последнем случае текстовые значения возвращают ошибку, логические 1 для ИСТИНА, 0 для ЛОЖЬ.

Пример использования:

=СУММКВ (2;2) – функция вернет значение 8.
=СУММКВ (2;ИСТИНА) – возвращает значение 5, так как ИСТИНА приравнивается к единице.

В данном примере текстовое значение игнорируется, так как оно задано через ссылку на диапазон.

Функция СУММСУММКВ

Возводит все элементы указанных диапазонов либо массивов в квадрат, суммирует их пары, затем выводит общую сумму.

Синтаксис: =СУММСУММКВ

Функция при обычных условиях возвращает точно такой же результат, как и функция СУММКВ. Но если в качестве элемента одного из аргументов будет указано текстовое или логическое значение, то проигнорирована будет вся пара элементов, а не только сам элемент.

Пример использования:

Рассмотрим применение функции СУММСУММКВ и СУММКВ к одним и тем же данным.

В первом случае функции возвращают один и тот же результат:

  • Алгоритм для СУММСУММКВ =(2^2+2^2) + (2^2+2^2) + (2^2+2^2);
  • Алгоритм для СУММКВ =2^2 +2 ^2 + 2^2 + 2^2 + 2^2 + 2^2.

Во втором случае функции вернут разные результаты из-за несущественных различий в алгоритме вычисления (части выделенные красным игнорируются, т.к. возвращают ошибку):

  • Алгоритм для СУММСУММКВ =(2^2+2^2) + (текст^2+2^2) + (2^2+2^2);
  • Алгоритм для СУММКВ =2^2 +2 ^2 + «текст»^2 + 2^2 + 2^2 + 2^2.

Функция СУММРАЗНКВ

Аналогична во всем функции СУММСУММКВ за исключение того, что для пар соответствующих элементов находится не сумма, а их разница.

Синтаксис: =СУММРАЗНКВ (диапазон1; диапазон2), где аргументы являются числами, либо ссылками на диапазоны или массивы.

Пример использования:

Функции случайных чисел и возможных комбинаций

Функция СЛЧИС

Возвращает случайно сгенерированное число в пределах: >=0 и <1. При использовании нескольких таких функций, возвращаемые значения не повторяются.

Синтаксис: =СЛЧИС (), функция не имеет аргументов.

Пример использования можно посмотреть в описании следующей функции.

Функция СЛУЧМЕЖДУ

Возвращает случайно сгенерированное целое число в пределах указанных границ. При использовании нескольких таких функций, возвращаемые значения могут повторяться.

Синтаксис: =СЛУЧМЕЖДУ (нижняя_граница; верхняя_граница), где аргументы являются числами, либо ссылками на ячейки, содержащие числа. Все аргументы обязательны, и представляют собой минимальное и максимальное возможные значения соответственно. Аргументы могут быть равны друг другу, но минимальная граница не может быть больше максимальной.

Пример использования:

Значение возвращаемое функцией меняется каждый раз, когда происходит изменение книги.

Если вдруг возникнет необходимость возвращать дробные числа, то это можно сделать с использованием функции СЛЧИС по следующей формуле:

СЛЧИС()*(макс_граница-мин_граница)+мин_граница

В следующем примере возвращаются 5000 произвольных значений, лежащих в диапазоне от 10 до 100. В дополнительно приведенной таблице можно посмотреть минимальные и максимальные возвращенные значения. Также для части формулы используется округление. Оно использовано для того, чтобы увеличить вероятность возврата крайних значений диапазона.

Функция ЧИСЛКОМБ

Возвращает возможное число уникальных комбинаций для определенного количества элементов из общего набора элементов.

Синтаксис: =ЧИСЛКОМБ (размер_набора; колво_элементов), где

  • размер_набора – обязательный аргумент. Число либо ссылка на ячейку, содержащую число, которое указывает, сколько элементов всего находится в наборе;
  • колво_элементов – обязательный аргумент. Число либо ссылка на ячейку, содержащую число, которое указывает, какое количество элементов из общего набора должно присутствовать в одной комбинации. Данный аргумент должен равняться либо не превышать первый.

Все аргументы должны содержать целые положительные числа.

Пример использования:

Имеется набор из 4 элементов – ABCD. Из него необходимо составить уникальные комбинации по 2 элемента, при условии что в комбинации элементы не повторяются и их расположение не имеет значения, т.е. пары AB и BA являются равнозначными.

=ЧИСЛКОМБ (4;2) – возвращаемый результат 6:

Функция ФАКТР

Возвращает факториал числа, что соответствует числу возможных вариаций упорядочивания элементов группы.

Синтаксис: =ФАКТР

Пример использования:

Имеется набор из 3 элементов – ABC, который можно упорядочить 6 разными способами:

Используем функцию, чтобы подтвердить данное количество: =ФАКТР(3) – формула возвращает значение 6.

Функции, связанные с делением

Функция ЧАСТНОЕ

Выполняет самое простое деление.

Синтаксис: =ЧАСТНОЕ (делимое; делитель), где все аргументы являются обязательными и должны представляться числами.

Пример использования:

=ЧАСТНОЕ (8;4) – возвращаемое значение 2.

Можно воспользоваться альтернативой функции: =8/2.

Функция ОСТАТ

Возвращает остаток от деления двух чисел.

Синтаксис: =ОСТАТ (делимое; делитель), где все аргументы являются обязательными и должны иметь числовое значение.

Знак остатка всегда совпадает со знаком делителя.

Пример использования:

Сама функция из-за алгоритма своего вычисления выдает результат обработки чисел с разными знаками, который возможно Вы от нее ожидать не будете. Подробнее:

=ОСТАТ (8;3) – результат выполнения функции 2.
=ОСТАТ (-8;3) – результат выполнения функции 1. Хотя скорее всего Вы будете ожидать результат 2. Так происходит из-за алгоритма функции: =делимое – делитель*ЦЕЛОЕ(делимое/делитель). В связи с тем, что ЦЕЛОЕ округляет дробные значения до меньшего целого, то результат деления (-8/3) равняется -2,6666 и, соответственно, будет округлен до -3, а не до 2, как в случае с положительными числами. Чтобы избавиться от такого эффекта необходимо не округлять число, а просто отбрасывать дробную часть: =делимое – делитель*ОТБР(делимое/делитель).
=-8-3*ОТБР(-8/3) – результат -2.
=ОСТАТ (-8;-3) – функция вернет результат -2.

Функция НОД

Вычисляет наибольший общий делитель для всех аргументов, на который они делятся без остатка. Наибольший делитель всегда целое число.

Синтаксис:

=НОД (число1; [число2]; …). Максимальное число аргументов 255, минимальное 1. Аргументы являются числами, ссылками на ячейки или диапазонами ячеек, которые содержат числа. Значения аргументов должны быть всегда положительными числами.

Пример использования:

=НОД (8;4) – результат выполнения 4.
=НОД (6;4) – результат выполнения 2.

Функция НОК

Вычисляет наименьшее общее кратное для всех аргументов.

Синтаксис и описание аргументов аналогичны функции НОД.

Пример использования:

=НОК (8;4) – результат выполнения 8.
=НОК (6;4) – результат выполнения 12.

Преобразование чисел

Функция ABS

Возвращает модуль числа.

Синтаксис:

=ABS (число), где число обязательный аргумент, являющийся числом либо ссылкой на ячейку, содержащую число.

Пример использования:

=ABS (-4) – результат 4.

Функция РИМСКОЕ

Преобразует число в строку, представляющую римское число.

Синтаксис: =РИМСКОЕ (число; [формат]), где

  • Число – обязательный аргумент. Положительное число либо ссылка на ячейку с положительным числом. Если число дробное, то дробная часть отсекается;
  • Формат – необязательный аргумент. По умолчанию принимает значение 0. Возможные значения:
    • 0 – классическое представление римских чисел;
    • От 1 до 3 – наглядные форматы представления длинных римских чисел;
    • 4 – упрощенный вариант представления длинных римских чисел;
    • ИСТИНА - аналогично 0;
    • ЛОЖЬ – аналогично 4.

Пример использования:

=РИМСКОЕ (999;0) – результат «CMXCIX»;
=РИМСКОЕ (999;1) – результат «LMVLIV»;
=РИМСКОЕ (999;2) – возвращает «XMIX»;
=РИМСКОЕ (999;3) – результат «VMIV»;
=РИМСКОЕ (999;4) – результат «IM»;
=РИМСКОЕ (999;ИСТИНА) – результат «CMXCIX»;
=РИМСКОЕ (999;ЛОЖЬ) – результат «IM».

Иные функции

Функция ЗНАК

Проверяет знак числа и возвращает значение:

  • -1 – для отрицательных чисел;
  • 0 – если число равняется 0;
  • 1 – для положительных чисел.

Синтаксис: =ЗНАК (число), где число – обязательный аргумент, являющийся числом либо ссылкой на ячейку, содержащую числовое значение.

Пример использования:

=ЗНАК (-14) – возвращается значение -1.

Функция ПИ

Возвращает значение числа пи, округленное до 14 знаков после запятой – 3,14159265358979.

Синтаксис: =ПИ ().

Функция ПРОИЗВЕД

Вычисляет произведение всех своих аргументов. Максимальное число аргументов 255.

Если функция ссылается на ячейку, диапазон ячеек или массив, содержащий текстовые либо логические значения, то такие значения игнорируются. Если какой-либо аргумент явно принимает текстовое значение, то он вызывает ошибку. Если же аргумент явно принимает логическое значением, то ЛОЖЬ приравнивается к нулю, а ИСТИНА к единице.

Синтаксис: =ПРОИЗВЕД (число1; [число2]; …), где

  • Число1 – обязательный аргумент, являющийся числом либо ссылкой на ячейку или диапазон ячеек, содержащих число;
  • Число2 и последующие аргументы – необязательные аргументы, аналогичные первому.

Пример использования:

В данном примере видно, что текстовые и логические значения никак не влияют на конечный результат формулы.

Альтернатива использования данной функции - символ звездочки: =2*3*4

Функция ПРОМЕЖУТОЧНЫЕ.ИТОГИ()

Данная функция предназначена для работы со структурой промежуточных итогов. Ознакомиться с применением такой структуры можно в соответствующей статье категории Уверенное использование Excel на нашем сайте.

Во время задания подобной структуры, рассматриваемая функция создается автоматически. Смысл ее использования таков, что она игнорирует значения в ячейках, высчитанные с использованием промежуточных итогов. Рассмотрим синтаксис и пример использования.

Синтаксис: =ПРОМЕЖУТОЧНЫЕ.ИТОГИ (номер_функции; ссылка1; [ссылка2]; ...), где

  • номер_функции – обязательный аргумент. Число от 1 до 11 либо от 101 до 111, указывающее на то, какую функцию использовать для расчета и в каком режиме (подробнее читайте ниже);
  • ссылка1 и последующие ссылки – ссылки на ячейки или диапазоны ячеек, содержащие значения для расчета. Минимальное количество ссылок - 1, максимальное - 254.

Соотношение номера функции с конкретной функцией:

  • 1 – СРЗНАЧ;
  • 2 – СЧЁТ;
  • 3 – СЧЁТЗ;
  • 4 – МАКС;
  • 5 – МИН;
  • 6 – ПРОИЗВЕД;
  • 7 – СТАНДОТКЛОН;
  • 8 – СТАНДОТКЛОНП;
  • 9 – СУММ;
  • 10 – ДИСП;
  • 11 – ДИСПР.

Если к описанным номерам прибавить 100 (т.е. вместо 1 указать 101 и т.д.), то они все равно будут указывать на те же функции. Но отличие заключается в том, что во втором варианте, при скрытие строк, те ячейки, указанные в ссылках, которые будут находится в скрытых строках, участвовать в подсчете не будут.

Пример использования:

Используем структуру промежуточных итогов, которую мы применяли в одноименной статье. Добавим к ней средний результат по всем агентам за каждый квартал. Для того, чтобы корректно применить функцию СРЗНАЧ для имеющихся значений, нам пришлось бы указать 3 отдельных диапазона, чтобы не принимать в расчет промежуточные значение. Это не составить проблем, если данных не много, но если таблица большая, то выделять каждый диапазон будет проблематично. В данной ситуации лучше применить функцию ПРОМЕЖУТОЧНЫЕ.ИТОГИ, т.к она проигнорирует все ненужные ячейки. Обратите внимание на изображение. Разница очевидна, что второй пример использовать гораздо удобнее при одинаковых результатах функций. Также можно не беспокоиться о добавлении в будущем других строк с итогами.

Понятие функции в математике появилось не просто так. Давайте разберемся, зачем придумали функцию и как с ней можно работать.

Разберём пример из жизни. Рассмотрим движение автомобиля. Предположим, что он двигается с постоянной скоростью 60 км/ч .

То, что автомобиль двигается с постоянной скоростью 60 км/ч означает, что автомобиль проезжает 60 км за 1 час .

Зададим себе вопрос: «Сколько километров проедет автомобиль за 2 часа ?».

Очевидно, чтобы найти, сколько километров пройдет автомобиль за 2 часа , нужно 60 умножить на 2 . Мы получим, что за 2 часа автомобиль проедет 120 км .

Составим таблицу, в которой укажем какое расстояние проедет автомобиль за разное время при постоянной скорости 60 км/ч .

Если внимательно изучить таблицу станет очевидно, что между временем автомобиля в пути и пройденным расстоянием есть четкая зависимость.

Обозначим за «x » время автомобиля в пути.

Обозначим за «y » расстояние, пройденное автомобилем.

Запишем зависимость «y » (расстояния) от «x » (времени в пути автомобиля).

Давайте убедимся, что мы правильно записали зависимость пройденного расстояния от времени в пути.

Рассчитаем по записанной формуле, сколько пройдет автомобиль за 1 ч . То есть подставим в формулу «y = 60 · x » значение x = 1 .

y = 60 · 1 = 60(км) — пройдёт автомобиль за 1 час . Это совпадает с нашими расчетами ранее.

Теперь рассчитаем для x = 2 .
y = 60 · 2 = 120(км) — пройдёт автомобиль за 2 часа .

Теперь вместо «y » запишем обозначение «y(x) ». Такая запись означает, что «y » зависит от «x ».

Окончательная запись нашей функции, которая показывает зависимость пройденного автомобилем расстояния от времени в пути, выглядит следующим образом:


Запомните!

Функцией называют зависимость «y » от «x ».

  • «x » называют переменной или аргументом функции.
  • «y » называют зависимой переменной или значением функции.

Запись функции в виде «y(x) = 60x » называют формульным способом задания функции.

Конечно, нужно понимать, что функция «y(x) = 60x » — это не единственная в мире функция. В математике бесконечное множество самых разнообразных функций.

Примеры других функций:

  • y(x) = 2x
  • y(x) = −5x + 2
  • y(x) = 12x 2 −1

Единственное, что объединяет все функции, это то, что они показывают зависимость значения функция («y ») от её аргумента («x »).

Способы задания функции

Существуют три основных способа задания функции. Все способы задания функции в математике тесно связаны друг с другом.

Задание функции формулой

Через формульный способ задания функции всегда можно сразу по конкретному значению аргумента «x » найти значение функции «y ».

Например, рассмотрим функцию, заданную формульным способом.

Найдем значение функции «y » при x = 0 . Для этого подставим в формулу вместо «x »
число «0 ».

Запишем расчет следующим образом.

y(0) = 32 · 0 + 5 = 5

Таким же образом найдем значения «y » при x = 1 и при x = 2 .

Найдем значение «y » при x = 1 .

y(1) = 32 · 1 + 5 = 37

Теперь найдем значение «y » при x = 2 .

y(2) = 32 · 2 + 5 = 64 + 5 = 69

Табличный способ задания функции

С табличным способом задания функции мы уже встречались, когда расписывали , которая описывает движение автомобиля «y(x) = 60x ».

Любую функцию можно записать с помощью таблицы. Для этого достаточно найти несколько значений «y » для произвольно выбранных значений «x ».

Рассмотрим функцию

Найдем значения «y » при x = −1 , x = 0 и x = 1 .

Важно!

Будьте внимательны, когда подставляете значение «x » в функцию,
у которой перед «x » есть минус.

Нельзя терять знак минуса, который стоит перед «x ».

При подстановки отрицательного числа в функцию вместо «x » обязательно заключайте отрицательное число в скобки. Не забывайте использовать правило знаков .

Подставим в функцию «y(x) = −x + 4 » вместо «x » отрицательное число «−1 ».

Неправильно

Правильно

Теперь для функции «y(x) = −x + 4 » найдем значения «y » при x = 0 и x = 1 .

y(0) = −0 + 4 = 4


y(1) = −1 + 4 = 3

Запишем полученные результаты в таблицу. Таким образом мы получили табличный способ задания функции «y(x) = −x + 4 ».

x y
−1 5
0 4
1 3

Графический способ задания функции

Теперь давайте разберемся, что называют графиком функции и как его построить.

Прежде чем перейти к изучению графического способа задания функции обязательно вспомните, что называют прямоугольной системой координат .

Рассмотрим функцию «y(x) = −2x + 1 ».

Найдем несколько значений «y » для произвольных «x ». Например, для x = −1 ,
x = 0 и x = 1 .

Результаты запишем в таблицу.

Каждая пара значений «x » и «y » — это координаты точек по оси «Ox » (


В составе MQL4 имеются математические и тригонометрические функции. Использование большинства из них не вызывает никаких затруднений. Например, функция MathMax() возвращает максимальное из двух числовых значений, указанных в списке параметров вызова функции. Использование других функций требует определённой внимательности и вдумчивости. Рассмотрим одну из таких функций.

Функция MathFloor()

double MathFloor (double x )

Функция возвращает числовое значение, представляющее наибольшее целое число, которое меньше или равно x.

Параметры:

x - числовое значение.

Обратите внимание, значение, возвращаемое функцией, является действительным числом (типа double), в то же время в назначении функции указано, что функция возвращает целое число. Это нужно понимать так, что функция возвращает действительное число, у которого во всех разрядах после разделительной точки указаны нули. Например, функция MathFloor() может вернуть 37.0 (положительное число типа double) или -4.0 (отрицательное число типа double).

В описании также указано, что функция возвращает максимальное из возможных чисел, которое меньше заданного. Например, если значение передаваемого параметра х равно 13.5, то максимальное действительное число, имеющее после разделительной только нули, равно 13.0. Если же в вызове функции указано отрицательное число -13.5, то максимальное меньшее целое число равно -14.0. Таким образом, изменение знака передаваемого параметра приводит к разным результатам, а именно, получаемые значения не равны по модулю.

В некоторых случаях использование подобных функций оказывается очень удобным. Для примера рассмотрим фрагмент расчёта количества лотов для новых ордеров:

int Percent = 30 ; // % свободных средств
double Free = AccountFreeMargin () ; // Свободные средства
double One_Lot = MarketInfo (Symb , MODE_MARGINREQUIRED ) ; //Стоим. 1 лота
double Step = MarketInfo (Symb , MODE_LOTSTEP ) ; // Шаг изменен размера

double Lots_New = MathFloor (Free * Percent /100 /One_Lot/ Step ) * Step ;

Значение переменной Percent задаётся пользователем. В данном случае пользователь выделил для новых ордеров 30% свободных средств. В соответствии с правилами, установленными дилинговым центром, правильно вычисленное количество лотов должно быть кратно минимальному шагу изменения размера лотов (Step). Для расчёта необходимы также значения свободных средств на счёте (Free) и стоимости одного лота (One_Lot).

Рассмотрим логику рассуждений программиста, составившего формулу для расчёта искомого количества лотов Lots_New для новых ордеров. Используем для наглядности численные значения переменных. Пусть Free = 5000.0, One_Lot = 1360.0 (в большинстве ДЦ стоимость 1 лота для валютной пары, в знаменателе которой USD, пропорциональна цене по валютному инструменту), Step = 0.1. В этом случае программную строку для вычисления Lots_New можно переписать так:

Lots_New = MathFloor(5000.0*30/100/1360.0/0.1)*0.1;

Значением выражения 5000.0*30/100 является количество средств, выделенных пользователем для открытия нового ордера. В данном случае стоимость нового ордера может достигать 1500.0. Потратив все эти средства можно открыть один ордер, количество лотов у которого равно 1500.0 / 1360.0 = 1.102941. Однако дилинговый центр не примет заявку на такое количество лотов, т.к. минимальный шаг (в большинстве дилинговых центров) Step = 0.1. Для вычисления искомого количества лотов необходимо отбросить "лишние" цифры в дробной части и заменить их нулями.

Для этого можно воспользоваться рассматриваемой математической функцией:

Lots_New = MathFloor(1.102941/0.1)*0.1;

Результатом вычисления MathFloor(1.102941/0.1) будет число 11.0, а вычисленным значением переменной Lots_New - число 1.1 лота. Это значение соответствует правилам, установленным дилинговым центром, поэтому его можно использовать как заявляемое количество лотов для новых ордеров.

Математические функции

или к разделу "Справка" в редакторе MetaEditor.
Функция Краткое описание
MathAbs Функция возвращает абсолютное значение (значение по модулю) переданного ей числа.
MathArccos Функция возвращает значение арккосинуса x в диапазоне 0 к π в радианах. Если x меньше -1 или больше 1, функция возвращает NaN (неопределенное значение)
MathArcsin Функция возвращает арксинус x в диапазоне от -π/2 до π/2 радианов. Если x -, меньше -1 или больше 1, функция возвращает NaN (неопределенное значение).
MathArctan Функция возвращает арктангенс x . Если x равен 0, функция возвращает 0. MathArctan возвращает значение в диапазоне от -π/2 до π/2 радианов.
MathCeil Функция возвращает числовое значение, представляющую наименьшее целое число, которое больше или равно x .
MathCos Функция возвращает косинус угла.
MathExp Функция возвращает значение числа e в степени d . При переполнении функция возвращает INF (бесконечность), в случае потери порядка MathExp возвращает 0.
MathFloor Функция возвращает числовое значение, представляющее наибольшее целое число, которое меньше или равно x .
MathLog Функции возвращают натуральный логарифм x в случае успеха. Если x отрицателен, функция возвращает NaN (неопределенное значение). Если x равен 0, функция возвращает INF (бесконечность).
MathMax Функция возвращает максимальное из двух числовых значений.
MathMin Функция возвращает минимальное из двух числовых значений.
MathMod Функция возвращает вещественный остаток от деления двух чисел. Функция MathMod рассчитывает вещественный остаток f от x / y таким образом, что x = i * y + f , где i является целым числом, f имеет тот же знак, что и x , и абсолютное значение f меньше, чем абсолютное значение y .
MathPow Функция возвращает значение основания, возведенного в указанную степень.
MathRand Функция возвращает псевдослучайное целое число в дипазоне от 0 до 32767. Перед первым вызовом функции необходимо использовать функцию MathSrand , чтобы перевести генератор псевдослучайных чисел в начальное состояние
MathRound Функция возвращает значение, округленное до ближайшего целого числа указанного числового значения.

В С++ определены в заголовочном файле функции выполняющие некоторые часто используемые математические задачи. Например, нахождение корня, возведение в степень, sin() , cos() и многие другие. В таблице 1 показаны основные математические функций, прототипы которых содержатся в заголовочном файле .

Таблица 1 — Математические функции в С++
Функция Описание Пример
abs(a) модуль или абсолютное значение от а abs(-3.0)= 3.0
abs(5.0)= 5.0
sqrt(a) корень квадратный из а, причём а не отрицательно sqrt(9.0)=3.0
pow(a, b) возведение а в степень b pow(2,3)=8
ceil(a) округление а до наименьшего целого, но не меньше чем а ceil(2.3)=3.0
ceil(-2.3)=-2.0
floor(a) округление а до наибольшего целого, но не больше чем а floor(12.4)=12
floor(-2.9)=-3
fmod(a, b) вычисление остатка от a/b fmod(4.4, 7.5) = 4.4
fmod(7.5, 4.4) = 3.1
exp(a) вычисление экспоненты е а exp(0)=1
sin(a) a задаётся в радианах
cos(a) a задаётся в радианах
log(a) натуральный логарифм a (основанием является экспонента) log(1.0)=0.0
log10(a) десятичный логарифм а Log10(10)=1
asin(a) арксинус a , где -1.0 < а < 1.0 asin(1)=1.5708

Необходимо запомнить то, что операнды данных функций всегда должны быть вещественными, то есть a и b числа с плавающей точкой. Это связано с тем, что существует несколько экземпляров перегруженных функций, соответствующих списку аргументов. Тему перегруженные функции рассмотрим немного позже, а пока надо запомнить, что a и b числа с плавающей точкой. Разработаем программу, которая будет использовать математические функции.

// math_func.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include #include << "log10(10) = " << log10(10.0) << endl; // логарифм десятичный cout << "log10(1) = " << log10(1.0) << endl; cout << "log(2.718281) = " << log(2.718281) << endl; // натуральный логарифм(по основанию экспоненты) exp = 2.718281 cout << "sqrt(9) = " << sqrt(9.0) << endl; // корень квадратный cout << "pow(2,3) = " << pow(2.0,3.0) << endl; // два в кубе cout << "abs(0) = " << abs(0.0) << endl; // модуль от нуля cout << "abs(-5) = " << abs(-5.0) << endl; cout << "ceil(3.14) = " << ceil(3.14) << endl; // округление 3.14 до наименьшего целого, но не меньше чем 3.14 cout << "ceil(-2.4) = " << ceil(-2.4) << endl; // округление -2.4 до наименьшего целого, но не меньше чем -2.4 cout << "floor(3.14) = " << floor(3.14) << endl; // округление 3.14 до наибольшего целого, но не больше чем 3.14 cout << "floor(-2.4) = " << floor(-2.4) << endl; // округление -2.4 до наибольшего целого, но не больше чем -2.4 cout << "fmod(2.4/2.0) = " << fmod(2.4,2.0) << endl; // остаток от деления 2.4/2 system("pause"); return 0; }

// код Code::Blocks

// код Dev-C++

// math_func.cpp: определяет точку входа для консольного приложения. #include #include using namespace std; int main(int argc, char* argv) { cout << "log10(10) = " << log10(10.0) << endl; // логарифм десятичный cout << "log10(1) = " << log10(1.0) << endl; cout << "log(2.718281) = " << log(2.718281) << endl; // натуральный логарифм(по основанию экспоненты) exp = 2.718281 cout << "sqrt(9) = " << sqrt(9.0) << endl; // корень квадратный cout << "pow(2,3) = " << pow(2.0,3.0) << endl; // два в кубе cout << "abs(0) = " << abs(0.0) << endl; // модуль от нуля cout << "abs(-5) = " << abs(-5.0) << endl; cout << "ceil(3.14) = " << ceil(3.14) << endl; // округление 3.14 до наименьшего целого, но не меньше чем 3.14 cout << "ceil(-2.4) = " << ceil(-2.4) << endl; // округление -2.4 до наименьшего целого, но не меньше чем -2.4 cout << "floor(3.14) = " << floor(3.14) << endl; // округление 3.14 до наибольшего целого, но не больше чем 3.14 cout << "floor(-2.4) = " << floor(-2.4) << endl; // округление -2.4 до наибольшего целого, но не больше чем -2.4 cout << "fmod(2.4/2.0) = " << fmod(2.4,2.0) << endl; // остаток от деления 2.4/2 return 0; }

Итак, чтобы воспользоваться данными функциями необходимо подключить заголовочный файл как в строке 5 , после чего можно использовать любую из функций, прототипы которых находятся в этом заголовочном файле. Результат работы программы (см. Рисунок 1).

Log10(10) = 1 log10(1) = 0 log(2.718281) = 1 sqrt(9) = 3 pow(2,3) = 8 abs(0) = 0 abs(-5) = 5 ceil(3.14) = 4 ceil(-2.4) = -2 floor(3.14) = 3 floor(-2.4) = -3 fmod(2.4/2.0) = 0.4

Рисунок 1 — Математические функции в С++

Чтобы увидеть полный перечень функций в данном заголовочном файле, просто откройте его. Сделать это можно либо через поиск, либо через обозреватель решений , если программируете в MVS (см. Рисунок 2). В «Обозревателе решений » открываем вложенный каталог «Внешние зависимости «, в нём находим файл cmath . Открыв его, можно увидеть полный список математических функций.

Рисунок 2 — Математические функции в С++

Открыть заголовочный файл можно, нажав правой кнопкой мыши по его имени, как показано на рисунке 3. В появившемся окне выбираем пункт Открыть документ .

Рисунок 3 — Математические функции в С++

Понятие функции – одно из основных в математике.

На уроках математики вы часто слышите это слово. Вы строите графики функций, занимаетесь исследованием функции, находите наибольшее или наименьшее значение функции. Но для понимания всех этих действий давайте определим, что такое функция.

Определение функции можно дать несколькими способами. Все они будут дополнять друг друга.

1. Функция – это зависимость одной переменной величины от другой . Другими словами, взаимосвязь между величинами.

Любой физический закон, любая формула отражает такую взаимосвязь величин. Например, формула – это зависимость давления жидкости от глубины .

Чем больше глубина, тем больше давление жидкости. Можно сказать, что давление жидкости является функцией от глубины, на которой его измеряют.

Знакомое вам обозначение как раз и выражает идею такой зависимости одной величины от другой. Величина у зависит от величины по определенному закону, или правилу, обозначаемому .

Другими словами: меняем (независимую переменную, или аргумент ) – и по определенному правилу меняется .

Совсем необязательно обозначать переменные и . Например, – зависимость длины от температуры , то есть закон теплового расширения. Сама запись означает, что величина зависит от .

2. Можно дать и другое определение.

Функция – это определенное действие над переменной.

Это означает, что мы берем величину , делаем с ней определенное действие (например, возводим в квадрат или вычисляем ее логарифм) – и получаем величину .

В технической литературе встречается определение функции как устройства, на вход которого подается – а на выходе получается .

Итак, функция – это действие над переменной. В этом значении слово «функция» применяется и в областях, далеких от математики. Например, можно говорить о функциях мобильного телефона, о функциях головного мозга или функциях депутата. Во всех этих случаях речь идет именно о совершаемых действиях.

3. Дадим еще одно определение функции – то, что чаще всего встречается в учебниках.

Функция – это соответствие между двумя множествами, причем каждому элементу первого множества соответствует один и только один элемент второго множества.

Например, функция каждому действительному числу ставит в соответствие число в два раза большее, чем .

Повторим еще раз: каждому элементу множества по определенному правилу мы ставим в соответствие элемент множества . Множество называется областью определения функции . Множество – областью значений .

Но зачем здесь такое длинное уточнение: «каждому элементу первого множества соответствует один и только один элемент второго»? Оказывается, что соответствия между множествами тоже бывают разные.

Рассмотрим в качестве примера соответствие между двумя множествами – гражданами России, у которых есть паспорта, и номерами их паспортов. Ясно, что это соответствие взаимно-однозначное – у каждого гражданина только один российский паспорт. И наоборот – по номеру паспорта можно найти человека.

В математике тоже есть такие взаимно-однозначные функции. Например, линейная функция . Каждому значению соответствует одно и только одно значение . И наоборот – зная , можно однозначно найти .

Могут быть и другие типы соответствий между множествами. Возьмем для примера компанию друзей и месяцы, в которые они родились:

Каждый человек родился в какой-то определенный месяц. Но данное соответствие не является взаимно-однозначным. Например, в июне родились Сергей и Олег.

Пример такого соответствия в математике – функция . Один и тот же элемент второго множества соответствует двум разным элементам первого множества: и .

А каким должно быть соответствие между двумя множествами, чтобы оно не являлось функцией? Очень просто! Возьмем ту же компанию друзей и их хобби:

Мы видим, что в первом множестве есть элементы, которым соответствует два или три элемента из второго множества.

Очень сложно было бы описать такое соответствие математически, не правда ли?

Вот другой пример. На рисунках изображены кривые. Как вы думаете, какая из них является графиком функции, а какая – нет?

Ответ очевиден. Первая кривая – это график некоторой функции, а вторая – нет. Ведь на ней есть точки, где каждому значению соответствует не одно, а целых три значения .

Перечислим способы задания функции .

1 . С помощью формулы. Это удобный и привычный для нас способ. Например:

Это примеры функций, заданных формулами.

2 . Графический способ. Он является самым наглядным. На графике сразу видно все – возрастание и убывание функции, наибольшие и наименьшие значения, точки максимума и минимума. В следующей статье будет рассказано об исследовании функции с помощью графика.

К тому же не всегда легко вывести точную формулу функции. Например, курс доллара (то есть зависимость стоимости доллара от времени) можно показать только на графике.

3 . С помощью таблицы. С этого способа вы когда-то начинали изучение темы «Функция» - строили таблицу и только после этого – график. А при экспериментальном исследовании какой-либо новой закономерности, когда еще неизвестны ни формула, ни график, этот способ будет единственно возможным.

4 . С помощью описания. Бывает, что на разных участках функция задается разными формулами. Известная вам функция задается описанием.

Похожие публикации