_________________________________________________
[code ]
Código
[/code ] [/quote]______________
public class CifradoCesar { public static String alfabetoCesar = "abcdefghijklmnñopqrstuvwxyz ";//"abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ"; /** * Función para cifrar una cadena conun desplazamiento x * @param cadena * @param desplazamiento * @return */ for(int i = 0; i<cadena.length();i++){//Por cada caracter de la cadena original int nuevaPosicion = (alfabetoCesar.indexOf(cadena.charAt(i)) + desplazamiento) % alfabetoCesar.length();//Posicion x + n mod 27 cesar = cesar + alfabetoCesar.charAt(nuevaPosicion);//Concatena texto cifrado } return cesar; } /** * Función para descifrar una cadena con un desplazamiento x * @param cesar * @param desplazamiento * @return */ for(int i = 0; i<cesar.length();i++){//el desplazamiento no debe ser mayor al tamaño de caracteres int nuevaPosicion = (alfabetoCesar.indexOf(cesar.charAt(i))+alfabetoCesar.length()-(desplazamiento%alfabetoCesar.length()))%alfabetoCesar.length();//Posicion x - n mod 27 cadenaDescifrada+=alfabetoCesar.charAt(nuevaPosicion);//Concatena texto descifrado } return cadenaDescifrada; } /** * @param args the command line arguments */ } }
y lo que quiero hacer con el metodo descifrarCesar es esto
while(desplazamiento <=cifrado.length()){
aqui todo el for que se encuentra en ese metodo
desplazamiento++;
}
pero me da error.
o alguien me podria dar otra sugerencia para modificar ese metodo y me regrese las 28 posibles respuestas????, es que no se me ocurre otra cosa.
NOTA: solo puedo modificar ese método.
Ya me desespere, llevo como una semana con esto