package com.java;

import java.util.Scanner;

public class Main {
    public static void main(String arg[])
    {
        Scanner in = new Scanner(System.in);
        String E = "Encrypt", D="Decrypt",a;
        System.out.println("Enter 1st key");
        int key1 = in.nextInt();
        System.out.println("Enter 2nd key");
        int key2 = in.nextInt();
        System.out.println("Enter 3rd key");
        int key3 = in.nextInt();
        System.out.println("Want to do Encrypt or Decrypt:");
        a=in.next();
        if(a.equals("Encrypt"))
        {
            System.out.println("Enter Plain Text:");
            String p = in.next();
            int l = p.length();
            for(int i=0;i<l;i++){
                if(i%3==0){
                    char ch = p.charAt(i);
                    int ascii = ch;
                    ascii = ascii + key1;
                    if((ascii>=65 && ascii<=90) || (ascii>=97 && ascii<=122)){
                        char c =(char)ascii;
                        System.out.print(c);
                    }
                    else if((ascii>90&&ascii<97) || ascii>122){
                        ascii = ascii-26;
                        char c = (char)ascii;
                        System.out.print(c);
                    }
                }
                if(i%3==1){
                    char ch = p.charAt(i);
                    int ascii = ch;
                    ascii = ascii+key2;
                    if((ascii>=65 && ascii<=90) || (ascii>=97 && ascii<=122)){
                        char c =(char)ascii;
                        System.out.print(c);
                    }
                    else if((ascii>90&&ascii<97) || ascii>122){
                        ascii = ascii-26;
                        char c = (char)ascii;
                        System.out.print(c);
                    }
                }
                if(i%3==2){
                    char ch = p.charAt(i);
                    int ascii = ch;
                    ascii = ascii+key3;
                    if((ascii>=65 && ascii<=90) || (ascii>=97 && ascii<=122)){
                        char c =(char)ascii;
                        System.out.print(c);
                    }
                    else if((ascii>90&&ascii<97) || ascii>122){
                        ascii = ascii-26;
                        char c = (char)ascii;
                        System.out.print(c);
                    }
                }
            }

        }
        else if(a.equals("Decrypt"))
        {
            System.out.println("Enter Cipher Text:");
            String p = in.next();
            int l = p.length();
            for(int i=0;i<l;i++){
                if(i%3==0){
                    char ch = p.charAt(i);
                    int ascii = ch;
                    ascii = ascii-key1;
                    if((ascii>=65 && ascii<=90) || (ascii>=97 && ascii<=122)){
                        char c =(char)ascii;
                        System.out.print(c);
                    }
                    if((ascii>90&&ascii<97) || ascii>122){
                        ascii = ascii+26;
                        char c = (char)ascii;
                        System.out.print(c);
                    }
                }
                if(i%3==1){
                    char ch = p.charAt(i);
                    int ascii = ch;
                    ascii = ascii-key2;
                    if((ascii>=65 && ascii<=90) || (ascii>=97 && ascii<=122)){
                        char c =(char)ascii;
                        System.out.print(c);
                    }
                    if((ascii>90&&ascii<97) || ascii>122){
                        ascii = ascii+26;
                        char c = (char)ascii;
                        System.out.print(c);
                    }
                }
                if(i%3==2){
                    char ch = p.charAt(i);
                    int ascii = ch;
                    ascii = ascii-key3;
                    if((ascii>=65 && ascii<=90) || (ascii>=97 && ascii<=122)){
                        char c =(char)ascii;
                        System.out.print(c);
                    }
                    else if((ascii>90&&ascii<97) || ascii>122){
                        ascii = ascii+26;
                        char c = (char)ascii;
                        System.out.print(c);
                    }
                }
            }

        }

    }
}

