Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.89/74: Рейтинг темы: голосов - 74, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 23.11.2011
Сообщений: 11

Отличия процедур и функций

14.06.2012, 09:26. Показов 15623. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
скажите плз что такое процедуры и функции, и чем они отличаются
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.06.2012, 09:26
Ответы с готовыми решениями:

Использование процедур и функций
Использование процедур и функций. Дан интервал (с,d) и два произвольных массива Q, W размера n, k соответственно. Найти сумму отрицательных...

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

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

24
Мишка Косолапый :)
 Аватар для zuxa-zuxa
285 / 255 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
14.06.2012, 10:20
Процедура выполняет n-ные действия. Любые.
Функция нужна для подсчета чего либо.
пишется function затем имя в скобках указываем данные которые нам известны при подсчете (km:real) а за скобками то что мы должны получить в результате подсчетов. m:real;
Внутри пишем как считать.
Чтобы вызвать её пишем имя и в скобках указываем начальные величины.

Это с моих слов, а вообще это лучше прочесть тут:
тут
тут
тут
0
 Аватар для deathNC
1905 / 1016 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
14.06.2012, 23:22
zuxa-zuxa, самое важное, на мой взгляд, отличие в том, что функция возвращает значение, а процедура нет

Не по теме:

Хоть Вы это и указали, но очень в непонятной форме :)

0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33393 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 12
15.06.2012, 00:01
Процедура тоже может вернуть значение. Через Var-параметр, например. И результат, возвращаемый функцией, можно игнорировать (можно даже не присваивать его "пустой" переменной при {$X+}). А главное отличие функции от процедуры - в том, что функцию можно использовать в выражении, а процедуру - нельзя.
0
 Аватар для anonimus
2184 / 1255 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
15.06.2012, 15:15
Цитата Сообщение от deathNC Посмотреть сообщение
самое важное, на мой взгляд, отличие в том, что функция возвращает значение, а процедура нет
+1

Цитата Сообщение от zuxa-zuxa Посмотреть сообщение
Процедура выполняет n-ные действия. Любые.
Функция нужна для подсчета чего либо.
бред

Цитата Сообщение от UI Посмотреть сообщение
Процедура тоже может вернуть значение. Через Var-параметр
это немного из другой оперы, это не возвращения значения это ты в процедуру передаешь параметр по ссылке, т.е. фактически процедура работает не с копией твоей переменной а непосредственно с ней по ссылке.
0
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
15.06.2012, 15:53
Цитата Сообщение от anonimus Посмотреть сообщение
это не возвращения значения это ты в процедуру передаешь параметр по ссылке, т.е. фактически процедура работает не с копией твоей переменной а непосредственно с ней по ссылке.
Но результат то один. Конечное значение переменной. Но если так важно, чтобы переменная не участвовала в параметрах, можно воспользоваться значением out вместо var, с последующим присвоением ее переменной
0
 Аватар для anonimus
2184 / 1255 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
15.06.2012, 16:14
antikiler_, вы все не о том, ТС задал вопрос чем отличаются процедуры и функции,
отличаются они тем что функция возвращает значение, а процедура нет, как собственно и ответил deathNC, а остальное это лирика
0
15.06.2012, 16:21

Не по теме:

Цитата Сообщение от anonimus Посмотреть сообщение
а остальное это лирика
А где еще можно поговорить с умными людьми?
P.S. Вопрос ритарический....

0
 Аватар для deathNC
1905 / 1016 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
15.06.2012, 17:56
antikiler_, здесь можно
0
 Аватар для Pommity
7 / 7 / 0
Регистрация: 26.08.2008
Сообщений: 145
15.06.2012, 21:56
Основное отличие процедуры от функции в том, что процедура работает непосредственно с теми данными, которые ей переданы, она не возвращает значения, это не позволяет её использовать в выражениях.
0
1 / 1 / 0
Регистрация: 29.06.2015
Сообщений: 134
19.03.2022, 20:41
Ребята, а что тяжелее?

Я имею в виду например:
функция добавляет 2кб,
процедура добавляет 1кб.

