Contact Learn C
Copy

Program 340 : Chakravyuha or Spiral Pattern Program(Question Taken from Codevitae(TCS) 2017)

Program 340 : Chakravyuha or Spiral Pattern Program(Question Taken from Codevitae(TCS) 2017)
 
#include<stdio.h>
main()
{
 int i,j,a[100][100],size,row=0,col=0,boundaryStart=0,boundaryEnd,num,evenRowCol=0,evenRow=0,evenCol=0,count=1;
 printf("Enter number of rows\n");
 scanf("%d",&size);
 boundaryEnd=size-1;
   for(i=0;i<size;i++)
    {
     for(j=0;j<size;j++)
        a[i][j]=0;
    }
 while(count<=(size*size))
 {
  if(evenRowCol%2==0)
  {
   if(evenRow%2==0)
   {
       for(i=col;(i<=boundaryEnd) && (count<=size*size);i++){
         a[row][i]=count;
        count++;
       }
    evenRow++; 
    col=i-1;
       row++;
   }
   else
   {
    for(i=col;(i>=boundaryStart) && (count<=size*size);i--)
    {
         a[row][i]=count;
        count++;
       }
    evenRow++;
    col=i+1;
    row--;
    boundaryStart++;
   }
   evenRowCol++;
  }
  else
  {
   if(evenCol%2==0)
   {
    for(i=row;(i<=boundaryEnd) && (count<=size*size);i++)
    {
        a[i][col]=count;
         count++;
        } 
        row=i-1;
        col--;
        evenCol++;
   }
   else
   {
    for(i=row;(i>=boundaryStart) && (count<=size*size);i--)
    {
        a[i][col]=count;
         count++;
        } 
        row=i+1;
        col++;
        evenCol++;
        boundaryEnd--;
   }
   
   evenRowCol++;
  }
 }
    for(i=0;i<size;i++)
    {
     for(j=0;j<size;j++)
        printf("%3d ",a[i][j]);
        printf("\n");
    }
}
Explanation:

Chakravyuha or Spiral Pattern Program(Question Taken from Codevitae(TCS) 2017)

Chakravyuha or Spiral Pattern Program(Question Taken from Codevitae(TCS) 2017)

//Coming Soon

Output: 
Chakravyuha or Spiral Pattern Program(Question Taken from Codevitae(TCS) 2017)

Chakravyuha or Spiral Pattern Program(Question Taken from Codevitae(TCS) 2017)





 
Donate

Download App and Learn when ever you want

Get it on PlayStore
Get it on Amazon App Store
Get it on Aptoide