Другие языки программирования и технологии
нубский вопрос, но тем не менее осмелюсь задать. чем процедура отличается от функции. если можно на примере паскаля
приведите пару примеров. спасибо!
Функция — это подпрограмма специального вида, которая, кроме получения параметров, выполнения действий и передачи результатов работы через параметры имеет ещё одну особенность — она всегда должна возвращать результат. Вызов функции является, с точки зрения языка программирования, выражением, он может использоваться в других выражениях или в качестве правой части присваивания.
Процедура — это независимая именованная часть программы, которую после однократного описания можно многократно вызвать по имени из последующих частей программы для выполнения определенных действий.
Процедура — это независимая именованная часть программы, которую после однократного описания можно многократно вызвать по имени из последующих частей программы для выполнения определенных действий.
Процедура ничего не возвращает.
Например, процедуру можно сделать для опроса клавиатуры, или построения графика.
А вот вычисление какого-нибудь синуса - функция.
С точки зрения языка Си понятие процедуры - излишне, и для функций, не возвращающих какой-либо переменной, предусмотрен тип void. Как чел, давно уже "пересевший" на Си, я сам полагаю, что понятие процедуры излишне.
Например, процедуру можно сделать для опроса клавиатуры, или построения графика.
А вот вычисление какого-нибудь синуса - функция.
С точки зрения языка Си понятие процедуры - излишне, и для функций, не возвращающих какой-либо переменной, предусмотрен тип void. Как чел, давно уже "пересевший" на Си, я сам полагаю, что понятие процедуры излишне.
Евгений Толокольников
Важное дополнение. Процедура тоже может возвращать значение через свои параметры (объявленные как var) или изменять глобальные переменные. Функция может делать то же самое.
Процедура - это функция, которая ничего не возвращает.
Зачем её сделали отдельной сущностью - известно только Вирту, во многих языках программирования программирования нет отдельного понятия для процедур и функций, есть просто функции.
Зачем её сделали отдельной сущностью - известно только Вирту, во многих языках программирования программирования нет отдельного понятия для процедур и функций, есть просто функции.
Евгений Толокольников
В Паскале правильная терминология, см. https://ru.wikipedia.org/wiki/Подпрограмма . Но согласен, что на практике использовать разные слова для оформления процедур и функций неудобно. В Паскале вообще синтаксис неудобный.
функция это вроде как формула. Законченное действие с частью математических операторов. А процедура уже как часть программы. Содержит в себе несколько функций.
Чинга .
Это неверно. Процедура делает то же, что и функция, только не вычисляет результат.
Евгений Толокольников
Такие функции, о которых вы пишете, называются "чистыми функциями" (это понятие из функциональных языков программирования).
Вам поможет это описание процедур и функций?
http://www.win-ni.narod.ru/biblio/gl10.htm
http://www.win-ni.narod.ru/biblio/gl10.htm
Илья ответил верно, однако, так как ты вообще задаешься таким вопросом, полагаю, он тебе ничего не сказал.
Воспринимай функцию как математическую функцию. Не буквально, конечно же, ибо она может менять состояние программы, просто как аналогия
Например, f(x) = x*x
a := f(2)
[a = 4]
Как видишь, функция принимает в себя какие-то данные, каким-то образом обрабатывает, возможно, меняя состояние программы, и отдает ответ.
Процедура - такая же функция, она может менять состояние программы, однако ответа она не дает. Ты не можешь сделать a := f(2), в случае, если f - процедура.
Воспринимай функцию как математическую функцию. Не буквально, конечно же, ибо она может менять состояние программы, просто как аналогия
Например, f(x) = x*x
a := f(2)
[a = 4]
Как видишь, функция принимает в себя какие-то данные, каким-то образом обрабатывает, возможно, меняя состояние программы, и отдает ответ.
Процедура - такая же функция, она может менять состояние программы, однако ответа она не дает. Ты не можешь сделать a := f(2), в случае, если f - процедура.
Этот блядь интернет - я нихуя не понимаю
Алексус Алексус
вот ещё рядом с тобой мандавошка стоит, хохочет
Похожие вопросы
- Нубские вопросы по паскалю. *)
- Понятие процедура и понятие функция в Qbasic. Дайте определение этим понятиям пожалуйста...
- паскаль процедуры и функции
- Turbo Pascal. 2 задачи на процедуры и функции
- PASCAL. В чем отличие процедур от функций. И любую ли задачу можно решить с помощью функции?
- Как в паскале процедуру или функция сохранить в файл а потом её использовать?
- Помогите составить программу. тема "Процедуры и функции" при помощи Паскаль
- Написать на паскале одну из трех задач, использовать процедуру или функцию. Заранее спасибо!
- Процедуры и функции!!! Pascal!!!
- PascalABC. Когда применяются процедуры, вместо функций?