Skip to content

Instantly share code, notes, and snippets.

@dannluciano
Created December 7, 2021 19:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dannluciano/9dd69ef44e3c2746f9432aa1885b43d4 to your computer and use it in GitHub Desktop.
Save dannluciano/9dd69ef44e3c2746f9432aa1885b43d4 to your computer and use it in GitHub Desktop.
CifraROT13
import java.util.Scanner;
public class CifraROT13 {
public static void main(String[] args) {
char[] mapa = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
int chave = 13;
Scanner teclado = new Scanner(System.in);
System.out.println("ROT13");
while (true) {
System.out.println("Digite uma Mensagem:");
String mensagemOriginal = teclado.nextLine();
mensagemOriginal = mensagemOriginal.toUpperCase();
String mensagemCifrada = "";
for (int i = 0; i < mensagemOriginal.length(); i++) {
char letra = mensagemOriginal.charAt(i);
int indice = 0;
boolean eAlfa = false;
while (indice < mapa.length) {
if (letra == mapa[indice]) {
eAlfa = true;
break;
}
indice++;
}
int indiceCifrado = (indice + chave) % mapa.length;
char letraCifrada = mapa[indiceCifrado];
if (eAlfa) {
mensagemCifrada += letraCifrada;
} else {
mensagemCifrada += letra;
}
}
System.out.println("-".repeat(40));
System.out.println(mensagemCifrada);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment