Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
import java.awt.*;<br />
public class Koch<br />
{<br />
private static Crayon pencil = new Crayon(Color.black,1);<br />
}<br />
/**<br />
* kochLine tegner en Koch-linje af orden n >= 0.<br />
* @param n Ordenen af den Koch-linje der tegnes<br />
* @param dir Retning fra start til slutpunkt i grader<br />
* @param len Afstand mellem kurvens start og slutpunkt<br />
*/<br />
private static void kochLine(int n, int dir, double len)<br />
{<br />
if(n == 0) {<br />
pencil.turnto(dir);<br />
pencil.move(len);<br />
}<br />
else if(n > 0) {<br />
kochLine(n - 1,dir,len/3);<br />
kochLine(n - 1,dir - 60,len/3);<br />
kochLine(n - 1,dir + 60,len/3);<br />
kochLine(n - 1,dir,len/3);<br />
}<br />
}<br />
public static void main(String[] args)<br />
{<br />
pencil.jumpto(50,150);<br />
kochLine(1,0,300);<br />
pencil.jumpto(50,250);<br />
kochLine(2,0,300);<br />
pencil.jumpto(50,350);<br />
kochLine(3,0,300);<br />
pencil.jumpto(50,450);<br />
kochLine(4,0,300);<br />
}<br />
Bemærk, at vi foretager 4 rekursive kald, og at vi her har et eksempel på<br />
en rekursiv metode, hvor en ikke-rekursiv formulering forekommer at være<br />
32