Computer Science, asked by ashishghildiyal5586, 1 year ago

Write a program to implement crc for error detection

Answers

Answered by prabhakarsing2
0

Answer:

#include <stdio.h>

#include <conio.h>

#include <string.h>

void main() {

int i,j,keylen,msglen;

char input[100], key[30],temp[30],quot[100],rem[30],key1[30];

clrscr();

printf("Enter Data: ");

gets(input);

printf("Enter Key: ");

gets(key);

keylen=strlen(key);

msglen=strlen(input);

strcpy(key1,key);

for (i=0;i<keylen-1;i++) {

input[msglen+i]='0';

}

for (i=0;i<keylen;i++)

temp[i]=input[i];

for (i=0;i<msglen;i++) {

quot[i]=temp[0];

if(quot[i]=='0')

for (j=0;j<keylen;j++)

key[j]='0'; else

for (j=0;j<keylen;j++)

key[j]=key1[j];

for (j=keylen-1;j>0;j--) {

if(temp[j]==key[j])

rem[j-1]='0'; else

rem[j-1]='1';

}

rem[keylen-1]=input[i+keylen];

strcpy(temp,rem);

}

strcpy(rem,temp);

printf("\nQuotient is ");

for (i=0;i<msglen;i++)

printf("%c",quot[i]);

printf("\nRemainder is ");

for (i=0;i<keylen-1;i++)

printf("%c",rem[i]);

printf("\nFinal data is: ");

for (i=0;i<msglen;i++)

printf("%c",input[i]);

for (i=0;i<keylen-1;i++)

printf("%c",rem[i]);

getch();

}

Answered by ayandas630pekszv
0

Answer:

#include <stdio.h>

#include <conio.h>

#include <string.h>

void main() {

int i,j,keylen,msglen;

char input[100], key[30],temp[30],quot[100],rem[30],key1[30];

clrscr();

printf("Enter Data: ");

gets(input);

printf("Enter Key: ");

gets(key);

keylen=strlen(key);

msglen=strlen(input);

strcpy(key1,key);

for (i=0;i<keylen-1;i++) {

 input[msglen+i]='0';

}

for (i=0;i<keylen;i++)

 temp[i]=input[i];

for (i=0;i<msglen;i++) {

 quot[i]=temp[0];

 if(quot[i]=='0')

  for (j=0;j<keylen;j++)

  key[j]='0'; else

  for (j=0;j<keylen;j++)

  key[j]=key1[j];

 for (j=keylen-1;j>0;j--) {

  if(temp[j]==key[j])

   rem[j-1]='0'; else

   rem[j-1]='1';

 }

 rem[keylen-1]=input[i+keylen];

 strcpy(temp,rem);

}

strcpy(rem,temp);

printf("\nQuotient is ");

for (i=0;i<msglen;i++)

 printf("%c",quot[i]);

printf("\nRemainder is ");

for (i=0;i<keylen-1;i++)

 printf("%c",rem[i]);

printf("\nFinal data is: ");

for (i=0;i<msglen;i++)

 printf("%c",input[i]);

for (i=0;i<keylen-1;i++)

 printf("%c",rem[i]);

getch();

}

Explanation:

Enter Data: 1101011011

Enter Key: 10011

output

Quotient is 1100001010

Remainder is 1110

Final data is: 11010110111110

Similar questions