// Program: HuberStefan.cpp
// Solves script exercise 123, b)
// Autor: Stefan Huber (Gruppe G)
#include
#include
void y (const unsigned int i);
void x (const unsigned int i)
{
if(i==0)
{
ifm::forward();
}
else
{
x(i-1);
ifm::right(2);
y(i-1);
ifm::right(2);
y(i-1);
ifm::right(2);
x(i-1);
}
}
void y(const unsigned int i)
{
if(i==0)
{
ifm::forward();
}
else
{
ifm::save();
x(i-1);
ifm::left(45);
y(i-1);
ifm::restore();
}
}
int main()
{
std::cout << "Number of iterations =? ";
unsigned int n;
std::cin >> n;
ifm::left(90);
y(n);
ifm::left(180);
y(n);
return 0;
}