Рекурсия: различия между версиями
Перейти к навигации
Перейти к поиску
Patarakin (обсуждение | вклад) |
Patarakin (обсуждение | вклад) |
||
Строка 14: | Строка 14: | ||
|Examples=https://scratch.mit.edu/projects/334694805/ | |Examples=https://scratch.mit.edu/projects/334694805/ | ||
}} | }} | ||
+ | === Примеры === | ||
+ | |||
+ | ==== Вычисление факториала ==== | ||
+ | |||
+ | <scratchblocks> | ||
+ | define factorial (n) | ||
+ | if < (n) = [0] > then | ||
+ | add [1] to [Factorial-stack v] | ||
+ | else | ||
+ | factorial ( (n) - (1) ) | ||
+ | add ( (n) * (item (last v) of [Factorial-stack v])) to [Factorial-stack v] | ||
+ | end | ||
+ | |||
+ | when gf clicked | ||
+ | delete (all v) of [Factorial-stack v] | ||
+ | factorial (10) | ||
+ | say (item (last v) of [Factorial-stack v]) | ||
+ | </scratchblocks> |
Версия 14:17, 16 октября 2019
Описание | [[Description::Рекурсия — определение, описание, изображение какого-либо объекта или процесса внутри самого этого объекта или процесса, то есть ситуация, когда объект является частью самого себя.
В программировании чаще всего - вызов функцией себя самой, когда функция (процудура) делегирует работу своим клонам Введение в рекурсию в книге Харви о стиле Лого - http://people.eecs.berkeley.edu/~bh/v1ch7/recur1.html
|
---|---|
Область знаний | |
Область использования (ISTE) | Computational Thinker |
Возрастная категория | 11 |
Примеры реализации | Использование цепочки свойств «Ehttps://scratch.mit.edu/projects/334694805/amples» недопустимо в семантической аннотации. |
Авторы | |
Поясняющее видео | |
Близкие понятия | |
Среды и средства для освоения понятия |
Примеры
Вычисление факториала
define factorial (n) if < (n) = [0] > then add [1] to [Factorial-stack v] else factorial ( (n) - (1) ) add ( (n) * (item (last v) of [Factorial-stack v])) to [Factorial-stack v] end when gf clicked delete (all v) of [Factorial-stack v] factorial (10) say (item (last v) of [Factorial-stack v])