Vertical Redundancy Check VRC

Ram Pothuraju
This program is for implementing Vertical Redundancy Check (VRC). 


#include<stdio.h>
#include<conio.h>
int binary(int);
void parity(int[]);

int arr[9],arr1[9];
char chr;
int temp,temp1,i;

void main()
{       char chr1;
            clrscr();
            printf("Enter Data :");
            scanf("%c %c",&chr,&chr1);

            temp=chr;
            binary(temp);
            printf("\nAscii value is : %d\n",temp);
            printf("\nBinary Form : ");

                        for(i=0;i<8;i++)
                        {
                                    arr1[i]=arr[i];
                                    printf("%d ",arr[i]);
                        }

                        printf("\n");
                        parity(arr);
temp1=chr1;
            binary(temp1);

            printf("\n\nAscii value is : %d\n",temp1);
                        printf("\nBinary Form : ");
                        for(i=0;i<8;i++)
                        {
                                    printf("%d ",arr[i]);
                        }
                        parity(arr);
            getch();
}



void parity(int a[])
{
            int count;
            count=0;
            for(i=0;i<8;i++)
            {
                        if(a[i]==1)
                                    count++;
            }
            if(count%2==0)
                        a[8]=0;
            else
                        a[8]=1;
            count=0;
            printf(“Receiver Side :\n”);
            printf("\n\nVRC : \n");
            for(i=0;i<9;i++)
                        {
                                    if(i==8)
                                                printf(" | ");
                                    printf("%d ",a[i]);
                        }
}
int binary(int x)
{
            int rem;
            int ctr=0,i=1;
            do
            {
                        rem=x%2;
                        arr[i]=rem;
                        if(rem==1)
                        {
ctr++;
                        }
                        x=x/2;
                        i++;
            }
            while(x!=0);
            if(ctr%2==0)
            {
                        arr[0]=0;
            }

            else
            {
                        arr[0]=1;
            }
            return(0);
}



Post a Comment

0Comments

Post a Comment (0)