2014-02-25 79 views
0

嘿,所以我在我的大学里学习了我的第一个cs课程,并且在java中讲授了它。我无法将十进制转换为二进制。我似乎能够得到正确的输出,但它以相反的顺序,我不知道如何把它放在正确的顺序,这里是我到目前为止编码,在Java中将十进制转换为二进制有逆转顺序的问题

import java.util.*; 
public class lab6 { 
public static void main(String[] args) { 
Scanner input = new Scanner(System.in); 
    System.out.print("Enter a decimal number to convert to binary: "); 
    int x = input.nextInt(); 
    int y; 
    String y1=""; 
    while(x!=0){ 
     y=x%2; 
     x=x/2; 
     y1 = Integer.toString(y); 
     System.out.print(y1+" "); 
    }  
} 
} 

回答

0

看来你只是以正确的顺序显示输出。但是如果你想扭转电流输出,你可以使用下面的代码:

 Scanner input = new Scanner(System.in); 
     System.out.print("Enter a decimal number to convert to binary: "); 
     int x = input.nextInt(); 
     int y; 
     String y1=""; 
     String reverse = ""; 
     while(x!=0){ 
      y=x%2; 
      x=x/2; 
      y1 = Integer.toString(y); 
     // System.out.print(y1+" "); 
      reverse = y1+" "+reverse; 
     }   
     System.out.println("Reverse Order :"+reverse); 
2

您可以存储在某些容器中的数字(例如ArrayList),然后在迭代时将它迭代回前面打印每个数字。

0

要添加到Ivaylo答案,您还可以将其存储在StringBuilder中,并使用reverse方法将其反转。

相关问题