import robot.*;

class FractalDeKoch extends Program {
  void run() {
    Tortuga tort= new Tortuga();
    tort.defPosicion(tort.maxx()/3,tort.maxy()/3);
    print("Ingrese el orden : ");
    int orden= readInt();
    double largo= 200.;
    trazar(orden, largo, tort);
    tort.virarDer(120.);
    trazar(orden, largo, tort);
    tort.virarDer(120.);
    trazar(orden, largo, tort);
    tort.virarDer(120.);
  }

  void trazar(int orden, double largo, Tortuga tort) {
    if (orden==0) {
      tort.mover(largo);
      // ``Descomente'' esta linea para apreciar el orden en que
      // se dibuja el fractal de Koch:
      // sleep(1./5);
    }
    else {
      trazar(orden-1, largo/3, tort);
      tort.virarIzq(60);
      trazar(orden-1, largo/3, tort);
      tort.virarDer(120);
      trazar(orden-1, largo/3, tort);
      tort.virarIzq(60);
      trazar(orden-1, largo/3, tort);
    }
  }
}
