Я попытался сделать небольшую программу, которая преобразует десятичный код в бинар. Моя программа работает очень хорошо для Int < 1024. если я типа в 1024 или выше, я получаю эту ошибку:decimaltobinary (java.lang.NumberFormatException)
Exception in thread "main" java.lang.NumberFormatException: For input string: "10000000000" at java.lang.NumberFormatException.forInputString(Unknown Source) at java.lang.Integer.parseInt(Unknown Source) at java.lang.Integer.parseInt(Unknown Source) at ConvertoBinary.binaryform(ConvertoBinary.java:35) at ConvertoBinary.main(ConvertoBinary.java:20)
это мой javacode:
import java.util.Scanner;
public class ConvertoBinary {
public static void main(String[] args) {
int number;
Scanner scanner = new Scanner(System.in);
System.out.println("Geben sie eine positive Dezimalzahl ein:");
System.out.print("Dezimal: ");
number=scanner.nextInt();
if (number <=0)
System.out.println("Error: Keine positive Dezimalzahl erkannt");
else {
System.out.print("Binär: ");
System.out.print(binaryform(number));
}
scanner.close();
}
public static int binaryform(int number) {
String rest = "";
while (number > 0) {
rest = number%2 + rest;
number = number/2;
}
number = Integer.parseInt(rest);
return number;
}
}
Это, вероятно, лучше подходит для [codereview.stackexchange.com] (http://codereview.stackexchange.com/). –