Estou com um problema, meu professor pediu para eu fazer a cifra de bacon, e o maior problema é como vou colocar o espaço no resultado, ele aparece todo junto no final e eu queria que aparece como a pessoa digitou segue o código a baixo:
binario[0] = “00001”; binario[1] = “00010”;binario[2] = “00011”; binario[3] = “00100”;
binario[4] = “00101”; binario[5] = “00110”; binario[6] = “00111”;binario[7] = “01000”;
binario[8] = “01001”;binario[9] = “01010”;binario[10] = “01011”;binario[11] = “01100”;
binario[12] = “01101”;binario[13] = “01110”;binario[14] = “01111”; binario[15] = “10000”;
binario[16] = “10001”;binario[17] = “10010”; binario[18] = “10011”;binario[19] = “10100”;
binario[20] = “10101”;binario[21] = “10110”;binario[22] = “10111”;binario[23] = “11000”;
binario[24] = “11001”;binario[25] = “11010”;
binario2[0] = "a"; binario2[1] = "b";binario2[2] = "c"; binario2[3] = "d";
binario2[4] = "e"; binario2[5] = "f"; binario2[6] = "g";binario2[7] = "h";
binario2[8] = "i";binario2[9] = "j";binario2[10] = "k";binario2[11] = "l";
binario2[12] = "m";binario2[13] = "n";binario2[14] = "o"; binario2[15] = "p";
binario2[16] = "q";binario2[17] = "r"; binario2[18] = "s";binario2[19] = "t";
binario2[20] = "u";binario2[21] = "v";binario2[22] = "w";binario2[23] = "x";
binario2[24] = "y";binario2[25] = "z";
String v = "";
String w = "";
String x = txt_1.getText().replaceAll(" ", "");
String y = txt_2.getText();
String[] texto1 = new String[x.length()];
String[] texto2 = new String[x.length()*5];
String[] texto3 = new String[x.length()*5];
if((x.length()*5) > y.length())
{
int z = (x.length()*5)-y.length();
JOptionPane.showMessageDialog(null, "Ainda falta " + z + " letras para funcionar");
}
for (int i = 0; i < x.length(); i++)
{
texto1[i] = x.substring(i,i+1).toLowerCase();
}
for (int i = 0; i < texto1.length; i++)
{
for (int j = 0; j < binario2.length; j++)
{
if(texto1[i].equals(binario2[j]))
{
w = w.concat(binario[j]);
}
}
}
for (int i = 0; i < x.length()*5; i++)
{
texto2[i] = y.substring(i,i+1);
texto3[i] = w.substring(i,i+1);
if(texto3[i].equals("0"))
{
texto2[i] = texto2[i].toLowerCase();
}
else
{
texto2[i] = texto2[i].toUpperCase();
}
v = v.concat(texto2[i]);
}
txt_3.setText(""+w);
txt_4.setText(""+v);
//--------------------------------------DECODIFICAÇÃO--------------------------------------
int numero1 = 0,numero2 = 0;
numero1 = (txt_1.getText().length()*5)/4;
String a = "";
String b = "";
String[] numero = new String[numero1];
for (int i = 0; i < w.length()/5; i++)
{
a = w.substring(numero2,numero2+5);
numero2 += 5;
for (int j = 0; j < binario.length; j++)
{
if(a.equals(binario[j]))
{
b = b.concat(binario2[j]);
}
}
}
txt_5.setText(b);