LinuxForum.Fans
Тема

Функция! Что это за монстр?

Автор: yvsik 11 сообщений 1215 просмотров
23.01.2022 13:45 #437177

Эпилог:

И так: ответ был в одной из тем от себя, но что то там не срослось! Начну знакомство с новой темы.

Про эту тему:
Что такое функция? Кто нибудь сможет нормально, на русском, коротко и ясно дать определению этому термину?
Программисты так часто оперируют этим словом, что даже забыли это значение, о чем они говорят. Максимальный ответ будет звучать примерно так(один из ответов) Функция это ----- это функция. и вроде собеседник должен понять что это. Но поверте на слово, он так и не понял что сие значит, и начинает использовать это слово, при удобном случае, и так начинается нелегкий путь в программировании!
Сам долго вспоминал и точно знал что это такое "функция" но забыл и однажды вспомнил и дальше озвучу конечно, но мне - бы очень хотелось получить подобные ответы на этот вопрос, ну очень хочется, что думают по этому поводу остальные, и тема можно сказать вроде для холивара так подумают некоторые господа форумчане, но это не так.
Надо именно точно знать что есть: на самом деле "функция" и только потом продолжить изучение программированием заниматься.

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

И не пробуйте искать: мол тема зажженная и известная все и каждому, сам тоже начал искать и рыть инет, но что было очень неожиданно, ответы были настолько разношерстные и не имеющие ничего с этим понятием, но я все-же нашел ответ и обрадовался! и дальше на пару лет закинул программирование(обрыдло)
Посему с новыми силами решил начать все с начала и самого трудного вопроса.
Вы будете очень удивлены когда зададитесь подобным и опыт будет не напрасный

PS: Ну вроде тема понятная (хоть и первая)
высказывайте господа ваши знания, не стесняйтесь, мы выясним раз и навсегда, что это за зверь такой "функция" и когда отделим мух от котлет и жить будет спокойней и веселей!

23.01.2022 14:28 #437179

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

23.01.2022 15:48 #437180

ValentinK, пять баллов!! отличный ответ, но и ОН не принимается за то: что называется ФУНКЦИЕЙ!
Программа это не функция, видите в чем вы ошибаетесь.
холивар поехал!!!
Тогда для понимания: почему БЫ и не называть вместо программы просто, сделали функцию, и достаточно! Зачем тогда придумали ещё слово отличное от функции? Программа? А?
Видимо они чем-то отличаются, ведь так?
А в вашем детском ответе, звучит как: функция это под-программа
Попробуйте увидеть разницу. Потому мы так тяжело постигаем то что было изучено где-то пятом классе и забыто навсегда.
Поверте: вопрос не праздный совсем! Он очень важен, мы же не говорим на ложку , ну скажем ковырялка там или еще как, но ведь можем, и не только, да все что угодно можем назвать шиворот на вы ворот , и что главное понимаем-же друг друга.
Однако ваш ответ не верен в корне и это не определение этого каверза.
Дальше было сказано что функция это некая процедура действия(тут вас я заставляю задуматься) а ответ ваш верен? Может все-же есть точное определение этому слову или.... явлению

Конечно же вы почти правы, подождем ещё несколько ответов для выяснения !значения этого слова!
Например мне очень интересно \, какие ещё будут определения.
Заранее уверен, спор будет не слабый, но до истины докапаемся.

КАК пример: есть в РНР такая функция include на неё так и говорят: берем функцию инклюде и получаем результат, но в самом предложении будет изначально несколько ошибок.
Потому что, инклюде : есть результат функции которую мы не видим, мы даже можем работать и называть её функцией, но это со временем начнет нас заводить в тупик, мы её называли не своим именем ,что таковым не является и по мере вырастания в программы в самой программе будет очень много неточностей и несостыковок и вот ОНО время когда большая программа вдруг стала большой функцией и поди разбери что есть что и как !оно! само работает.
Слов конечно много, чет меня несет, но в конечном итоге я вам дам точное определение.
Подождем немного, может кто ещё чаво подскажет, тогда и продолжим.

23.01.2022 16:10 #437181

ValentinK, не кормите тролля.

23.01.2022 16:15 #437182

caspar, не будет - тролль уходит на неделю в бан.
По совокупности пунктов Правил 3.2.4, 3.2.8, 3.2.11. Заодно посидеть на [url]gramota.ru[/url] тоже не повредит.

23.01.2022 16:15 #437183
"yvsik" написал:
ValentinK, пять баллов!! отличный ответ, но и ОН не принимается за то: что называется ФУНКЦИЕЙ!
Программа это не функция, видите в чем вы ошибаетесь.

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

"yvsik" написал:
Зачем тогда придумали ещё слово отличное от функции? Программа? А?

Программа - это выполняемый на компьютере код.
Но его можно структурировать, разделить на функции.
Можно пойти дальше и применить ООП.

"yvsik" написал:
А в вашем детском ответе, звучит как: функция это под-программа
Попробуйте увидеть разницу. Потому мы так тяжело постигаем то что было изучено где-то пятом классе и забыто навсегда.

Я вам толкую, называю синоним.

"yvsik" написал:
Конечно же вы почти правы

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

"yvsik" написал:
в РНР такая функция include

include точнее - этоо директива включения другого файла. он, в свою очередь, может содержать свой набор функций.

23.01.2022 20:17 #437187
"ValentinK" написал:
include точнее - этоо директива включения другого файла

Не совсем. Это директива запуска. А вот что у вас там взлетело - кот Васька, соседская баня или заданный код - указываете уже вы сами.
P.S. В С++ это ещё и директива присоединения циклов/файлов/программ/оболочек и пр.

23.01.2022 23:41 #437190
"yvsik" написал:
Кто нибудь сможет нормально, на русском, коротко и ясно дать определению этому термину?

Фу́нкция (лат. functio — исполнение, совершение) — отношение между элементами, при котором изменение в одном элементе влечёт изменение в другом.

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

Функция (программирование)
Некоторые функции не всегда имеют имя и называются Анонимными или безымянными:
Анонимная функция

24.01.2022 18:31 #437193
ValentinK написал:
[quote=Wolfenberg][quote="ValentinK"]include точнее - этоо директива включения другого файла

Не совсем. Это директива запуска. [/quote]

https://www.google.com/search?client=firefox-b-d&q=include+%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4[/quote]
Перевод точный :)
Не знаю, как там в вэб-программированию, а в C++ эта команда (директива/функция) сообщает интерпрератору или компилятору о запуске в обработку цикла либо программного кода. При этом, если нужно включать что-то из отдельных файлов или сценариев, то их вводят отдельными параметрами либо директивой include на каждый в отдельности.

25.01.2022 03:11 #437195
"Wolfenberg" написал:
а в C++ эта команда (директива/функция) сообщает интерпрератору или компилятору о запуске в обработку цикла либо программного кода

#include в C++ включает заголовочный файл с декларациями
цикл в C++ for. while, do while
C++ tutorial

Войдите или зарегистрируйтесь, чтобы ответить.