Функция в математике?

Заинтересовался функциональным программированием, но т.к. в математике я не очень, тут же появились вопросы. Вот, например, не могу понять определение функции в математике. Википедию читал, но опять же больше вопросов, чем ответов. Объясните чайнику)
  • Вопрос задан
  • 2233 просмотра
Решения вопроса 1
@entermix
Вот у вашего учителя в классе есть журнал с фамилиями учеников и допустим, у вас в классе нет однофамильцев и родных братьев и сестер. А еще есть сами ученики, и предположим, что они все сегодня пришли в школу - никто не болеет и не прогуливает.
Понятно, что есть очень четкое соответсвие между фамилиями в журнале у учителя и живыми учениками. Каждой фамилии соответсвует какой-то конкретный ученик. Так вот это соответсвие между строчками в журнале и настоящими учениками является примером функции.

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

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

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

В математике, конечно, редко занимаются множествами учеников или фамилий, обычно это два одинаковых множества чисел, например, одно это числа на оси х, другое это числа на оси у.
Но суть та же. Каждому числу из одного множества ставят в соотвествие какое-то (но обязательно только одно! ) число из другого. Это соответсвие и называется функцией. Если это соответсвие представляет собой какое-то простое правило, то его удается записать в виде формулы: y = 5*x или y = sin(x) или еще как-нибудь, но это не обязательно, бывают функции которые нельзя записать формулой, например, есть функция которая каждому рациональныму числу ставит в соответсвие 1, а каждому иррациональному 0. Записать формулой эту функцию нельзя.

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

На практике, что касается школьной математики, это график или формула которая, для каждого аргумента (обычно, обозначается х) , позволяет найти значение функции (обычно обозначается у или f(x)).
Например, формула y = 3*x + 5 означает, что нам дана функция (то есть соответсвие) , которая каждому числу х ставит в соответсвие другое число 3х + 5.
Одному соответсвует 3*1+5 = 6,
двум - 3*2 + 5 = 11
пяти - 20 и т. д.

И еще один нюанс напоследок, если уж дочитали до этого момента, то думаю сможете и его осилить.
Вернемся к фамилиям и ученикам. К тому случаю когда одной фамилии Иванов соответсвует два ученика Иванова. Я тогда написал, что соответвие фамилия -----> ученик не функция, т. к. одной фамилии соответствует два человека. Но вот это соответсвие в обратную сторону то есть когда ученикам ставят в соответсвие фамилию: ученик ------> фамилия, будет функцией.

Каждому аргументу должно соотвествовать только одно значение, но разные аргументы могут принимать одинаковое значение (разные ученики принимают одинаковое значение - их фамилия) .
Поэтому y = x^2 - функция, хоть х = 2 соответсвует у = 4, и х = (-2) соответсвует 4.
А вот когда изучают корень из х, то строят функцию только из положительных значений то есть корень из 4 считают равным только 2, а (-2) не рассматривают, так как иначе такое соответсвие не было бы функцией и четырем соответсовало бы два значения.


https://otvet.mail.ru/question/23478783
Ответ написан
Пригласить эксперта
Ответы на вопрос 7
@alexxandr
you'll see in memory only 0xDEADFACE
функция суть отображение множества A в множество B такое, что для любого элемента из А существует, притом единственный, элемент множества В, который соответствует данному значению.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
y = x - вот вам функция зависящая от x

y = t - вот вам функция зависящая от t (времени)

y = sin(t) - вот вам синусоидальная функция зависащая от времени... ну вы поняли

Суть в том что результат работы функции зависит от аргументов.
Ответ написан
Vestail
@Vestail
Software Engineer
Функция это закон который устанавливает зависимость одного элемента(зависимого) от другого(независимого). Когда независимый элемент принимает какое-то значение, зависимый от него элемент принимает только одно единственно верное значение в соответствии с этим законом. Взять например такую зависимость y = x * x, если х примет значение 2, y будет равняться всегда только 4, а при x = 3, y = 9. То есть y полностью напрямую зависит от х и такая зависимость называется функциональная. А закон который устанавливает эту зависимость(в примере это х * х) называется функцией.
Ответ написан
Olej
@Olej
инженер, программист, преподаватель
Заинтересовался функциональным программированием, но т.к. в математике я не очень, тут же появились вопросы.


А я так думаю, что если вы не сильно дружите с математикой, то вам не стоит углубляться в функциональное программирование. Просто по той причине, что все языки функционального программирования (Lisp, Scheme, Ocaml, Haskell, Scala, ...), а щё хуже - их документация - строятся и пишутся на базе достаточно обстоятельного математического аппарата.

А свет на функциональном программировании клином не сошёлся. Это только одна из нескольких парадигм. И ещё неизвестно какая лучше...

P.S. Кстати, можете посмотреть вот это: Сравнительное обозрение языков программирования - может сразу и расхочется ... или наоборот.
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега Программирование
software engineer
Функция - это некий алгоритм, который берет данные (аргументы) и возвращает их в обработаном виде (результаты).
Например:
x = 1 + y, математическая запись f x(1+y)

В данном случае y - это данные, которые функция берет, а x = это куда она их возвращает.
В программировании данные не могут быть невнятные, они типизированы - то есть это должно быть число, строка, массив данных или еще что. Может быть и пустой тип данных, но это уже частности.
Ответ написан
@syrov
пишу программы до 99 строк
или вот еще F(x,y) =0, или 1, в случае ошибки :)
Ответ написан
@zahardzhan
Если смотреть на вещи проще, то функция в программировании - это правила, по которым из чего-то одного получается что-то другое (причем это что-то другое всегда одинаковое для одного и того же).

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

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы