![]() |
|
||||||||||
|
|||||
|
[+1 06.03.13]
Регистрация: Feb 2007
Сообщений: 174
|
Рылся недавно на одном из форумов и в одной из тем наткнулся на код C#:
static void fill(int n)
{
for (int i = 0; i < 25; i++){
if (!arrstr[i].use && n != 4 && n != 19 || n == 4 && i == 19 || n == 19 && i == 12)
{
arr[n] = arrstr[i].n;
int s = arr[n - 1] + arr[n];
if (s == 4 || s == 9 || s == 16 || s == 25 || s == 36 || s == 49)
{
arrstr[i].use = true;
if (n < 24) fill(n + 1);
else
{
foreach (int a in arr) Console.Write("{0,3}", a);
Console.WriteLine();
}
if (n != 4 && n != 19) arrstr[i].use = false;
}
}
}
}
Вопрос: т.к. язык C# и AS3 C-подобны и весьма схожи в орфографии можно ли такие фишки использовать в AS3. При случае непременно опробую сам на практике, но хочется спросить у тех кто возможно использовал подобный приём. Вообще это может походть на какой-то цикл ? |
|
|||||
|
Регистрация: Jan 2009
Сообщений: 1,651
|
Ребят, ну, блин, сядьте наконец и прочтите хоть одну книгу по основам программирования от корки до корки. А то элементарные вещи не знаете. Это называется рекурсия. Повсеместно используется в алгоритмах поиска по графу, сортировки и т.д.
__________________
мой пустой блог |
|
|||||
|
__________________
местонахождение |
|
|||||
|
Цитата:
Вообще, к слову, на счет новых плееров не знаю, не интересовался, но раньше на рекурсию были ограничения (хотя возможно не на рекурсию как таковую, а вообще на время выполения). Причем споры заходили разные, и не только здесь, но и на других форумах, какова же глубина. Кто-то говорил, что ограничение 2000 итераций? Я лично проводил множество тестов, и ни разу не получил схожих результатов. Когда-то ошибка вылетала на 2 с небольшим тысячах итераций, когда-то на 9, иногда на полутора тысячах, причем в одном и том же тесте. Возможно здесь дело только в ограничении времени выполнения скрипта, но 15 секунд он явно не работал, даже 5. В общем, рекурсия может быть полезна, если ее не использовать бездумно везде где не попадя. Но там, где ее можно легко заменить циклом, лично я бы выбрал цикл. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Цитата:
Цитата:
А время на лимит выполнение по умолчанию 15-20 (от платформы зависит), максимум опять же задается UI16 (как раз за MaxRecursionDepth) |
|
|||||
|
[+1 06.03.13]
Регистрация: Feb 2007
Сообщений: 174
|
iflamberg: Насчёт элементарных вещей:
Цитата:
|
|
|||||
|
[+1 06.03.13]
Регистрация: Feb 2007
Сообщений: 174
|
Теперь уже ничего.
|
|
|||||
|
Modus ponens
|
iNils, По ходу эти настройки стали игнорироваться более современными плеерами примерно года два назад. Обычно рекурсия умирает просто когда стек исчерпан, а он исчерпается в зависимости от того, что будет в одном кадре стека и сколько система выделяет места под тред (возможно, так же, от того, сколько инстансов плеера существует одновременно). Вобщем, тема эта темная.
__________________
Hell is the possibility of sanity |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 07:23. |
|
|
« Предыдущая тема | Следующая тема » |
|
|