#include<stdio.h>
#include<conio.h>
void main()
{
int i,j,m,a[26][26],klen,plen;
char p[100],p1[100],e[100],d[100],k[100];
clrscr();
printf("\n Enter plaintext::::");
gets(p);
printf("\n Enter key::::");
gets(k);
for(i=0;i<26;i++)
{ m=i;
for(j=0;j<26;j++)
{ if(m<=25)
{a[i][j]=m+97;
m++;
}
else
{a[i][j]=97;
m=1;
}
}
}
plen=strlen(p);
klen=strlen(k);
m=0;
for(i=0;i<plen;i++)
{ if(p[i]!=32)
{p1[m]=p[i];
m++;}
}
plen=strlen(p1);
m=0;
for(i=klen;i<plen;i++)
{
if(m==klen)
{m=0;
}
k[i]=k[m];
m++;
}
k[i]='\0';
printf("%s",k);
/*
for(i=0;i<26;i++)
{ printf("\n");
for(j=0;j<26;j++)
printf("%c",a[i][j]);
}
*/
printf("%d",plen);
//encryption part
printf("\n Encrypted text:::::::::::::::::");
for(i=0;i<plen;i++)
{e[i]=a[k[i]-97][p1[i]-97];
printf(" %c ",e[i]);
}
//Decryption part
printf("\n Decrypted text:::::::::::::::::");
for(i=0;i<plen;i++)
{ if(e[i]<k[i])
{d[i]=a[0][27-abs(e[i]-k[i])];
//
printf("%d",27-(abs(e[i]-k[i])));
}
else
d[i]=a[0][e[i]-k[i]];
//printf(" %d",abs(e[i]-k[i]));
printf(" %c ",d[i]);
}
getch();
}
OUTPUT:
Comments
Post a Comment