#include #include #include #include void encrypt(void); void decrypt(void); int gcd(int); int invr(int); int phi(int); void main() { clrscr(); char chk; do { printf("\n \n MAIN MENU:"); printf("\n"); printf("\t \t \t \n PROGRAM TO DEMONSTRATE AFFINE CIPHER:"); printf("\n"); printf("\n Press 'e' to encrypt 'd' to decrypt 'x' to exit:"); scanf("%c",&chk); printf("\n"); switch(chk) { case 'd': decrypt(); break; case 'e': encrypt(); break; case 'x': break; default: break; } clrscr(); } while(chk!='x'); } void decrypt() { char cip[50];char* res; int t,l,i=0,arr[50],flag=0,j=0,m=0; printf("\n Enter the cipher text in upper case:"); cin.getline(cip,'\50'); l=strlen(cip); res=new char[312*l+1]; printf("\n The possible plain texts are:"); do { arr[j]=int(cip[j])-65; t=arr[j]; //cout<312*l) { lm=k; k++; cout<<"\t"; //getche(); } } delete res; getche(); } void encrypt() { char pln[50]; int a,b,t,l,arr[50],i; printf("\n Enter the key:"); scanf("%d%d",&a,&b); gcd(a); if(gcd(a)!=1) { printf("\n Message can be encrypted but cannot be decrypted back:"); getche(); } else printf("\n Enter the plaintext in lower case:"); cin.getline(pln,'\50'); l=strlen(pln); printf("\n The encrypted message is:"); for(i=0;i