-1

10 進数を 2 進数に変換し、その 2 進数を返したいと思います。intただし、この 2 進数を 1 つの変数全体として表すことができる必要があります。私が見た例と過去の質問は、0 と 1 を別々に返すだけで、うまくいきません。

現在、私がやっている方法では、0 と 1 をint配列に格納しています。これらすべての配列要素を取得して 1 つのint変数を形成する方法はありますか? または、別のより良い方法はありますか?Java ライブラリの呼び出しをできるだけ少なくしようとしています (つまり、parseInt() などを少し)。

4

3 に答える 3

-1

コードを試す

import java.util.*;

public class number
{
    public static void main (String [] args)
    {
        Scanner input = new Scanner (System.in);
        System.out.println ("Input decimal number");
        int decimal = input.nextInt ();
        input.close ();

        int base = 2;
        int result = 0;
        int multiplier = 1;

        while (decimal>0)
        {
            int residue = decimal%base;
            decimal = decimal/base;
            result = result +residue*multiplier;
            multiplier = multiplier * 10;
        }
        System.out.println ("binary....."+result);
    }
}

詳細についてはhttp://forum.codecall.net/topic/54004-decimal-to-binary-number/

于 2013-02-05T04:37:36.847 に答える
-1

このコードを試してください:

import java.lang.*;
import java.io.*;
public class BinaryToDecimal{
    public static void main(String[] args) throws IOException{
        BufferedReader bf= new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Enter the Binary value: ");
        String str = bf.readLine();
        long num = Long.parseLong(str);
        long rem;
        while(num > 0){
            rem = num % 10;
            num = num / 10;
            if(rem != 0 && rem != 1){
                System.out.println("This is not a binary number.");
                System.out.println("Please try once again.");
                System.exit(0);
            }
        }
        int i= Integer.parseInt(str,2);
        System.out.println("Decimal:="+ i);
    }
}
于 2013-02-05T04:44:21.730 に答える
-1

テスト済みコード........

private Double decToBin(int nm) {
    String hex = "" + nm;
       int i = Integer.parseInt(hex);
    String by = Integer.toBinaryString(i);
    System.out.println("Binary: " + by);
    return Double.parseDouble(by);
}

必要なところに書いてください...??

else if (re.equals(" Bin ")) {
                    try {

                        String prev = data.get(i - 1);
                        result =decToBin(Integer.parseInt(prev));
                        re = "" + result;
                        i++;
                        twoValue = true;

                    } catch (Exception e) {
                        e.printStackTrace();
                    }}
于 2013-03-11T12:40:28.507 に答える