Про рекурсии очень хорошо объясняется в уроках курса "C# Starter 2013" на сайте ITVDN. Ты не объяснил того что попадая на рекурсию мы попадаем не в туже самую функцию а в её 'копию' , а после завершения последней копии функции завершая предыдущие копии функции мы возвращаемся обратно по адресам возврата к оригинальной функции для её завершения. Потому нельзя делать бесконечную рекурсию - будет заполнен стек. В общем кому интересно может глянуть
@shyma_grasious3 жыл бұрын
вот поэтому использую цикл вайл вместо рекурсии)
@haminidzinanusubalieva66223 жыл бұрын
ну раз там лучше обясняют, здесь то что делаешь
@Anvar_Batalov Жыл бұрын
Благодарю!
@shyma_grasious3 жыл бұрын
я вот пробовал в рекурсии но цикл вайл мне удобней и понятней, да и с точки зрения переполнения стека - безопаснее). Поэтому использую условие остановки цикла прямо в его условии для имитации рекурсии
@arshakmuradyan5432 жыл бұрын
иногда удобнее использовать рекурсию
@Make_25 Жыл бұрын
Я который перехожу в 8 класс уже работаю с факториалом, помню как в 5 классе я изучал python и там было тема про дискриминант и квадратные уравнение на секунду на помню это вообще тема 8 класса потом прихожу к репетитору и узнаю что я все знаю это было для меня так легко то что D = B^2 *4aс 😎 если че это не мой ак
@chumbuzzy4694 Жыл бұрын
И как успехи сейчас? Это вообще классно, что так рано увлекся этим
@sreggh3 жыл бұрын
спасибо за видео!
@АндрійСадовий-и6ш4 жыл бұрын
спасибо за такой курс
@ИванРыбалко-р5ь4 жыл бұрын
Супер!! Спасибо! :)
@almaz97764 жыл бұрын
Классное видео ,спасибо. А можно вопрос? будет уроки про БД?
@andrievskii4 жыл бұрын
Да будут!
@kabukijoe994 жыл бұрын
спасибо помогло.
@Kenny_buzz2 жыл бұрын
Спасибо. Тут как-то уже чувствуется беспомощность с второй задачей, нифига не понятно как это сотворить и какой это должно иметь вид
@andrievskii2 жыл бұрын
Это сложная тема, просто пропускайте и идите далее, в нужное время придет понимание
@Kenny_buzz2 жыл бұрын
@@andrievskii окей. Спасибо за совет;)
@2009Evgenia2 жыл бұрын
Рекурсивные функции могут потребовать много оперативной памяти. Лучше заменить циклами: расчёт и запись в переменную, которая занимает мало памяти, расчёт и запись в переменную. А как работают рекурсивные функции? Там, возможно, под все переменные всех вызванных функций отводится место в оперативной памяти. Хотя, кто знает, может, есть какая-то оптимизация кода.
@developerno18203 жыл бұрын
Для тех кто не справился с дз: ПРАКТИКА: function recurse($num){ if($num > 100){ echo ($num-=5) . ""; recurse($num); }else return; } recurse(200); ЗАДАЧА СО * $massiv = [ "Friends" => ["Petya", "Lena", "Yura"], "Comrades" => ["Anya", "Katya", "Pasha"], "Relatives" => ["Sasha", "Vasya", "Zhora"] ]; function recarray($arr) { foreach($arr as $key => $value) { if(!is_array($value)) echo $value . ""; recarray($value); } } recarray($massiv);
@Kenny_buzz2 жыл бұрын
а где тут рекурсия в задании 2?
@developerno18202 жыл бұрын
@@Kenny_buzz функция вызывается внутри функции, а это и есть рекурсивная функция
@Kenny_buzz2 жыл бұрын
@@developerno1820 ну да, точно
@nurlannadzhavov10542 жыл бұрын
Спасибо со второй задачей, целый день ломал голову, что и как делать, постоянно ошибку выводил.
@Александр-л8э9й2 жыл бұрын
Для передачи аргумента в функцию только в качестве массива можно переписать код в стиле if else: if(!is_array($value)){ echo $value . ""; } else { recarray($value); }
Доброго времени суток. У меня вопрос, может поможете. Учу основы синтаксис пхп, ооп немного месяца 4. Вроде примерно материал понял, но как работать с проектами, как их создавать пока не ясно. Может подскажите, что следует ещё выучить , знать или быть может планируете видео снять на эту тему. Заранее спасибо за ответ.
@ДавидПоляруш-д4ь3 жыл бұрын
год прошёл. Ну и что выяснил?
@Marketing_top2 жыл бұрын
@@ДавидПоляруш-д4ь 2 года прошло, ну что выяснил?
@Ланченсо11 ай бұрын
@@Marketing_top 3 года прошло, что удалось выяснить?
@ИванБабенко-щ9т8 ай бұрын
@@Ланченсо пишу роботов ии, создаю вселенные
@Фанат-щ9ь4 жыл бұрын
Честно функции с foreach проще чем factorial($num - 1) просто потому что не понятно что происходит.
@romanchubich20134 жыл бұрын
Полчаса жаждал узнать в чём же преимущество и зачем это нужно.:) (Шутка) На самом деле я хотел узнать, как получить из рекурсии данные без глобальной переменной.=)
@VETaL8553 жыл бұрын
ПОМОГИТЕ С ЗАДАЧЕЙ СО *
@sreggh3 жыл бұрын
/*Создайте многомерный массив или используйте с прошлых занятий готовый Напишите рекурсивную функцию обхода этого массива с выводом его элементов*/ $aray = array( // создал в функции массив (хотя нужно, чтобы массив был вне функции, но я не заморачивался, главное - чтобы сама функция работала) 'nicuk' => 'Nicky', 'niceek' => 'Nickqe', 'joy' => array('weight' => 20, 'nane' => 'Joy','family' => 'Fox'), 'tom' => array('weight' => 30, 'nane' => 'Tom','family' => 'Nix'), 'nick' => 'Nick' ); function foo5($eee){ // создал функцию foreach ($eee as $key => $value) { // создал цикл, который разбивает массив на ключ ($key) и значение ($value) if (is_array($eee)) // написал условие1: если $array является массивом, то мы выполняем нижеследующее условие { if (is_array($key)) // условие1: если $key (которая у нас раньше уже приняла значение ключа (через foreach) является массивом), то выполняется условие2 { foreach ($key as $keys => $valure) // условие2: цикл разбивает $key на ключ ($keys) и значение ($valure) print_r ($keys); // и выводит их как ключ и значение и между ними двоеточие echo " : "; print_r ($valure); echo ''; foo5(); // а потом все возвращается в начало функции }else { // сработает, если условие2 false print_r ($key); echo " : "; print_r ($value); echo ''; } } } } foo5($aray); //вывели функцию // думаю еще можно косметически подправить, но смысл задания был не в этом :)
@ДавидПоляруш-д4ь3 жыл бұрын
@@sreggh твой код но более красиво написан. До этого все задания со звёздочками за 10 минут делал, но тут впервые впал в ступор не понимая зачем тут рекурсия и как перебирать строковые елементы масива без форич
@chronofagt2 жыл бұрын
@@sreggh Спасибо большое за пример, всё сидел и думал, но ничего кроме банального перебора через форич не приходило в голову, а этот код отлично залетел)