10進数から2進数の会話をするための宿題があります。これは私が持っているコードです:
int num = 0;
int temp = 0;
Scanner sc = new Scanner(System.in);
num = sc.nextInt();
//System.out.print(""+ num%2+ (num%2)%2);
while(num != 0) {
temp = num;
System.out.print(""+(int) temp % 2);
num = num / 2;
}
正常に動作していますが、MSBではなくLSBとして出力されます。
例えば:
35
110001
しかし、私はそれが必要100011
です。
それを元に戻すための関数や方法を使用することはできません。私はそれを配列や文字列などに入れて魔法をかけることができることを知っています。ただし、使用できるのはwhile
ループ、モジュロ、および印刷のみです。
助言がありますか?