Например, у меня есть двоичный номер 1011, который равен десятичной 11. Я хочу, чтобы местоположение бит-бит было таким, чтобы оно стало 1101, которое является десятичным 13. Вот код:
import java.util.*;
public class bits {
public static void main(String[] args) {
Scanner scnr=new Scanner(System.in);
System.out.println("enter x:");
int x=scnr.nextInt();
int b=0;
while (x!=0){
b|=( x &1);
x>>=1;
b<<=1;
}
System.out.println(b);
}
}
Но когда я вхожу в x 11, тогда он печатает 26. Какая ошибка?