fork download
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int data[4];
  6. int hamming[8]; // Index 0 is unused
  7.  
  8. printf("Enter 4 data bits (0 or 1):\n");
  9.  
  10. // Read 4 data bits
  11. for (int i = 0; i < 4; i++)
  12. {
  13. scanf("%d", &data[i]);
  14. }
  15.  
  16. // Place data bits
  17. hamming[3] = data[0];
  18. hamming[5] = data[1];
  19. hamming[6] = data[2];
  20. hamming[7] = data[3];
  21.  
  22. // Calculate parity bits (even parity)
  23. hamming[1] = hamming[3] ^ hamming[5] ^ hamming[7];
  24. hamming[2] = hamming[3] ^ hamming[6] ^ hamming[7];
  25. hamming[4] = hamming[5] ^ hamming[6] ^ hamming[7];
  26.  
  27. // Display Hamming code
  28. printf("\nHamming Code: ");
  29. for (int i = 1; i <= 7; i++)
  30. {
  31. printf("%d ", hamming[i]);
  32. }
  33.  
  34. printf("\n");
  35.  
  36. return 0;
  37. }
Success #stdin #stdout 0s 5312KB
stdin
Standard input is empty
stdout
Enter 4 data bits (0 or 1):

Hamming Code: 5426 201821799 1 201821798 0 201825109 5427