using static System.Console;
public static void Main() {
WriteLine("ESCOLHA UMA OPÇÃO");
WriteLine("-----------------");
WriteLine("1-Encriptar");
WriteLine("2-Decriptar");
WriteLine("-----------------");
if (!int.TryParse(ReadLine(), out escolha) || escolha < 0 || escolha > 2) {
WriteLine("Opção inválida");
WriteLine("Digite a mensagem: ");
var mensagem = ReadLine();
WriteLine("Digite a chave: ");
WriteLine(mensagem.ToUpper());
WriteLine(chave.ToUpper());
WriteLine(CifraVigenere(mensagem, chave, escolha == 1));
private static string CifraVigenere(string mensagem, string chave, bool flag) {
for (int i = 0, j = 0; i < mensagem.Length; i++, j++) {
char c = char.ToUpper(mensagem[i]);
if (c < 'A' || c > 'Z') continue;
codigo += (char)((c + char.ToUpper(chave[j % chave.Length]) - 2 * 'A') % 26 + 'A');