Cześć mam problem z zadaniem dotyczącym operacji bitowych w cpp. Mam sprawdzić czy wpisana liczba jest binarnym palindromem. W zadaniu nie moge korzystać z tablic oraz wykonać co najmniej dwie operacje binarne. Mój kod wygląda następująco:
mój plan na to zadanie jest taki oby najpierw sprawdzić liczbę bitów na ilu jest zapisana podana liczba i teraz tu gdzie zasadniczo mam problem z ifem ponieważ wydaje mi się ze teraz musze sprawdzać bity po kolei porównując pierwszy z ostatnim pewnie za pomocną operacji bitowej i przechodzić do następnego jezeli któryś się nie będzie zgadzał to wiemy ze nie jest palindromem.
Z góry dzięki za pomoc :)
#include <iostream>
#include<cmath>
using namespace std;
int main()
{
int value;
cin >> value;
//sprawdzam na ilu bitach zapisana jest liczba
int a = 1;
while (pow(2, a) <= value) {
a++;
}
cout << "Zapisywane jest na: " << a << " bitach\n";
//ostatni bit to a
bool is_pallindrom = true;
int first_bit = 0, last_bit = a;
while (last_bit > first_bit) {
if () {
is_pallindrom = false;
}
first_bit++;
last_bit--;
}
if (is_pallindrom) {
cout << "1";
}
else {
cout << "0";
}
}