Мое задание: Написать приложение, которое печатает таблицу двоичных, восьмеричных и шестнадцатеричных эквивалентов десятичных чисел в диапазоне от 1 до 256. Если вы не знакомы с этими системами счисления, поищите в Интернете необходимую информацию. Поместите результаты в JOptionPane.showMesaageDialog.
Мой код в настоящее время:
import javax.swing.*;
public class Prog3_22
{
public static void main (String args[])
{
int a;
int b;
int c;
String billybob = "Decimal "+"\tBinary"+"\tOctal "+"\tHex",binary,oct,hex;
for(int x=1;x<=256;x++)
{
binary="";oct="";hex="";
c=x;
a=x;
b=x;
while (c>0)
{
int rem= c %2;
binary=rem+binary;
c=c/2;
}//end while
while (b>0)
{
int rem= h%16;
hex=rem+hex;
b=b/16;
}
while (a>0)
{
int rem= a%8;
oct=rem+oct;
a=a/8;
}
billybob+="\n" +x+ "\t"+binary+"\t"+oct+"\t"+hex+"\t";
}//end for
JTextArea outputArea = new JTextArea (10,40);
JScrollPane scroller = new JScrollPane (outputArea);
outputArea.setText(billybob);
JOptionPane.showMessageDialog(null,scroller,null,
JOptionPane.INFORMATION_MESSAGE);
}
}
В основном это работает, за исключением столбца Hex, который отображается только как 0. Я не уверен, как это исправить, поэтому любая помощь будет отличной.
Спасибо!