Тема: Алгоритм
Показать сообщение отдельно
  #2  
Старый 10.01.2011, 13:41
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Цитата:
конечно мог бы воспользоваться и рекурсией, но в делфи она не работает, по видимому переполнение стека)
Даже в самом худшем варианте при DrawGrid 20x20 (т.е. 400 элементов), если передавать в процедуру координаты клетки в integer (Хотя достаточно байта), и два цвета (что красим и чем красим, хотя можно использовать глобальные переменные), прогрузить стек можно только на 400*16 = 6400 байт. По идеи такое стек не переполнит. Так что скорее всего там ошибка.

Вообще в теории можно любой рекурсивный алгоритм записать циклом.
Еще есть например алгоритм закраски строками, правда не помню, как называется. Там вообще почти никакой нагрузки на стек не будет.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием