////////////////////////////////////////////////////////////////////////////////
// << j172a.java >>
//
// 基礎(7):10進数と2進数の変換
//
// ●10進数から2進数へ変換。
// 10進数を2で割り、得られた余りを逆順に並べる。
//
// 25=2×12+1
// 12=2×6 +0
// 6=2×3 +0
// 3=2×1 +1
// 1=2×0 +1
//
// 求める2進数は、11001
//
////////////////////////////////////////////////////////////////////////////////
class j172a {
public static void main(String args[]) {
int d; // 10進数。
int b[] = new int[1000]; // 2進数を保存する配列。
System.out.println("10進数から2進数へ変換");
d = 25;
System.out.println("10進数:" + d);
// 10進数から2進数へ変換。
int k = 0;
while( d > 0 ) { b[k] = d%2; ; d = d/2; k++; }
// 2進数の表示。
System.out.print(" 2進数:");
for( int i=k-1; i>=0; i-- ) { System.out.print(b[i]); }
System.out.println();
}
}
実行結果
% javac j172a.java
% java j172a
10進数から2進数へ変換
10進数:25
2進数:11001