|
73 / 73 / 14
Регистрация: 15.01.2013
Сообщений: 284
|
|
Возврат значения функции26.04.2014, 22:38. Показов 46728. Ответов 26
Метки нет (Все метки)
Что такое возврат значения функции? я уже всю голову изломал, что и куда возвращается? в гугле нашёл мол возвращается результат (куда? в функцию? функция выполняет чтото, как она в себя может принимать результат) какая от этого практическая польза? ведь результат можно записать в любую переменную/переменные и потом использовать, а как это вернуть в функцию? почему вернуть, я что у ней чтото отнимал? Может мне кто-нибудь на пальцах объяснит что это такое, былбы рад увидеть примеры. Просто везде это описывается как чтото элементарное и само собой понятное, мне эта фраза абсолютно не ясна, не могу уловить логического смысла. Заранее благодарен.
0
|
|
| 26.04.2014, 22:38 | |
|
Ответы с готовыми решениями:
26
Возврат значения из функции Возврат копии значения из функции
|
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
| 26.04.2014, 22:59 | |
|
Функция получает на вход некие параметры, обрабатывает их как-то внутри и в ответ на свой вызов возвращает вызывающей стороне некоторое значение, результат своей работы.
0
|
|
|
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
|
|
| 26.04.2014, 23:00 | |
|
MELkey, что-то я вас плохо понял.Вас интересует возвращаемое значение функции?
0
|
|
|
6 / 6 / 0
Регистрация: 11.04.2012
Сообщений: 121
|
|
| 26.04.2014, 23:06 | |
|
Допустим я твой начальник. Я даю тебе какую-нибудь информацию для работы. Ты моя функция. Я тебе передаю информацию(значение), ты мне отчет(возвращаемое значение). Вот и все. Только ты сам определяешь, что передавать, а что забирать из функции.
0
|
|
|
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
|
|
| 26.04.2014, 23:10 | |
|
0
|
|
|
6 / 6 / 0
Регистрация: 11.04.2012
Сообщений: 121
|
||||||
| 26.04.2014, 23:18 | ||||||
|
Например,
1
|
||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 27.04.2014, 00:44 | ||
|
возвращается результат (куда? в функцию? - нет, в функцию уже ничего не возвращается. Она свое дело сделала и ее уже нет (пока еще раз не позовешь). А дело ее - дать тебе результат. Вернуть. Тебе. В благодарность за то, что ты ее вызвал. Твое дело - этот результат тут же схватить - записать в любую переменную/переменные и потом использовать, а как это вернуть в функцию? - а зачем? Ей от тебя уже ничего не нужно. Кроме очередного приказа. почему вернуть, я что у ней чтото отнимал? - нет. Ты ей дал - команду и параметры. "Эй, жена, дай пожрать!" - это без параметров - получай бутерброд. "Милая, приготовь курочку, как ты умеешь" - это уже с параметром (остальные передаются по-умолчанию) Ну, дальше у кого на сколько фантазии хватит, а то меня занесет... Суть в том, что в этом патриархальном варианте вы своей "функции" совершенно ничего не должны. Единственная ваша забота - создать ее. И так, чтоб она работала правильно.
3
|
||
|
73 / 73 / 14
Регистрация: 15.01.2013
Сообщений: 284
|
|
| 27.04.2014, 07:46 [ТС] | |
|
Ну про практическую пользу пока что остаётся только догадываться, потому что кроме кроме нагромаждений я мало что увидел)) Т.е. это удобно использовать только если в функции здоровенные вычисления? А зачем в return использовать детерминированные значения? что нам даёт return 0? Информацию для ОС о том что программа завершила свою работу нормально. Зачем информировать ОС о нормальной работе программы? если чтото ненормально, она сама ничего не сделает/выдаст ошибку/упадёт. Зачем в памяти/ в исходнике/ в моей голове использовать лишнее место. Я прекрасно понимаю, что всё это продумывалось не дуракими, а следовательно в этом есть какаято суть, даёт возможность облегчить жизнь программисту. Вот пока я не понял суть и полезность этого, мне трудно с этим разобраться. Пример:
Ученику физики рассказали про дефект масс, про ядерные реакции, а как работает ядерный реактор не рассказали.
0
|
|
|
Заблокирован
|
|
| 27.04.2014, 09:03 | |
|
MELkey, допустим вы хотите реализовать какую-то программу, и в ней встречается много повторяющегося кода, отличающегося одним-двумя параметрами. Вместо того, что копировать и вставлять используют функции.
Да и вообще это очень удобная вещь
1
|
|
|
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
|
||
| 27.04.2014, 09:16 | ||
|
1
|
||
|
6 / 6 / 0
Регистрация: 11.04.2012
Сообщений: 121
|
||||||
| 27.04.2014, 09:55 | ||||||
|
Конечно, функции - это очень удобная вещь в плане того, что одно и то же действие ( сколь угодно большое) можно вызывать одной строчкой и при этом сколь угодно раз. Но реальная мощь функций, как мне кажется, открывается при изучении объектно-ориентированного программирования. Когда функция является методом класса или конструктором (любого типа) действительно осознаешь всю мощь функций.
Пока просто представьте функцию как некий макрос. Грубо говоря, ввел имя функции вместе с параметрами и все автоматически делается. Удобно же. Вот тут я сделал простой пример:
Лично я изучаю программирование на С++ по книге Лафоре(помимо лекций в институте). Всем советую!
0
|
||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 27.04.2014, 10:31 | ||
![]() Добавлено через 8 минут ИМХО, топик был создан не без лукавства. Просто ТС таким образом решил заставить нас еще больше полюбить функцию, и за одно понять, за что же мы ее так любим
0
|
||
| 27.04.2014, 10:47 | |
|
0
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 27.04.2014, 10:51 | |
|
Nick Alte, Faoxis, позвольте мне обобщить ваши высказывания и свести их воедино
Реальная мощь функций открывается при изучении программирования.
0
|
|
|
6 / 6 / 0
Регистрация: 11.04.2012
Сообщений: 121
|
|
| 27.04.2014, 11:11 | |
|
Байт, позвольте уточнить - Реальная мощь функций открывается при изучении программирования на С++
![]() Но в то же время функции есть и в других языка программирования, но не во всех есть объекты. Схема рушится! Добавлено через 5 минут Nick Alte, Я же сказал, что это для меня. Как МНЕ кажется, функции выполняющие роль конструкторов, деструкторов и методов класса намного более захватывающие, чем обычные вялые функции, которые выполняют определенную последовательность действий при вызове(да да, я знаю, что методы класса делают так же, но они методы класса! ). Лично я влюбился в функции после того как познакомился с объектами. Говорю это как человек, который все еще изучает программирование в институте(6 семестр).
1
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 27.04.2014, 11:13 | ||
|
Желающие могут продолжить список...
0
|
||
| 27.04.2014, 11:13 | |
|
0
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 27.04.2014, 11:29 | ||
![]() Вы сами неявно создали метафору: функция - женщина Продолжим ее. Вы с юным пылом были очарованы первой попавшейся вам красоткой. Но уверяю вас, в мире их значительно больше! Говорю это, как человек, изучающий программирование несколько больше 6-ти семестров. А ваши эмоции делают вам честь. Чтобы достичь успехов в программировании (да и в любом деле), нужно вкладывать в дело не только серое вещество, но и сердце. Удачи!
2
|
||
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||
| 27.04.2014, 12:01 | ||
|
3
|
||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 27.04.2014, 12:19 | |
|
Не по теме: Резюмируем под музыку Имре Кальмана Добавлено через 3 минуты Не по теме: Nick Alte, Сначала не хотел портить вам такую круглую репу. Но потом подумал - все рано ее кто-нибудь испортит. Так пусть моя "спасибка" откроет новую тысячу (дай Бог, не последнюю!:)
0
|
|
| 27.04.2014, 12:19 | |
|
Помогаю со студенческими работами здесь
20
Неправильный возврат значения функции Возврат значения через параметр функции
Повторный возврат рандомного значения ,без изменения значения Возврат 2 значений из функции с одним вызовом этой же функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера 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. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|