Grazie ai vostri consigli sono riuscito ad abbozzare un programma che funziona ( o quasi ), ma mi rimangono tre piccoli problemi.
1- scrivo " CaSa " dovrebbe darmi " XzFz "
2- scrivo " ?casa- " dovrebbe darmi " ?xzfz- "
3- Poi se scrivo " ciao come stai " gli spazi nell'output sono troppo larghi!!!
Il codice funzionante è questo
// Criptografia
import javax.swing.*;
public class Cripto {
public static void main ( String args [] )
{
String alfa[] = { "a","b","c","d","e","f","g","h","i","j","k","l ",
"m","n","o","p","q","r","s","t","u","x","y","z " };
String input , // Stringa di input
output = " "; // Stringa di output
input =
JOptionPane.showInputDialog(" Inserisci la frase da criptare ");
// seleziona i caratteri
for ( int i = 0; i < input.length(); i++ ){ // inizio primo for
for ( int j = 0; j < alfa.length ; j++ ) { // inizio secondo for
// controlla gli spazi
if ( input.substring(i,i+1).equals(" "))
output+= " ";
// controlla ed effettua gli scambi
if ( input.substring(i,i+1).equals(alfa[j]))
output+= alfa[23-j];
} // fine secondo for
} // fine primo for
JOptionPane.showMessageDialog(null,output,"La frase criptata e': ",
JOptionPane.INFORMATION_MESSAGE );
System.exit(0);
} // fine main
} // fine classe
Grazie per il vostro aiuto ci siamo quasi...

Rispondi quotando