.. хотя я вот процедуру конвертнул руками в функцию - одинаков вес.
Но мне всёже хочется прочитать мнение эксперта, что легче теоретически?
0
Модератор
4140 / 2353 / 810
Регистрация: 15.11.2015
Сообщений: 9,407
19.03.2022, 21:25
Ltybcrf, эксперты, вероятно, не захотят отвечать на такой вопрос. Если коротко - если заменить слово procedure на слово function, то "вес" останется тем же.
Если нужны тонкости, то изучай исполняемый код в дебагере.
0
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
20.03.2022, 14:24
Цитата Сообщение от Ltybcrf Посмотреть сообщение
хотя я вот процедуру конвертнул руками в функцию - одинаков вес.
а узнать можно, какими "весами" такое-то можно померить? Размер исполняемой программы?

Что за бредовые вопросы возникают последнее время?))) Откуда вообще такое берется?
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,611
21.03.2022, 02:32
Цитата Сообщение от Arcor Посмотреть сообщение
Что за бредовые вопросы возникают последнее время?
А всё оттуда же. Неучи ищут решения в помойке. Но не понимают что именно они нашли.
0
1 / 1 / 0
Регистрация: 29.06.2015
Сообщений: 134
23.03.2022, 05:32
Ltybcrf, эксперты, вероятно, не захотят отвечать на такой вопрос. Если коротко - если заменить слово procedure на слово function, то "вес" останется тем же.
Если нужны тонкости, то изучай исполняемый код в дебагере.
Спасибо за рекомендацию AzAtom с удовольствием подебажу )

Меняется вес, меняется.
В моём случае изменения слова функция на слово процедура - мало.
В случае с функцией за скобками добавляется слово ...) String/Integer.
И на весах (в свойствах исполняемого файла почемуто добавляется килобайт).

а узнать можно, какими "весами" такое-то можно померить? Размер исполняемой программы?
Тем кто уже всё знает и от этого злоба или ненависть мешает обсуждать такое маааленькое явление как 1 килобайт, не место в таком уважаемм месте как Delphi для начинающих!
Arcor и northener, Вам хватило времени оскорбить новичка, представить себя как экспертов, а пользы 0.
Задам вопрос Аssembler-щику знакомому, почему слово ...) String/Integer в функции добавляет килобайт и напишу ответ.

А всё оттуда же. Неучи ищут решения в помойке.
Я себя и считаю новичком у меня написано уже 18 программ продавая которые, за прошлый год, принесли мне 2 ляма рублей. Но куда мне до Вас )

Чего разнервничались?
Это же не экзамен ))) , а обычный парадокс в программировании.
0
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
23.03.2022, 11:14
еще больше цветов в сообщениях и еще больше амбиций пожалуйста
если встречный вопрос является оскорблением, ну... я хз тогда.

Кликните здесь для просмотра всего текста
да хоть девяносто семь триллиардов и восемьнадцать копеек.
0
242 / 208 / 36
Регистрация: 19.02.2021
Сообщений: 1,431
23.03.2022, 11:35
Цитата Сообщение от Ltybcrf Посмотреть сообщение
Задам вопрос Аssembler-щику знакомому, почему слово ...) String/Integer в функции добавляет килобайт и напишу ответ.
Зачем? Мы и так знаем.
Тем более, что эта информация не имеет практической пользы в прикладном программировании.
Я еще понимаю, если бы этот вопрос был задан в железячном форуме, где разрабатывается какая-нибудь прошивка.
0
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
23.03.2022, 12:28
мне тут история вспомнилась, где мне мой знакомый "прохраммист" втирал

на таком вот примере:
a = 7
b = 10

что лучше писать не так
if b > a then

а вот так
if a < b then

потому что по ASCII символ < имеет "меньший вес", чем символ >
Изображения
 
2
Модератор
 Аватар для D1973
9921 / 6457 / 2457
Регистрация: 21.01.2014
Сообщений: 27,399
Записей в блоге: 3
23.03.2022, 12:37

Arcor, зачет
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,667
Записей в блоге: 21
23.03.2022, 15:38
а еще 8-битные программы лучше 16-битных потому что в два раза меньше!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.03.2022, 15:38
Помогаю со студенческими работами здесь

Использование процедур и функций
Даны три произвольных массива Е, S, С размера n, m, k соответственно. Найти среднее геометрическое положительных элементов массива Е,...

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

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

Использование процедур и функций
1.Определить сумму и количество положительных элементов массива Xi, (i = 1,...,15) . Увеличить все отрицательные элементы на 10. 2.Дана...

Использование процедур и функций


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru