I have written a java code to convert decimal number to binary.Its works well but when input is 1024 or more output goes wrong.Ex: if input is 1024 output is 1410065408.
import java.util.Scanner;
public class story {
public static void main(String args[])
{
Scanner scan=new Scanner(System.in);
System.out.println("Enter a positive decimal number");
binary bin=new binary();
System.out.println(bin.calculate(scan.nextInt()));
}
}
public class binary {
public long calculate(int num)
{
int i=1;
long result=0;
while(num>0)
{
result=result+(num%2)*i;
i*=10;
num/=2;
}
return result;
}
}