You are on page 1of 2

/*WAP To Generate Hamming Code*/

#include<stdio.h>
void main()
{
int r[7],s[3],index,i,j,sum;
int h[3][7]={{1,0,1,1,1,0,0},{1,1,0,1,0,1,0},{0,1,1,1,0,0,1}};
clrscr();
printf("\nEnter the 7 bit information : \n");
for(i=0;i<3;i++)
scanf("%d",&r[i]);
for(j=0;j<3;j++)
{
sum=0;
for(i=0;i<7;i++)
sum+=h[i][j]*r[i];
sum=sum%2;
s[j]=sum;
}
if(s[0] == 0 && s[1] ==0 && s[2]==0)
{
printf("\nError free implementation : \n ");
printf("\nThe data bits are \n");
for(i=0;i<4;i++)
printf("%d",r[i]);
exit(0);
}
for(j=0;j<7;j++)
{
if(s[0] == h[0][j] && s[1] == h[1][j] && s[2]==h[2][j])
{
index=j;
break;
}
}
printf("\n THe error is in bit number %d\n",index+1);
if(r[index]==0)
r[index]=1;
else
r[index]=0;
printf("\n The currect information is : ");
for(i=0;i<7;i++)
printf("%d",r[i]);
getch();
}

/*output*/
Enter the 7 bit information :
1010111
1011111
1000010
THe error is in bit number 5299
The currect information is : 27071280711697018240122911824

You might also like