Рекурсия что это. Рекурсия программирование. Рекурсия и цикл. Рекурсия с++. Для начинающих. Урок #43

  Рет қаралды 271,364

#SimpleCode

#SimpleCode

Күн бұрын

Пікірлер: 324
@eugenesidelnyk4600
@eugenesidelnyk4600 6 жыл бұрын
Мужик красава, не смотря на все свои проблемы, находит время, чтобы делать видео и объяснять программирование. Спасибо)
@arystanmuzdakhanov5843
@arystanmuzdakhanov5843 6 жыл бұрын
Я не понимаю людей которые ставят Dislike, тут все доходчиво объясняется, спасибо автору!
@Рыззе
@Рыззе 6 жыл бұрын
быдлокодеры стаят дизы)
@Nikitich1988
@Nikitich1988 6 жыл бұрын
На самом деле просто у людей паркинсон. Не всегда получается попадать.
@АлександрАлександр-и6с
@АлександрАлександр-и6с 6 жыл бұрын
Согласен. Тут видимо только дибилы не могут понять
@bat_bsv
@bat_bsv 5 жыл бұрын
это конкуренты с других каналов.
@ПавліченкоЮрій
@ПавліченкоЮрій 5 жыл бұрын
Позволь поинересоваться, вот ты год назад посмотрел этот видос. Так вот, ты стал программистом?
@ДимДимыч-ц1в
@ДимДимыч-ц1в 3 жыл бұрын
0:43 - Что такое рекурсия? 2:17 - Алгоритм стека 4:00 - Цикл while 7:00 - Условие выхода из рекурсии 7:38 - Логика работы рекурсии 12:29 - Алгоритм выхода из рекурсии Когда переменная a = 0 срабатывает return 0; затем - 17:03
@ВадимКобилянський-я3м
@ВадимКобилянський-я3м 4 жыл бұрын
Ідеальне пояснення матеріалу. Мені , Ваші, уроки дуже сильно допомагають!!! Дякую, Вам, велике за цю працю, яку ви робите 100% не із-за великої зп))) Дуже мало таких людей як Ви.😌 Ви настільки влучно пояснюєте, як то, Ви самі вчора були джуніором а сьогодні вже сенйор і фокусуєтесь саме на тих моментах які не зрозумілі для новачка)))) Ще раз, Велике Вам дякую😌
@dusk-a-stone-throw
@dusk-a-stone-throw 4 жыл бұрын
Ще не вмерла України, ні слава, ні воля, Ще нам, браття молодії, усміхнеться доля! Згинуть наші воріженьки, як роса на сонці, Запануєм і ми, браття, у своїй сторонці! Душу й тіло ми положим за нашу свободу І - покажем, що ми, браття, козацького роду! Душу й тіло ми положим за нашу свободу І - покажем, що ми, браття, козацького роду!
@EJNINE
@EJNINE 4 жыл бұрын
Огромное спасибо, обьяснено все на высшем уровне, спасибо с 1 курса института и я к вам скорее всего не один раз еще вернусь ^^
@fregat...
@fregat... Жыл бұрын
Читал книги там действительно сразу объясняется на факториале числа на огромной функции, следовательно ничего не понятно было, особенно когда не знаешь даже что такое факториал числа. По вашему курсу гораздо легче воспринимать информацию. Респект и уважуха!
@schoolAmoreBin
@schoolAmoreBin Жыл бұрын
не хочешь подружиться?
@SeshAlex
@SeshAlex 6 жыл бұрын
Лайк. Но хотелось бы, что бы вы в уроках указывали в каких случаях они используются:)) Например те же шаблоны, или inline, ну и собственно рекурсия. А то тема, мозги кипят, а к чему она применяется не поймешь. Так бы легче было.
@winsert
@winsert 4 жыл бұрын
Это основы программирования, которые в дальнейшем нужны будет для более сложной работы. Если он начнет объяснять, где это понадобится в дальнейшем, то это будет трудно понять, просто знай, что точно понадобится в будущем)
@taguhinikoghosyan613
@taguhinikoghosyan613 4 жыл бұрын
Это глобальная проблема ) никакой учитель не отвечает на этот вопрос
@QScientist
@QScientist 3 жыл бұрын
@@taguhinikoghosyan613 вообще то пихать в один урок сразу все - ничему не научишься. Тут выделили кусок, который отвечает за понимание механизма рекурсии и стэка вызовов. Есть такой принцип: делить сложное на простые части и с ними по отдельности разбираться, что автор и сделал. Можно заметить, что был предыдущий урок тоже про рекурсию, где автор рассматривал другие ее аспекты. Нормальный специалист конечно знает, где и что применяется. Видимо или вам не повезло с учителем или у вас предвзятое отношение и непонимание, как надо разбирать сложные вопросы.
@RDcrossChanel
@RDcrossChanel 3 жыл бұрын
@@QScientist думаю что всё же эффективней ученика столкнуть с проблемой, а потом уже научить как её решать, если наоборот то будут возникать вопросы "зачем?!", хотя может я и не прав. В любом случае качество уроков на безвозмездной основе на высоте.
@harpermarley5217
@harpermarley5217 3 жыл бұрын
instablaster.
@КлешОфКланс-я3в
@КлешОфКланс-я3в 5 жыл бұрын
Отличный урок! Мне, спавшему 6 часов, всё понятно с первого раза! Спасибо!!!
@ДмитрийОсипов-х1ф
@ДмитрийОсипов-х1ф 7 жыл бұрын
* Самые понятные, видео уроки по c++, на всём (RU) youtube *
@dekstor5657
@dekstor5657 6 жыл бұрын
Спасибо за уроки!!!!! Лучший учитель))) Пересматриваю этот урок второй раз, по тихоньку понимаю рекурсию. Спасибо!
@ДмитрийРоманчук-д2н
@ДмитрийРоманчук-д2н 4 жыл бұрын
Рекурсивно лайкаю уроки
@АртемКулык-у9х
@АртемКулык-у9х 7 жыл бұрын
отличные уроки!
@LenTos1337
@LenTos1337 6 жыл бұрын
Тема не самая простая, но нужно вникать. Спасибо вам большое за урок
@vicar-martyr
@vicar-martyr 4 жыл бұрын
Ставлю лайк прежде чем начинаю просмотр.
@pahimself
@pahimself 3 жыл бұрын
Не понимаю зачем ходить на курсы, если тут такие классные уроки.
@siegfriedfrei7467
@siegfriedfrei7467 9 ай бұрын
Сергей, сердечное спасибо. Изучаю программирование самостоятельно по книгам, уже много раз хотелось бросить, наткнулся на ваши уроки и изучение программирования превратилось в удовольствие, мало того, теперь понятно, что написано в книгах !
@magzhanashirbaev9390
@magzhanashirbaev9390 5 жыл бұрын
Жаль что такие каналы (образовательные) имеют менее 100 000 подписчиков и не популярны в среде молодых людей . А про игры , кино , пранки и тд в трендах. Спасибо что объясняешь такие не простые вещи . Знание сила
@kadencode5347
@kadencode5347 2 жыл бұрын
Тому-що ігри, кіно це жанр творчості. У багатьох ці жанри пов'язані з хорошими емоціями, і багатьом ці жанри запали в душу.
@barsnow
@barsnow 2 жыл бұрын
Как фармить быстрее всех? Зачем на самом деле нужны диффуза?)
@SimpleCodeIT
@SimpleCodeIT 7 жыл бұрын
#рекурсия #SimpleCode #урокипрограммирования
@mrtonomon407
@mrtonomon407 7 жыл бұрын
А почему у if не было области видимости?
@vitalybikmetov7391
@vitalybikmetov7391 3 жыл бұрын
@@mrtonomon407 потому что использовалась всего одна строка, при этом область видимости не нужна.
@globalpower6967
@globalpower6967 7 ай бұрын
У вас там ошибка! Было 6 вызовов функции, а не 7. В стеке 6 должно быть.
@globalpower6967
@globalpower6967 7 ай бұрын
Первый вызов - функция выводит 4 Второй - 3 Третий - 2 Четвертый - 1 Пятый - 0 Шестой - срабатывает условие return 0
@Firuz26
@Firuz26 7 жыл бұрын
Спасибо за урок
@SibMan54
@SibMan54 5 жыл бұрын
Автору большое спасибо, все доходчиво объясняет, я лично понимаю с полуслова!
@archiechellaut9483
@archiechellaut9483 3 жыл бұрын
Большое спасибо за урок, Сергей!
@itchyyy1529
@itchyyy1529 Жыл бұрын
Пришлось посмотреть ролик 2 раза, но в итоге я понял, спасибо огромное за ваш труд !
@rostyslavklyba1746
@rostyslavklyba1746 6 жыл бұрын
Все доступно и понятно объясняется, спасибо.
@valeriykhoma9702
@valeriykhoma9702 6 жыл бұрын
Спасибо большое за отличное объяснение!
@АлександрШкляев-ч7з
@АлександрШкляев-ч7з 5 жыл бұрын
Божееееественно!!!! Все понятно!!!! Огонь! Спасибо тебе огромное!!!
@АндрейБерилло-и7ь
@АндрейБерилло-и7ь 5 жыл бұрын
Спасибо тебе добрый человек за разъяснения!
@amaterasu_60hz
@amaterasu_60hz 2 жыл бұрын
Лучший препод которого я встречал !)) Спасибо за урок
@Nick-md4by
@Nick-md4by 3 жыл бұрын
Самое лучшее объяснение! Спасибо!
@nijatjafarguliyev
@nijatjafarguliyev 4 жыл бұрын
Спасибо! До сих про актуально.
@Евгений-к1г9е
@Евгений-к1г9е 7 жыл бұрын
Супер! Спасибо за урок
@Ermine882
@Ermine882 7 жыл бұрын
Спасибо.
@МарияДуванова-э1т
@МарияДуванова-э1т 6 жыл бұрын
Спасибо. Понятно в общих чертах.
@bulba1995
@bulba1995 2 жыл бұрын
Отличный урок , тоже смотрел про рекурсию думал что понял ,теперь понял.
@Igrogun
@Igrogun Жыл бұрын
Благодарю, спасибо Вам большое!
@elvinaustin1022
@elvinaustin1022 5 жыл бұрын
Спасибо Серега за уроки
@Ms001man
@Ms001man 6 жыл бұрын
Спасибо за урок!
@aronvitkavendish9106
@aronvitkavendish9106 5 жыл бұрын
Мне в свое время помогла понять асоция с плоской пружинкой :)
@smorodya74
@smorodya74 Жыл бұрын
Спасибо, ты очень доступно объяснил
@ВиталийСахно-ъ1р
@ВиталийСахно-ъ1р 6 жыл бұрын
Для сортировки больших массивов с рекурсией самая быстрая из всех сортировок. Она так и называется рекурсивная сортировка (Это я не для Вас пишу, а для других слушателей Ваших уроков). А Вам все равно спасибо за тонкости рекурсии, на которые я раньше не обращал внимания.
@АндрейДынер
@АндрейДынер 5 жыл бұрын
Спасибо тебе огромное за такие уроки !
@muradapayev6258
@muradapayev6258 5 жыл бұрын
Гениально объяснил!Спасибо большое!
@ДимДимыч-ц1в
@ДимДимыч-ц1в 3 жыл бұрын
int out(int a) //Функция int out с параметром a=10; { if (a < 1) //Если а=0; return 0; //Срабатывает return out(a); cout
@yujin-mayson
@yujin-mayson 5 жыл бұрын
"Если что это слово return" тут я орнул ибо думал что он пишет "четыре")))
@roockeet3460
@roockeet3460 6 ай бұрын
16:25
@tricking16
@tricking16 7 жыл бұрын
спасибо ,очень доходчиво объясняешь ,респект
@malygos1898
@malygos1898 6 жыл бұрын
Спасибо! Всё доходчиво и понятно!
@leganovich
@leganovich 3 ай бұрын
Спасибо вам большое, наконец то понял ))
@vladimirdiadichev6140
@vladimirdiadichev6140 7 жыл бұрын
Спасибо
@Vladislav3329RUS
@Vladislav3329RUS 5 жыл бұрын
Понял, в каком порядке вызываются функции из стека, а вот почему в консоли выводится первым крайнее число, а не 0, никак не допру) ладно, уверен, с помощью следующих видео разберусь. Спасибо!!!!!
@ДавидМархевка-л5й
@ДавидМархевка-л5й Жыл бұрын
ляяя это как раз таки мой главный вопрос, уже понял как? Я не могу понять...
@Vladislav3329RUS
@Vladislav3329RUS Жыл бұрын
@@ДавидМархевка-л5йс того момента уж воды утекло))) пошел во фронты вообще
@Шамиль07
@Шамиль07 Жыл бұрын
@@ДавидМархевка-л5й потому что у нас в функции есть cout который и выводит изменяющуюся переменную, пока рекурсия не дойдет до своего конца, а в конце уже функция и возвращает тот самый нолик
@modernhuman6460
@modernhuman6460 5 жыл бұрын
Огромное спасибо благодаря вам , я действительно понял рекурсию
@user-qb1oh2in3n
@user-qb1oh2in3n 6 ай бұрын
Возможно стоило сделать вывод переменной после рекурсивного вызова функции, чтобы увидеть, что такой вызов сработает после выполнения вызванной "дочерней" функции сверху. Наглядно - числа будут выводиться в обратном порядке.
@3x__
@3x__ 3 жыл бұрын
СПАСИБО ЗА УРОК!))
@DENIKgame
@DENIKgame 5 жыл бұрын
Спасибо за урок.
@OrionKropt
@OrionKropt 2 жыл бұрын
The best teacher
@dmytroboiko1
@dmytroboiko1 4 жыл бұрын
Прям понятно стало, спасибо!)
@alexandrsargsyan2202
@alexandrsargsyan2202 2 жыл бұрын
я и подписался и лайкнул не знаю чем ещё благодарить
@java9674
@java9674 5 жыл бұрын
Super uroki Respekt Bro
@ОлексійЛебедєв-ж6о
@ОлексійЛебедєв-ж6о 7 жыл бұрын
Вот ещё такой монстр :))) #include using namespace std; int func2(int); int func(int a) { cout
@sekta817
@sekta817 4 жыл бұрын
3:36 наша программка крашится 😍 🥰 😛
@sanekvelikiy
@sanekvelikiy 2 жыл бұрын
ведео гуд,спасибо
@КириллСафронов-о9д
@КириллСафронов-о9д 2 жыл бұрын
Спасибо!!!🥰🥰🥰
@nikolay94-cc4
@nikolay94-cc4 5 жыл бұрын
сложная тема,спасибо)
@НикитаТолстой-м6ъ
@НикитаТолстой-м6ъ 6 жыл бұрын
Очень доходчиво ))) Спасибо
@qaupqode4331
@qaupqode4331 6 жыл бұрын
добрий день, чий канал можете порадити по С#, бо Ви проводите курс дуже класно, але це не те що мені потрібно, моя Вам подяка авансом. !!!!!!!!
@cu1rasss
@cu1rasss 5 жыл бұрын
Спасибо!
@Chester_bell
@Chester_bell 4 жыл бұрын
"Это ноль такой"- убило))) НО уроки очень полезны)
@Nyamchik-0_0
@Nyamchik-0_0 4 жыл бұрын
Короче кто не понял смотрим фильм "Начало" с Ди Каприо...хд) не благодарите
@alexgaran5339
@alexgaran5339 4 жыл бұрын
Топ комент)
@DedeyMil
@DedeyMil 4 жыл бұрын
Топ коммент
@DedeyMil
@DedeyMil 4 жыл бұрын
👏👏👏👏
@mar_kha
@mar_kha 4 жыл бұрын
Или поиграйте с матрёшкой (внутри которой ещё матрёшка)
@семсем-к7я
@семсем-к7я 4 жыл бұрын
четко подметил
@ГусейнСалахов
@ГусейнСалахов 5 жыл бұрын
Удачи в развитии канала)))
@nello3878
@nello3878 5 жыл бұрын
Отлично учишь, спасибо! + Like + Subscribe
@ВладимирФилиппов-б3ю
@ВладимирФилиппов-б3ю 3 жыл бұрын
Из урока понял что рекурсию можно использовать в качестве задержки. Допустим когда параллельно выполняются две операции и результат первой является продолжением второй параллельно выполняющейся операции.
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
Они вроде не могут именно выполняться параллельно, предыдущая задача по идее уходит в ожидание результата работы следующей, просто скорость выполнения операций очень большая
@alienhazzard7201
@alienhazzard7201 11 ай бұрын
Что-то ты не то понял. Читай про concurrency, future / promise
@РусланКарнеенко
@РусланКарнеенко Жыл бұрын
СПАСИБО
@Дмитрий-з3ц7й
@Дмитрий-з3ц7й 3 жыл бұрын
Почему return 0 считается как вызов функции. Функция, которая последняя вызывалась была с нулём же 16:07. return 0 же результат работы foo(0).Может я чет не понимаю, отпишите те, кто шарит.
@FeinGe
@FeinGe Жыл бұрын
В пред последний вызов поступает 1, потом декрементом становится a = 0 и передается в return Foo(a), функция снова вызывается и срабатывает условие if (a < 1) return 0, что и возвращает как конечный результат функции Foo().
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
Я понял так: return 0 в данном случае считается не вызовом функции, а просто ещё одним добавлением задачи в стек
@АртёмСергеевич-в3з
@АртёмСергеевич-в3з 6 жыл бұрын
Класс !
@faustomendez6567
@faustomendez6567 6 жыл бұрын
#спасибо
@RamazanOmorov
@RamazanOmorov 4 ай бұрын
Учу Джава по вашим роликам, в просторах Ютюба нету уроков по Джава как ваши на С++. ориентируюсь на ваш контент ))). вернитесь
@mikesteinar2713
@mikesteinar2713 4 жыл бұрын
16:27 - если что, то это переполнение стека🤣
@ИоаннДейкун
@ИоаннДейкун Жыл бұрын
привет из 2023. Большое спасибо за уроки!
@user-8454null
@user-8454null Жыл бұрын
Что это значит 17:07 ?
@michaelbondarev8788
@michaelbondarev8788 4 жыл бұрын
43й урок за 2 дня, все конечно понятно но мозги кипят, будь проклят этот карантин
@pvp717
@pvp717 2 жыл бұрын
Накидал функцию которая вычисляет факториал числа передаваемого ей, в качестве закрепления понятного =) template T FactorialGenereator(T input) { T res; input--; if (input == 0) { return 1; } res = input++ * FactorialGenereator(input); return res; }
@alienhazzard7201
@alienhazzard7201 11 ай бұрын
Ну и для чего тут рекурсия? Ты б еще вычисление n-го числа Фибоначчи написал рекурсией. uint64_t fac(uint64_t n) { uint64_t ans = 1; for (unsigned i = 1; i
@alienhazzard7201
@alienhazzard7201 11 ай бұрын
input-- / input++ что это за дичь? uint64_t fac(uint64_t n) { return (n < 2) ? 1 : n * fac(n-1); }
@tobokelmaratov6024
@tobokelmaratov6024 3 жыл бұрын
Лучший
@CoolbitsVDA
@CoolbitsVDA 2 жыл бұрын
Сергей, отличные уроки. Огромное вам спасибо! По уроку с рекурсией не совсем понял, зачем функция вызывается 7-ой раз, если уже на 6-ом вызове мы передали ноль в качестве параметра. По идее return 0 должен был отработать уже на 6 вызове. И не совсем понятно, как return 0 передается в предыдущие функции. Там какой-то буфер обмена или что-то в этом роде? С остальным вроде разобрался, принцип LIFO у стека понял. Вместо тарелок можно представить магазин автомата.
@sleepyNovember_project
@sleepyNovember_project Жыл бұрын
Из-за твоего комментария я кажется понял... Она походу и так после return 0 завершается, а дальше таким образом просто идёт очищение стека
@thetraveler7779
@thetraveler7779 4 жыл бұрын
Если мы не попадаем в строку 21, где вызываем метод Foo и передаем аргументы, которая находится внутри функции Main, то как на экран выводится возвращаемое значение? Получается именно в самом конце когда доходим до 1 возвращается return 0, возвращая одним разом целиком сразу все 9 с половиной итераций? По другому вроде не получается 🤔 ,но почему тогда при точке останова всё выводится по очереди, то есть не целиком, а по одному раз оно не может дойти до 21 строки, пока не дойтёт до выхода из метода? В С# тот же самый принцип выполнения рекурсии?
@jads_channel
@jads_channel Жыл бұрын
Объясните мне только одно : почему если метод обработки тут FILO (first input last output), то функции не выдают результат в консоль в обратном порядке 0 1 2 3 4? я так понимаю, что выполняются они по принципу-первая поступила первая выполнилась, а стек очищается по принципу обратному или как?
@Роман-т8с1ь
@Роман-т8с1ь Жыл бұрын
Так cout стразу выдавал результат...
@sleepyNovember_project
@sleepyNovember_project Жыл бұрын
Я тоже именно этими вопросами задался, не понимаю
@ОлегСизов-ф4б
@ОлегСизов-ф4б 6 ай бұрын
@@sleepyNovember_project В данном случае основная работа функции (вывод числа) происходит во время заполнения стека, т.е. в прямом порядке. И уже потом в обратном порядке из стека выкидываются "отработавшие" функции. Для того, чтобы было наоборот, нужно поместить основную работу после рекурсивного вызова функции, вот так: int Foo(int a) { if (a < 1) { return 0; } a--; int result = Foo(a); // вызов функции std::cout
@АлександрКасьян-д7й
@АлександрКасьян-д7й 6 жыл бұрын
Спасибо, очень многое понятно, а есть видео с быстрой сортировкой через рекурсию?
@nanachiqq
@nanachiqq 2 жыл бұрын
вот по этой теме было бы круто дз получить, нужно немного практики чтобы понять как с этим работать
@ВолодимирПаламарчук-й1ю
@ВолодимирПаламарчук-й1ю 2 жыл бұрын
Как дз можно посчитать тот же факториал самостоятельно, а следующий урок рассматривать как объяснение дз
@МаксимМалышев-р5е
@МаксимМалышев-р5е 7 жыл бұрын
По аналогии с тарелками. Почему в консоли первым напечаталось число 4, а не число 0 ? Получается, что мы все-таки взяли тарелку с самого конца, а не с начала.
@ДмитрийФил-ъ4ж
@ДмитрийФил-ъ4ж 7 жыл бұрын
Как я понял, аналогия с тарелками относится не к выводу числа на экран, а к завершению функций.
@BobTheBuilder_2334
@BobTheBuilder_2334 7 жыл бұрын
какой тогда вообще смысл ее использования, если с циклом проще?
@tala293
@tala293 7 жыл бұрын
потому что cout стоит после декремента
@alexeysolodov9324
@alexeysolodov9324 6 жыл бұрын
Вот я тоже не очень понял, вроде стоит cout в теле и как говорилось функция зашедшая последней выполняется первой, а про то, что вывод в консоль идет в обратном как-то не сказали ни слова. P. S. Пересмотрел урок 2 раз все понятно стало, вывод на экран идет только после завершения работы самой функии, я ее материнской(главной) для себя назвал, а дочерние в нее как бы закидывают свои значения в порядке работы сверху вниз. Мне кажется было бы удобней, для понимания, нарисовать каждый верхний блок чуть меньше по ширине нижнего, чтобы было понятно, что они находятся в теле материнской. А уроки просто отличные, очень жаль, что в моем университете не было такого преподавателя!
@1nchore
@1nchore 6 жыл бұрын
Понимаю , что поздно , но может потом кто-то ещё задастся этим вопросом и найдёт на него ответ. В данном случае cout стоит перед следующим входом в рекурсию , но после декремента , поэтому числа выводятся в порядке складывания тарелок , но если cout поставить после входа в функцию , то после того , как вернётся 0 , она начнёт выходить из функций именно с той , которая была последней (сверху стека) и т.к cout после этого выхода , то она выведет число , которое было последним( сверху стека).
@wizard_still
@wizard_still 2 ай бұрын
Если рисовать потоньше функции можно и 20 функций сделать в стеке
@mikesteinar2713
@mikesteinar2713 4 жыл бұрын
15:22 КАКИЕ ВАШИ ДАКАЗАТЕЛЬСТВА!
@TheRuhaja
@TheRuhaja 3 жыл бұрын
Кто знает какого максимального значения stack может быть? И возможно ли его размер как-то регулировать? Или это просто тех возможности оперативки?
@ВананаБанана-ы7ю
@ВананаБанана-ы7ю 3 жыл бұрын
программа насчитала ~4783
@alienhazzard7201
@alienhazzard7201 11 ай бұрын
В настройках компилятора задается.
@Fakem1ner
@Fakem1ner 3 жыл бұрын
Смотрю, потому что забыл что такое рекурсия и не мог заснуть xD
@ProHolmes
@ProHolmes 2 ай бұрын
Автор тихой сапой применил однострочный if без фигурных скобок, и даже не упомянул, что так тоже можно. Пришлось гуглить, чтоб понять, что конкретно тут является телом у if.
@vmostyko
@vmostyko 4 жыл бұрын
А почему консоль 0 выводит? Там же уже return 0 должен сработать и завершить программу
@faytoom6762
@faytoom6762 3 жыл бұрын
Функция возвращает ноль, а "cout" выводит его
@marlonbrando458
@marlonbrando458 4 жыл бұрын
Заебочек спасибо!
@setoza
@setoza 6 ай бұрын
Понять не могу. 7:35 на этом тайминге он пишет if (a < 1) return 0; Почему нет никаких скобок фигурных и точек с запятой (кроме return)? И почему это работает?
@setoza
@setoza 6 ай бұрын
@@CrimAnn1662 спасибо тебе большое! И спасибо за совет с chatgpt, буду пользоваться!
@JohnSmith-es2fh
@JohnSmith-es2fh 4 жыл бұрын
то есть это почти тоже самое, что если бы я написал цикл while? или не совсем?
@егорщербанов
@егорщербанов 5 жыл бұрын
обновил visual studio 2019 при этом изменилась цветовая палитра. С ней неприятно работать, где взять конфиг с прежней цветовой палитрой.
@saidjonasrorov1721
@saidjonasrorov1721 2 жыл бұрын
хотел узнать как отреагирует переменная А при освобождение ресурса
@ВиталийСусский-я2м
@ВиталийСусский-я2м 4 жыл бұрын
сложна пока но cout
@ДжонМнацаканян-ч5э
@ДжонМнацаканян-ч5э 10 ай бұрын
Подобный цикл я реализовал в void. Подскажите правильно или нет? Или можна как то лучше оптимизировать? void Test(int a) { cout
@ОлегСизов-ф4б
@ОлегСизов-ф4б 6 ай бұрын
Да, все верно. Разве что можно вызывать Test(a - 1) и не использовать декремент
@brffclips1
@brffclips1 5 жыл бұрын
Прикольно
@mileskuwhatyr2700
@mileskuwhatyr2700 Жыл бұрын
Я немножко не поняла. Вы говорите, используем функцию стека "последний зашел, первый вышел". но тут, если параметр у функции 5, то первым зашла пятерка стала в Foo -1, то есть 4 и вывелась на экран 4. Потом 3, 2, 1, 0. То есть принцип первый зашел первый вышел??? Поясните, пож-та...
@chmowashe2221
@chmowashe2221 Жыл бұрын
Тоже сижу и понять не могу этот момент. Есть вероятность, что компилятор заранее все просчитал, а отладчик просто неверно прогнал программу
@sleepyNovember_project
@sleepyNovember_project Жыл бұрын
Цыганские фокусы
@ОлегСизов-ф4б
@ОлегСизов-ф4б 6 ай бұрын
В данном случае основная работа функции (вывод числа) происходит во время заполнения стека, т.е. в прямом порядке. И уже потом в обратном порядке из стека выкидываются "отработавшие" функции. Для того, чтобы было наоборот, нужно поместить основную работу после рекурсивного вызова функции, вот так: int Foo(int a) { if (a < 1) { return 0; } a--; int result = Foo(a); // вызов функции std::cout
OCCUPIED #shortssprintbrasil
0:37
Natan por Aí
Рет қаралды 131 МЛН
Вопрос Ребром - Джиган
43:52
Gazgolder
Рет қаралды 3,8 МЛН
번쩍번쩍 거리는 입
0:32
승비니 Seungbini
Рет қаралды 182 МЛН
Andro, ELMAN, TONI, MONA - Зари (Official Music Video)
2:50
RAAVA MUSIC
Рет қаралды 2 МЛН
Рекурсия. Репка и матрёшка
18:37
Тимофей Хирьянов
Рет қаралды 120 М.
Примеры рекурсивных алгоритмов
23:54
Тимофей Хирьянов
Рет қаралды 59 М.
Что такое рекурсия. Фундаментальный JavaScript
20:32
Михаил Непомнящий
Рет қаралды 24 М.
OCCUPIED #shortssprintbrasil
0:37
Natan por Aí
Рет қаралды 131 МЛН