Какие функции являются математическими функциями. Что такое функция в математике

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

Разберём пример из жизни. Рассмотрим движение автомобиля. Предположим, что он двигается с постоянной скоростью 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 » (

Менеджмент является важной частью современной социально-экономической системы. Он характеризуется воздействием субъекта в управлении на объект управления. Говоря простым языком, менеджмент — это управление.

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

Главные функции

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

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

Также стоит выделить версию, представленную американскими учёными Майклом Месконом, Майклом Альбертом и Франклином Хедоури.

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

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

Сегодня же чаще всего рассматривается вариант наличия ещё более широкого перечня функций менеджмента.

  1. Первое, что необходимо сделать — это поставить цель. (Для этого необходимо ответить на вопрос «Чего я хочу?»).
  2. Следующий этап — это планирование. Планирование заключается в поэтапном описании шагов, которые необходимы для достижения той либо иной цели.
  3. Также не следует забывать и про маркетинг. Для этого необходимо ответить на такие вопросы, как «Что у меня есть и что из этого мне может помочь или помешать на пути достижения цели?»
  4. Также следует решить вопрос и с организацией. Для этого следует ответить на вопросы о том, «Где и что располагается и как всё это лучше всего связать?»
  5. Новая информация. («Какими достижениями можно воспользоваться для того, чтобы достичь цель как можно скорее?»)
  6. Вопрос стимулирования в некоторых случаях и вовсе играет решающее значение. Для того, чтобы ответить на него, следует поставить вопрос «Что необходимо сделать для того, чтобы исполнители в точности выполнили все предписанные мною требования?». Однако вам следует помнить, что стимулирование — это не мотивация, так как мотивация представляет собой целый набор различных внутренних мотивов для отдельно взятого человека.
  7. Нельзя забывать и про вопрос координации. Координация представляет собой результаты отдельно взятых исполнителей, которые должны дать тот либо иной общий результат. Также желательно отсутствии каких-либо дополнительных доработок.
  8. Не следует забывать и про вопрос контроля. «Всё ли идёт именно так, как и запланировано?»).
  9. Анализ и учёт. (Вопросы: «Что получилось в итоге?» + «Была ли достигнута поставленная цель?» + «Что помешало, а что наоборот — помогло?» и многие другие).

Самая главная функция в менеджменте — это функция планирования.

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

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

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

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

Функция мотивации позволяет активизировать сотрудников компании для того, чтобы они работали лучше и эффективнее. Это позволит повысить продуктивность всей компании. Самый простой метод для мотивации сотрудников — это предоставление специальных денежных бонусов за достижение определённых целей.

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

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

В С++ определены в заголовочном файле функции выполняющие некоторые часто используемые математические задачи. Например, нахождение корня, возведение в степень, 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 — Математические функции в С++


В составе 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 Функция возвращает значение, округленное до ближайшего целого числа указанного числового значения.

Пожалуйста, приостановите работу AdBlock на этом сайте.

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

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

Некоторые математические функции

fabs(x) модуль числа x
sqrt(x) квадратный корень из числа x
sin(x) синус числа x (х в радианах)
cos(x) косинус числа x (х в радианах)
pow(x, y) вычисление x y
exp(x) вычисление e x
log(x) натуральный логарифм числа x
log10(x) десятичный логарифм числа x

Два важных момента.

  • Все функции возвращают значение типа double .
  • Параметры функций – вещественные числа(double ), но можно передавать и целые числа. При этом произойдёт неявное преобразование типа . Компилятор из целого числа, например 3, сделает вещественное 3.0.

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

Листинг 1.

#include #include // подключаем math.h int main (void) { int a, b, c2; scanf("%d",&a); scanf("%d",&b); c2 = a*a + b*b; printf("c = %.2f\n", sqrt(c2)); return 0; }

Вычислить синус угла ввёденного с клавиатуры. Угол вводится в градусах.

Листинг 2.

#include #include // подключаем math.h int main (void) { double alpha, sin_a, pi = 3.1415926; scanf("%lf",&alpha); alpha = alpha*pi/180; sin_a = sin(alpha); printf("%.2f\n", sin_a); return 0; }

В этой программе есть о чём поговорить. Тригонометрические функции, которые определены в math.h работают с радианной мерой угла. Людям же привычнее работать с градусами. Поэтому в данной программе мы предварительно перевели значение из градусов в радианы . Если этого не сделать, результат получится неправильным. Проверьте это самостоятельно.

Неявное преобразование типов

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

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

  1. перед передачей аргументов в функцию (как в нашем примере с корнем. Листинг 1.)
  2. выполнение арифметических операций с разными типами аргументов
  3. перед выполнением присваивания

Правила неявного преобразования типов

  • если выполняются арифметические операции с разными типами аргументов. Оба аргумента приводятся к большему типу.
    Порядок типов: int < float < double
  • при присваивании. Значение справа от оператора присваивания приводится к типу переменной слева от оператора присваивания. При этом, если больший тип присваивается меньшему, то может произойти потеря точности.

int+float будет автоматически преобразовано к float+float
float/int будет автоматически преобразовано к float/float
double*float будет преобразовано к double*double
int = double double будет преобразовано к int с потерей дробной части
float = int int будет преобразовано к float