<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Something that looks like this:<br><br>(define(tabulate1 n i)<br>(cond<br>[(&gt; i n)empty]<br>[(=(remainder n i)0)(cons i(tabulate1 n(add1 i)))]<br>[else(tabulat1 n(add1 i))]))<br><br>(define(tabulate n)<br>(tabulate1 n 1))<br><br>I
 feel like I understand how it works recursively, just the generative 
recursion method makes me struggle. I do fully understand how move-ball,
 quick-sort, and gcd-generative work, this problem eludes me though. I 
have been re-reading what you say and nothing is really standing out 
just yet. I think whats really hurting me here is the fact that in the 
other examples the type of output matches the input(i.e ball becomes a 
ball with + x-delta and + y-delta, a list becomes a new list, 2 <span class="yshortcuts" id="lw_1289078569_0">natural numbers</span> become one.) It's throwing me off that a natural number should create a list.</td></tr></table><br>