Skip to main content

Featured

C++ Program to Perform Linear Search on a Vector

  C++ Program to Perform Linear Search on a Vector Introduction In this C++ program, we will learn how to perform a Linear Search on a vector. The program first takes the size of the vector and its elements as input. Then it asks the user for the element to search. If the element is found, it displays the index where it is located. Otherwise, it displays a message indicating that the element is not found. C++ Program #include<bits/stdc++.h> using namespace std; int main() { int num, search, found = 0; cout << "Enter the size of the vector:" << endl; cin >> num; vector<int> v(num); cout << "Enter " << num << " elements in vector:" << endl; for(int i = 0; i < num; i++) { cin >> v[i]; } cout << "Enter element that you want to search:" << endl; cin >> search; for(int i = 0; i < num; i++) { ...

C Program to Toggle All Bits After the Most Significant Bit

C Program to Toggle All Bits After MSB

C Program to Toggle All Bits After the Most Significant Bit

/* * Joseph is learning digital logic subject which will be for his next semester. * He usually tries to solve unit assignment problems before the lecture. * Today he got one tricky question. The problem statement is “A positive integer has been * given as an input. Convert decimal value to binary representation. * Toggle all bits of it after the most significant bit including the most significant bit. * Print the positive integer value after toggling all bits”. Constrains- 1<=N<=100 Example 1: Input : 10 -> Integer Output : 5 -> result- Integer Explanation: Binary representation of 10 is 1010. After toggling the bits(1010), will get 0101 which represents “5”. Hence output will print “5”.*/

A positive integer is given as input. Convert the decimal value to binary, toggle all bits after the most significant bit (including the MSB), and print the resulting positive integer.


#include <stdio.h>

int main()
{
    int n, temp;
    int result = 0;
    int place = 1;

    printf("Enter the value: ");
    scanf("%d", &n);

    temp = n;

    while (temp > 0)
    {
        int bit = temp & 1;

        // Toggle bit
        bit = bit ^ 1;

        result += bit * place;

        place = place << 1;
        temp = temp >> 1;
    }

    printf("Result = %d\n", result);

    return 0;
}
  

๐Ÿ“˜ Explanation:

  • The input number is processed bit by bit using bitwise operators.
  • temp & 1 extracts the last bit of the number.
  • bit ^ 1 toggles the bit (0 → 1, 1 → 0).
  • The toggled bit is added to the result using positional value (place).
  • The number is right-shifted to process the next bit.

This continues until all bits up to the most significant bit are toggled.

๐Ÿงพ Sample Output:

Enter the value: 10
Result = 5
  

๐Ÿ”‘ Keywords:

C bit manipulation program, toggle bits in C, decimal to binary conversion, bitwise operators in C, output based C programs

๐Ÿ“Œ Hashtags:

#CProgramming #BitManipulation #DigitalLogic #OutputQuestions #Programming #1printf

๐Ÿ” Search Description:

Learn how to toggle all bits of a number after the most significant bit using bitwise operators in C. This program includes explanation, sample output, and a dark-themed layout.

Comments

Popular Posts

๐ŸŒ™