1
Java(自由時間)を学び、なぜこれ以上の変数を出力しているのか教えようとしています。私は8ビットを印刷するだけです。私は& 255を入力しようとしましたが、後続の数字を取り除くために何もしませんでした。バイナリ数字で8ビット以上の数字を出力する
例: 合計がある:あなたが10ビットを計算するプログラムを強制的に、そして10ビット(int arr[] = new int[10]
)を印刷しているため0000111110
Scanner sn = new Scanner(System.in);
int arr[] = new int[10];
int i,m,n,sum,carry=0;
System.out.print("Enter 8-bit signed binary number:");
int n1 = sn.nextInt();
System.out.print("Enter another binary number:");
int n2 = sn.nextInt();
for(i=arr.length-1;i>=0;i--){
m=n1%10;
n=n2%10;
n1=n1/10;
n2=n2/10;
sum=m+n+carry;
if(sum==1)
{
arr[i]=1;
carry=0;
}
else if(sum==2)
{
arr[i]=0;
carry=1;
}
else if(sum==3)
{
arr[i]=1;
carry=1;
}
else{
arr[i]=m+n+carry&255;
}
}
System.out.printf("The sum is:");
for(i=0;i<arr.length;i++) {
System.out.print(arr[i]);
}
System.out.println("");
}
ユーザーは入力として「疑似バイナリ番号」と入力するものは何ですか? 0と1だけの数字のように? 'nextInt()'で入力を読み込むからです。 – Maljam
申し訳ありません!はい!それはちょうど0か1であると仮定します! – ohdust
正確な問題は何ですか?プログラムが正しく動作しているようです。先行ゼロを取り除き、8桁のみを出力したいですか?これをプリントアウト –