用java.使用递归调用打印十进制整数对应的二进制码; 解决方法提示:假设整数n的二进制码的长度是m位,p(n)是以二进制方式打印十进制数n的方法,则p(n)的操作是先打印整数n前面的m-1位二进制码,再打印最低一位,而n的前面的m-1位二进制数对应的整数是n/2,n的最低位对应的数字是n%2,则可找出p(n)的递推关系,p(n)可以调用p(n/2)先打印前面m-1位数字,再调用p(n%2)打印最低位(n>1);n=1或n=0时,直接打印n。
时间: 2023-06-26 18:08:03 浏览: 31
以下是Java代码实现:
```
public static void printBinary(int n) {
if (n > 1) {
printBinary(n / 2);
}
System.out.print(n % 2);
}
public static void main(String[] args) {
int n = 18; // 示例整数
System.out.print(n + "的二进制码为:");
printBinary(n);
}
```
输出结果为:
```
18的二进制码为:10010
```
相关问题
使用递归调用打印十进制整数对应的二进制码;JAVA
好的,以下是使用递归调用打印十进制整数对应的二进制码的JAVA代码:
public static void printBinary(int n) {
if (n < 2) {
System.out.print(n);
} else {
printBinary(n / 2);
System.out.print(n % 2);
}
}
你可以通过调用 printBinary() 方法并传入一个十进制整数来打印出对应的二进制码。
用Java递归调用打印十进制整数的二进制。
可以使用递归的方式来实现将一个十进制整数转换成二进制数的功能。具体实现如下:
```java
public class DecimalToBinary {
public static void main(String[] args) {
int decimal = 10;
System.out.println("十进制数 " + decimal + " 的二进制表示为:");
decimalToBinary(decimal);
}
public static void decimalToBinary(int decimal) {
if (decimal > 0) {
decimalToBinary(decimal / 2);
System.out.print(decimal % 2);
}
}
}
```
这段代码会将十进制整数10转换成二进制数1010,并输出到控制台上。