1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
| maksimla |
3.11.2010 13:38
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 324 Пол: Мужской Реальное имя: maksim Репутация: 1 |
У меня чего то не выходит делать рекурсивно. Хоть паручку программ делал рекурсивно факториала, фибоначи и деление
div без div кажится перевод чисел с десятичной в двоичную систему. Вот последние что недавно сделал сам uses graph,crt; А другие чего то не получаются такие как кривая коха нашол в интернете пример ее на паскале понел кажится а другие немогу сделать. Можете дать какие то легкие задания лутше без графики У меня сейчас задание такое Один большой квадрат а в нем 9 маленьких квадратов нарисовать и так далее в тех еще квадраты. Вот как бы знаю как делать но чего то не получается. Хоть опять можно в интернете найти решение а я эту программку хочу сам решить. но что то не понимаю в рекурсиях Сообщение отредактировано: maksimla - 3.11.2010 13:45 -------------------- Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
|
![]() ![]() |
| TarasBer |
3.11.2010 14:22
Сообщение
#2
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Ну квадратики внутри большого расположены в виде таблицы 3 на 3, значит, чтобы их перебрать, надо построить внешний цикл так:
for i := 0 to 2 do for j := 0 to 2 do Паре (1,1) соответствует центральный квадрат, её трогать не надо. Теперь надо координаты маленьких квадратиков вычислить так, чтобы они при i=0 были равны x и при увеличении i менялись на x2 (x2 - это треть стороны большого квадрата). kv(x+x2*i,y+y2*i,x+x2*(i+1),y+y2*(i+1),lvl-1); И аналогично для y и j. То есть в выражениях для параметров, у которых не x, а y, надо заменить i на j: kv(x+x2*i,y+y2*j,x+x2*(i+1),y+y2*(j+1),lvl-1); Я думал, сам догадаешься. > неправильно вставил наверное код В каком смысле? Не компилируется? Запускается и зависает? Запускается и вылетает? Рисует не ту картинку? Нормально говори о неполадках. А то будет как в той истории с выключенным светом. -------------------- |
maksimla Расскажите про рекурсию 3.11.2010 13:38
TarasBer А что именно с квадратами не получается? Программа... 3.11.2010 13:52
maksimla Про условия выхода мне понятно вот что я сделал и ... 3.11.2010 14:02
TarasBer С рекурсией тут всё в порядке.
Координаты внутри о... 3.11.2010 14:06
maksimla скопировал вставил вместо китайского кода неправил... 3.11.2010 14:12
maksimla неправильно вставил наверное код
ну я это только ч... 3.11.2010 14:25
TarasBer Скриншот покажи.
После замены i на j - тоже? 3.11.2010 14:30
maksimla RE: Расскажите про рекурсию 3.11.2010 14:37
TarasBer > После замены i на j - тоже?
Заменять только ... 3.11.2010 14:37
maksimla заменил в y i на j и при kv(0,0,getmaxx,getmaxy,... 3.11.2010 14:43
TarasBer Ну и? Так надо.
Вызови kv(0,0,getmaxx,getmaxy,8), ... 3.11.2010 14:45
maksimla я все ровно что то недопонимаю о рекурсиях
Добавл... 3.11.2010 14:49
maksimla ну вот так и нечего не разобрался я в этих фракта... 8.11.2010 0:10
TarasBer Ты лучше у сверстников попроси объяснить.
Я умею ч... 8.11.2010 9:31
maksimla мои сверстники до этого не дошли еще до этого 11.11.2010 17:54![]() ![]() |
|
Текстовая версия | 10.12.2025 20:08 |