The international rules of chess only require that the 64 sq

The international rules of chess only require that the 64

squares on a chessboard alternate between \"light\" and \"dark,\" so many color

combinations are possible. Pick two contrasting colors you have never seen on a

chessboard before from the picture in section 13.10 and write a program named

hw6pr1.cpp to draw a chessboard with those colors. Note that in chess the

bottom right square is the \"light\" color. Hint: The colors in section 13.10

are the FLTK palette colors Color(0) through Color(255).

PROGRAM IN C++.....

Solution

Hope this will help-

# include <iostream.h>
# include <graphics.h>
# include    <conio.h>
# include     <math.h>


void show_screen( );

void Fill_rectangle(constint,constint,constint,constint);
void Rectangle(constint,constint,constint,constint);
void Line(constint,constint,constint,constint);

int main( )
    {
       int driver=VGA;
       int mode=VGAHI;

       initgraph(&driver,&mode,\"..\\\\Bgi\");

       show_screen( );

       for(int count_1=0;count_1<15;count_1++)
       {
         setcolor((count_1+1));
         Rectangle((141+count_1),(69+count_1),(499-count_1),(427-count_1));
       }

       setcolor(9);

       for(int count_2=0;count_2<19;count_2++)
       Rectangle((156+count_2),(84+count_2),(484-count_2),(412-count_2));

       setcolor(12);
       Rectangle((156+count_2),(84+count_2),(484-count_2),(412-count_2));

       for(int count_3=0;count_3<9;count_3++)
       {
         Line((176+(count_3*36)),104,(176+(count_3*36)),392);
         Line(176,(104+(36*count_3)),464,(104+(36*count_3)));
       }

       setcolor(15);

       for(int count_4=0;count_4<8;count_4++)
       {
         for(int count_5=0;count_5<8;count_5++)
           {
           if(((count_5%2)+(count_4%2))==1)
              Fill_rectangle((176+(count_5*36)),(104+(count_4*36)),
                      (212+(count_5*36)),(140+(count_4*36)));
           }
       }

       char English[8][3]={\"H\",\"G\",\"F\",\"E\",\"D\",\"C\",\"B\",\"A\"};
       char Numbers[8][3]={\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\"};

       setcolor(15);
       settextstyle(0,0,1);

       for(int count_6=0;count_6<8;count_6++)
       {
           outtextxy(164,(120+(count_6*36)),Numbers[count_6]);
           outtextxy((190+(count_6*36)),398,English[count_6]);
       }

       getch( );

       return 0;
    }

//--------------------------- Rectangle( ) ----------------------------/
void Rectangle(constint x_1,constint y_1,constint x_2,constint y_2)
    {
       Line(x_1,y_1,x_2,y_1);
       Line(x_2,y_1,x_2,y_2);
       Line(x_2,y_2,x_1,y_2);
       Line(x_1,y_2,x_1,y_1);
    }

//------------------------- Fill_rectangle( ) -------------------------/
void Fill_rectangle(constint x_1,constint y_1,constint x_2,constint y_2)
    {
       int y_min=((y_1>=y_2)?y_2:y_1);
       int y_max=((y_1<=y_2)?y_2:y_1);

       for(int count=(y_min+1);count<y_max;count++)
      Line((x_1+1),count,(x_2-1),count);
    }

//------------------------------ Line( ) ------------------------------/
void Line(constint x_1,constint y_1,constint x_2,constint y_2)
    {
       int color=getcolor( );

       int x1=x_1;
       int y1=y_1;

       int x2=x_2;
       int y2=y_2;

       if(x_1>x_2)
      {
         x1=x_2;
         y1=y_2;

         x2=x_1;
         y2=y_1;
      }

       int dx=abs(x2-x1);
       int dy=abs(y2-y1);
       int inc_dec=((y2>=y1)?1:-1);

       if(dx>dy)
      {
         int two_dy=(2*dy);
         int two_dy_dx=(2*(dy-dx));
         int p=((2*dy)-dx);

         int x=x1;
         int y=y1;

         putpixel(x,y,color);

         while(x<x2)
        {
           x++;

           if(p<0)
              p+=two_dy;

           else
              {
             y+=inc_dec;
             p+=two_dy_dx;
              }

           putpixel(x,y,color);
        }
      }

       else
      {
         int two_dx=(2*dx);
         int two_dx_dy=(2*(dx-dy));
         int p=((2*dx)-dy);

         int x=x1;
         int y=y1;

         putpixel(x,y,color);

         while(y!=y2)
        {
           y+=inc_dec;

           if(p<0)
              p+=two_dx;

           else
              {
             x++;
             p+=two_dx_dy;
              }

           putpixel(x,y,color);
        }
      }
    }

//-------------------------- show_screen( ) ---------------------------/
void show_screen( )
    {
       setfillstyle(1,1);
     bar(262,26,365,38);

       settextstyle(0,0,1);
     setcolor(15);
       outtextxy(5,5,\"******************************************************************************\");
       outtextxy(5,17,\"*-**************************************************************************-*\");
       outtextxy(5,29,\"*------------------------------               -------------------------------*\");
       outtextxy(5,41,\"*-**************************************************************************-*\");
       outtextxy(5,53,\"*-**************************************************************************-*\");

     setcolor(11);
       outtextxy(270,29,\"Chess Board\");

     setcolor(15);

       for(int count=0;count<=30;count++)
          outtextxy(5,(65+(count*12)),\"*-*                                                                        *-*\");

       outtextxy(5,438,\"*-**************************************************************************-*\");
       outtextxy(5,450,\"*-------------------------                          -------------------------*\");
       outtextxy(5,462,\"******************************************************************************\");

     setcolor(12);
       outtextxy(229,450,\"Press any Key to exit.\");
    }
   

The international rules of chess only require that the 64 squares on a chessboard alternate between \
The international rules of chess only require that the 64 squares on a chessboard alternate between \
The international rules of chess only require that the 64 squares on a chessboard alternate between \

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site