使用递归,把十进制正整数(n>=0)转换成二进制数 java
时间: 2023-09-19 21:02:28 浏览: 146
使用递归将十进制正整数转换成二进制数的方法如下:
1. 创建一个递归函数,函数名为decimalToBinary,接受一个参数n(十进制正整数)。
2. 在递归函数内部,首先判断n是否为0,如果是,则返回空字符串(二进制数为空)。
3. 若n不为0,则进行下一步操作。
4. 在递归函数内部,对n进行取余操作,将余数加入到二进制数的左侧,并将n除以2(向下取整)作为新的参数传递给递归函数。
5. 最后,将上述结果与递归函数的返回值进行拼接,并将拼接后的结果作为递归函数的返回值返回。
以下为用Java语言实现上述递归函数的代码:
```java
public class DecimalToBinary {
public static String decimalToBinary(int n) {
if (n == 0) {
return "";
} else {
return decimalToBinary(n / 2) + (n % 2);
}
}
public static void main(String[] args) {
int decimal = 26; // 待转换的十进制数
String binary = decimalToBinary(decimal);
System.out.println("十进制数 " + decimal + " 转换成二进制数为 " + binary);
}
}
```
以上代码中,我们定义了一个名为"decimalToBinary"的递归函数,用于将十进制正整数转换成二进制数。在main函数中,我们传入待转换的十进制数,并输出最终的转换结果。在此例中,结果为"十进制数 26 转换成二进制数为 11010"。
阅读全文