⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hill_cipher_behzad.cpp

📁 hill cipher c++ program
💻 CPP
字号:
#include <iostream>
#include <stdio.h>

            //prepared by Behzad Khiavchi ,std#:085050


int mod(int x)  
{
  while (x > 25)
    x = x-26;
  return (x);
}


void convert(char a, char b)
{
  int aa, bb;

  aa = a - 'a';
  bb = b - 'a';

  cout << endl;
  cout << char(mod((aa*2 + bb*3))+ int('a'));
  cout << char(mod((aa*4 + bb*5))+ int('a')) << endl;
  cout << endl;
}
void decrypt(char a, char b)
{
  int aa, bb;

  aa = a - 'a';
  bb = b - 'a';

  cout << endl;
  cout << char(mod((aa*(-5/2) + bb*(3/2)))+ int('a'));
  cout << char(mod((aa*2 +      bb*(-1)))+ int('a')) << endl;
  cout << endl;
}




main()
{
   int counter = 0;
   int choice,skip;
   char a, b, d;  

    cout<<endl;
 cout<<"** HILL CIPHER **"<<endl;
 cout<<"By Behzad Khiavchi   std#:085050"<<endl;
  cout<<endl;
   cout<<endl;
    cout<<endl;
 cout<<"To encrypt Enter(1):"<<endl;
 cout<<"To decrypt Enter(2):"<<endl;
  cin>>choice;
  if(choice==1)
  {

  while(1){
    if(skip==0)
    break;
    if(skip==1)
    counter++;
    cout << "Enter two letter group  in lower case for encryption: [" << counter << "] > ";
    cout << endl;
    a = getchar();
    b = getchar();
    d = getchar();
    convert(a, b);
  cout<<"To proceed Enter(1):"<<endl;
  cout<<"To   exit  Enter(0):"<<endl;
     cin>>skip;
  }
  }
  if(choice==2)
  {

  while(1){
    if(skip==0)
    break;
    if(skip==1)
    counter++;
    cout << "Enter two letter group  in lower case for decryption:[" << counter << "] > ";
    cout << endl;
    a = getchar();
       b = getchar();
       d = getchar();
       decrypt(a, b);
  cout<<"To proceed Enter(1):"<<endl;
  cout<<"To   exit  Enter(0):"<<endl;
     cin>>skip;
  }

 }


  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -