fork download
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4. int charToNum (char c)
  5. {
  6. return int(c)-97;
  7. }
  8. int main ()
  9. {
  10. string M="klimov sergei";
  11. cout<<"Original Message: M="<<M<<endl;
  12. int L=M.length();
  13. /*
  14.   //Caesar
  15.   int csrk=3;
  16.   cout<<"Caesar cipher:"<<endl;
  17.   cout<<"Key="<<csrk<<endl;
  18.   for (int i=0;i<L;i++) {
  19.   if (M[i]>=97 && M[i]<=122)
  20.   cout<<M[i]<<":"<<"C["<<i<<"]="<<charToNum(M[i])<<"+"<<csrk<<"="<<char(97+(charToNum(M[i])+csrk)%26)<<endl;
  21.   else
  22.   cout<<M[i]<<":"<<"C["<<i<<"]="<<M[i]<<endl;
  23.   }
  24.   */
  25. //Gronsfeld
  26. string grnk="1984";
  27. string grnk2=grnk;
  28. cout<<"Gronsfeld cipher:"<<endl;
  29. cout<<"Key="<<grnk<<endl;
  30. for (int i=grnk2.length();i<M.length();i++)
  31. grnk2[i]=grnk[i%4];
  32. cout<<"Full length key="<<grnk2<<endl;
  33.  
  34. }
Runtime error #stdin #stdout 0s 4052KB
stdin
Standard input is empty
stdout
Original Message: M=klimov sergei
Gronsfeld cipher:
Key=1984
Full length key=1984