Printing a line in c

DDa algorithm  printing a line 



#include<stdio.h>                                                                  
#include<conio.h>                          
#include<graphics.h>                         
                                                                            
void main()
{
        int x,y,x1,y1,x2,y2,dx,dy,xi,yi,s,i;                                                                                                                        
        int gdriver=DETECT,gmode,gerror;

        initgraph(&gdriver,&gmode,"c:\\tc\\bgi");                   

        printf("\nEnter First Point (x1,y1):");        
        scanf("%d%d",&x1,&y1);                                    
        printf("\nEnter Second Point (x2,y2):");
        scanf("%d%d",&x2,&y2);                                    

        dx=x2-x1;               
        dy=y2-y1;

         if(abs(dx)>abs(dy))
         s=abs(dx);
         else
         s=abs(dy);

         xi=dx/s;
         yi=dy/s;

          x=x1;
          y=y1;
                         
          putpixel(x,y,7)       

          for(i=0;i<s;i++)
         {
                        x=x+xi;
                        y=y+yi;
                        putpixel(x,y,7);
          }

          getch();
          closegraph();                                                              
}


output 







Post a Comment

0 Comments