hi,大家好,
这是我的“21天coding不间断”任务的Day 5,
是一个简洁的10进制与2进制互转的算法实现。
import java.util.Scanner;
public class SystemConvert {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("please input a number:");
int numb = scanner.nextInt();
System.out.println("choose a way:\\n输入1,表示10进制转2进制;\\n"
+ "输入2,表示2进制转10进制;\\n");
int input = scanner.nextInt();
String s = "";
switch (input) {
case 1:
for (int i = numb; i > 0; i /= 2)
s += i % 2;
break;
case 2:
int k = 0,
temp = 0;
for (int i = numb; i > 0; i /= 10) {
temp += (i % 10) * Math.pow(2, k);
k++;
}
s = "" + temp;
break;
default:
System.out.println("Wrong input!");
}
System.out.println(s);
}
}