// Informatik - Serie 11 - Aufgabe 127
// Programm: VischerLucas2.cpp
// Autor: L. Vischer
// 12 iterations are recommended.
#include
#include
void g(unsigned int i);
void f(unsigned int i)
{
if (i == 0) ifm::left(30);
else {
ifm::forward(1);
ifm::save();
ifm::right(30);
f(i-1);
ifm::restore();
g(i-1);
ifm::forward(1); }
}
void g(unsigned int i)
{
if (i == 0) ifm::left(10);
else {
ifm::forward(1);
ifm::save();
ifm::right(30);
f(i-1);
ifm::forward(1);
ifm::restore();
g(i-1); }
}
void j(unsigned int i);
void h(unsigned int i)
{
if (i == 0) ifm::right(30);
else {
ifm::forward(1);
ifm::save();
ifm::left(30);
h(i-1);
ifm::restore();
j(i-1);
ifm::forward(1); }
}
void j(unsigned int i)
{
if (i == 0) ifm::right(10);
else {
ifm::forward(1);
ifm::save();
ifm::left(30);
h(i-1);
ifm::forward(1);
ifm::restore();
j(i-1); }
}
int main()
{
std::cout << "Number of iterations?\n";
unsigned int n;
std::cin >> n;
ifm::right(90);
ifm::save();
g(n);
ifm::restore();
j(n);
return 0;
}