#include <stdio.h>
// ungleich Null, wenn Koordinate (x,y) Teil eines Kreuzes der Größe size * size ist
int is_cross(unsigned x, unsigned y, unsigned size)
{
// Ränder
if (x == 0 || y == 0 || x == size - 1 || y == size - 1)
return 1;
// Mittleres Kreuz
unsigned mitte = (size - 1) / 2;
if (x == mitte || x == mitte + 1 || y == mitte || y == mitte + 1)
return 1;
// Alles andere gehört nicht zum Kreuz
return 0;
}
int main(void)
{
for(int i = 0; i < 5; ++i)
{
unsigned size;
// Systematisch alle Felder durchgehen
for(unsigned y = 0; y < size; ++y)
{
for(unsigned x = 0; x < size; ++x)
{
// jedes Feld passend malen
if(is_cross(x, y, size))
else
}
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovLyB1bmdsZWljaCBOdWxsLCB3ZW5uIEtvb3JkaW5hdGUgKHgseSkgVGVpbCBlaW5lcyBLcmV1emVzIGRlciBHcsO2w59lIHNpemUgKiBzaXplIGlzdAppbnQgaXNfY3Jvc3ModW5zaWduZWQgeCwgdW5zaWduZWQgeSwgdW5zaWduZWQgc2l6ZSkKewoJLy8gUsOkbmRlcgoJaWYgKHggPT0gMCB8fCB5ID09IDAgfHwgeCA9PSBzaXplIC0gMSB8fCB5ID09IHNpemUgLSAxKQoJCXJldHVybiAxOwoJCgkvLyBNaXR0bGVyZXMgS3JldXoKCXVuc2lnbmVkIG1pdHRlID0gKHNpemUgLSAxKSAvIDI7CglpZiAoeCA9PSBtaXR0ZSB8fCB4ID09IG1pdHRlICsgMSB8fCB5ID09IG1pdHRlIHx8IHkgPT0gbWl0dGUgKyAxKQoJCXJldHVybiAxOwoJCQoJLy8gQWxsZXMgYW5kZXJlIGdlaMO2cnQgbmljaHQgenVtIEtyZXV6CglyZXR1cm4gMDsKfQoKaW50IG1haW4odm9pZCkgCnsKCWZvcihpbnQgaSA9IDA7IGkgPCA1OyArK2kpCgl7CgkJdW5zaWduZWQgc2l6ZTsKCQlzY2FuZigiJXUiLCAmc2l6ZSk7CgkKCQkvLyBTeXN0ZW1hdGlzY2ggYWxsZSBGZWxkZXIgZHVyY2hnZWhlbgoJCWZvcih1bnNpZ25lZCB5ID0gMDsgeSA8IHNpemU7ICsreSkKCQl7CgkJCWZvcih1bnNpZ25lZCB4ID0gMDsgeCA8IHNpemU7ICsreCkKCQkJewoJCQkJLy8gamVkZXMgRmVsZCBwYXNzZW5kIG1hbGVuCgkJCQlpZihpc19jcm9zcyh4LCB5LCBzaXplKSkKCQkJCQlwdXRjaGFyKCcrJyk7CgkJCQllbHNlCgkJCQkJcHV0Y2hhcignICcpOwoJCQl9CgkJCXB1dGNoYXIoJ1xuJyk7CgkJfQoJCXB1dGNoYXIoJ1xuJyk7Cgl9CglyZXR1cm4gMDsKfQo=