Advertisement
Guest User

Untitled

a guest
Mar 6th, 2014
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.15 KB | None | 0 0
  1.  
  2. public class Vigenère_Cipher {
  3.    
  4.     public static String encode(String key, String message) {
  5.         StringBuilder newKey;
  6.         key = key.toUpperCase();
  7.         message = message.toUpperCase();
  8.         if (key.length() < message.length()) {
  9.             int i = 0;
  10.             newKey = new StringBuilder();
  11.             while (newKey.length() < message.length()) {
  12.                 if (i >= key.length()) {
  13.                     i = 0;
  14.                     newKey.append(key.charAt(i));
  15.                 }
  16.                 else {
  17.                     newKey.append(key.charAt(i));
  18.                 }
  19.                 i++;
  20.             }
  21.         }
  22.         else if (key.length() > message.length()) {
  23.             newKey = new StringBuilder(key.substring(0, message.length()));
  24.         }
  25.         else {
  26.             newKey = new StringBuilder(key);
  27.         }
  28.        
  29.         StringBuilder encodedMessage = new StringBuilder();
  30.         String alphabets = "abcdefghijklmnopqrstuvwxyz".toUpperCase();
  31.         for (int i=0;i<message.length();i++) {
  32.             int index1 = alphabets.indexOf(message.charAt(i));
  33.             int index2 = alphabets.indexOf(newKey.charAt(i));
  34.             encodedMessage.append(alphabets.charAt((index1 + index2) % 26));
  35.         }
  36.        
  37.        
  38.         return encodedMessage.toString();
  39.     }
  40.    
  41.     public static void main(String[] args) {
  42.         System.out.println(encode("REDDIT", "TODAYISMYBIRTHDAY"));
  43.     }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement