Я пытаюсь преобразовать десятичный в двоичный, но некоторые из них, как при преобразовании 128 двоичных данных, дает мне 11111110, я попытался исправить вычисление, но все равно получаю тот же результат.Преобразование десятичного в двоичный (Java)
import java.lang.*;
public class HA7BinaryErr {
public static void main(String[] argv) {
Scanner input = new Scanner(System.in);
int number = 0;
int factorOfTwo = 0;
// get number to convert from user
do {
System.out.println("Enter the number to convert (0-255): ");
number = input.nextInt();
} while (number < 0 || number > 255);
System.out.println("The number " + number + " converted to binary is : ");
// convert to binary by successively dividing by larger factors of 2
for (factorOfTwo = 1; factorOfTwo <= 128; factorOfTwo *= 2) {
if (number/factorOfTwo >= 1) {
System.out.print("1");
number -= factorOfTwo;
} else
System.out.print("0");
}
} // end of main
}// end of class
Что было первым значением 'factorOfTwo', что пошло не так для? –
Пожалуйста, отсканируйте свой код последовательно, если вы попросите людей попробовать и прочитать его. – khelwood
Возможный дубликат [Преобразование десятичной в двоичную Java] (http://stackoverflow.com/questions/14784630/converting-decimal-to-binary-java) – UserF40