Java
Cifrado César en Java
24 may
Versión en Java del algoritmo de cifrado César, programada por [p3ll3].
package cifradocesar; import java.io.*; /** * * @author p3ll3 */ public class Main { public static BufferedReader Data = new BufferedReader (new InputStreamReader (System.in)); public static void main(String[] args)throws IOException{ CodeCesar(); } public static void CodeCesar()throws IOException{ char [] lLetter = {'a','b','c','d','e','f','g','h','i','j','k','l', 'm','n','o','p','q','r','s','t','u','v','w','x','y', 'z'}; String CesarWord = ""; int Key = 0; System.out.println("Digite la palabra que desea cifrar: "); String Word = Data.readLine(); // recibimos la palabra Word = Word.toLowerCase(); // la pasamos a minusculas System.out.println("Digite la clave para codificar (entre 1 y 24): "); // pedimos clave Key = Integer.parseInt(Data.readLine()); // pasamos a entero if( (Key >= 1)&&(Key <= 26) ){ // confirmar clave correcta for (int i=0;i<Word.length();i++){ //recorro la palabra //hasta el final for (int j=0;j<lLetter.length-1;j++){ //recorro el abecedario if(Word.charAt(i) == lLetter[j]){ //busco caracteres que esten //en la palabra y en el abecedario if( (j+Key) >= 26){ //si la clave es mayor a mi abecedario, paso al else int temp = j+Key; //suma claves temporales int tmp = temp-26; CesarWord = CesarWord.concat(""+lLetter[tmp]);//voy creando la nueva palabra }else{ CesarWord = CesarWord.concat(""+lLetter[j+Key]); //creando palabra cifrada } } } } }else{ System.out.println("Digite un numero correcto de clave"); CodeCesar(); } System.out.println("Su palabra cifrada es: "+CesarWord); } }Más >

