Hamming code program using c
#include<stdio.h>
#include<math.h>
int main()
{
int data[20],r,n,i=1,l,t,sum,p,c,j;
printf("\n enter howw many bit in data");
scanf("%d",&n);
for(i=0;i<n;i++)
{
l=n+i+1;
t=pow(2,i);
if(l<=t)
{
break;
}
}
r=i;
printf("\nr= %d \n",r);
for(i=1;i<n+r;i++)
{
data[i]=0;
}
for(i=0;i<r;i++)
{
t=pow(2,i);
data[t] =-1;
}
printf("\n enter data bit");
for(i=1;i<=n+r;i++)
{
if(data[i]==-1)
{
data[i]=0;
}
else
{
scanf("%d",&data[i]);
}
}
for(i=n+r;i>=1;i--)
{
printf("\t %d",data[i]);
}
sum=0;
c=0;
for(i=0;i<r;i++)
{
p=pow(2,i);
printf("\n");
for(j=p;j<=n+r;j++)
{
c++;
sum=(sum==data[j]?0:1);
if(c==p)
{
j=j+p;
c=0;
}
}
data[p]=sum;
printf("\n %d \n",sum);
sum=0;
}
printf("\n encoded data");
for(j=n+r;j>0;j--)
{
printf("\t%d",data[j]);
}
}
Comments
Post a Comment