/*Wydruk szachownicy, używając operatora cout<< tylko 3 razy i tylko na jeden znak
sprawdzanie na parzystość, operator trójargumentowy
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX
     XXXXX     XXXXX     XXXXX     XXXXX*/
#include <iostream>

using namespace std; // w starszych kompilatorach trzeba zakomentować ten wiersz

int main()
  {
   /*
   // wariant A
   for(short Y=0;Y<8;++Y)
     {
      for(short y=0;y<3;++y)
        {
         for(short X=0;X<8;++X)
           {
            for(short x=0;x<5;++x)
              {
               if((X+Y)%2) cout<<'X'; else cout<<' ';
              }
           }
         cout<<endl;
        }
     }
   */
   /*
   // wariant B - tylko dwie pętli oraz inne sprawdzanie na nieparzystość
   for(short y=0;y<3*8;++y)
     {
      for(short x=0;x<5*8;++x)
        {
         if((X/5+Y/3)&1) cout<<'X'; else cout<<' ';
        }
      cout<<endl;
     }
   */
   /*
   // wariant C - operator trójargumentowy
   for(short y=0;y<3*8;++y)
     {
      for(short x=0;x<5*8;++x) cout<<(((X/5+Y/3)&1)?'X':' ';
      cout<<endl;
     }
   */
   // wariant D - a jednak na 4-x for'ah będzie lepiej, bo dzielenie - kosztuje :-)
   for(short Y=0;Y<8;++Y)
     {
      for(short y=0;y<3;++y)
        {
         for(short X=0;X<8;++X)
           {
            for(short x=0;x<5;++x) cout<<(((X+Y)&1)?'X':' ');
           }
         cout<<endl;
        }
     }

   cin.get();  
   return 0;
  }


