Saturday 11 November 2017

C Program to Count the Number of Bits needed to be Flipped to Integer X to Generate Integer Y


Code:

#include  stdio.h 
#include  stdlib.h
#define NUM_BITS_INT (sizeof(int)*8)

void main()
{
    int n, m, i, count = 0, a, b;

    printf("Enter the number\n");
    scanf("%d", &n);
    printf("Enter another number\n");
    scanf("%d", &m);
    for (i = NUM_BITS_INT-1;i >= 0;i--)
    {
        a = (n >> i)& 1;
        b = (m >> i)& 1;
        if (a != b)
            count++;
    }
    printf("flip count = %d\n", count);
}


Output:

Enter the number
127
Enter another number
125
flip count = 1
$ a.out
Enter the number
127
Enter another number
128
flip count = 8
$ a.out
Enter the number
42
Enter another number
21
flip count = 6


More C Programs:











100+ Best Home Decoration Ideas For Christmas Day 2019 To Make Home Beautiful

Best gifts for Christmas Day | Greeting cards for Christmas Day | Gift your children a new gift on Christmas day This Christmas d...