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++) { ...

Check if Binary Representation is Palindrome or not in C

C Program: Check if Binary Representation is Palindrome

๐Ÿ”ท C Program: Check if Binary Representation is Palindrome

#include <stdio.h>
#include <string.h>

void inttobinary(int num, char binary[])
{
    int index = 0;
    while (num > 0)
    {
        binary[index++] = (num % 2) + '0';
        num /= 2;
    }
    binary[index] = '\0';

    // Reverse the binary string
    for (int i = 0; i < index / 2; i++)
    {
        char temp = binary[i];
        binary[i] = binary[index - 1 - i];
        binary[index - 1 - i] = temp;
    }
}

int pal(char str[])
{
    int start = 0;
    int end = strlen(str) - 1;

    while (start < end)
    {
        if (str[start] != str[end])
        {
            return 0;
        }
        start++;
        end--;
    }
    return 1;
}

int main()
{
    int num;
    char binary[50];

    printf("Enter the number: ");
    scanf("%d", &num);

    if (num == 0)
    {
        printf("The binary representation of 0 is palindrome.\n");
        return 0;
    }

    inttobinary(num, binary);

    if (pal(binary))
    {
        printf("The binary representation of %d is a palindrome.\n", num);
    }
    else
    {
        printf("The binary representation of %d is not a palindrome.\n", num);
    }

    return 0;
}
  

๐Ÿ“˜ Explanation:

This program checks whether the **binary representation** of a given decimal number is a **palindrome**.

๐Ÿ”น The function inttobinary() converts a given integer to its binary equivalent using division by 2. Digits are stored in reverse order and later reversed to get the correct binary format.

๐Ÿ”น The function pal() checks if a given string is a palindrome by comparing characters from both ends until the middle.

๐Ÿ”น In main(), the number is taken from the user. If it is 0, it's directly reported as a binary palindrome.
๐Ÿ”น Otherwise, it converts the number to binary and checks if the result is a palindrome, printing the appropriate message.

๐Ÿ” Sample Output:

Enter the number: 9
The binary representation of 9 is a palindrome.

Enter the number: 10
The binary representation of 10 is not a palindrome.
    

๐Ÿท️ Keywords:

binary palindrome, binary conversion in C, C palindrome check, number to binary in C, C programs for beginners, string reversal, strcmp, strlen, strcpy

Comments

Popular Posts

๐ŸŒ™