use*_*954 0 java binary recursion decimal
我试图简单地转换为Binary与递归.我在return语句中遇到问题.这会编译,但在运行时会出现溢出错误.我不知道要返回什么(或者如果我的陈述是错的)来防止这个错误.
谢谢!
public static String convertToBinary(int number)
{
if(number > 0)
{
convertToBinary(number / 2);
convertToBinary((number % 2 ));
}
return convertToBinary((number));
}
Run Code Online (Sandbox Code Playgroud)
你的问题是在数字/ 2和数字%2上调用convertToBinary我相信.这段代码对我来说很好,并没有你所拥有的那样:
import java.util.Scanner;
public class DecToBin {
public static void main(String[] args) {
int input;
Scanner scan = new Scanner(System.in);
System.out.print("Enter number to convert to binary: ");
input = scan.nextInt();
convert(input);
}
public static void convert(int num) {
if (num>0) {
convert(num/2);
System.out.print(num%2 + " ");
}
}
}
Run Code Online (Sandbox Code Playgroud)