C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++のポリュビオススクエア暗号


この問題では、文字列が与えられ、 Polybius Square Cipherを使用してその整数暗号化を見つける必要があります。 。

ポリュビオスの正方形の暗号

文字を数字に変換するために使用されるテーブルです。英語暗号化のテーブルは5X5テーブルです。つまり、英語辞書の26個のアルファベットに対して25個のセルが含まれています。文字iとjは1つのセルにまとめられています。

次の表は、ポリュビオスの正方形の暗号を示しています。 −


1 2 3 4 5
1 A B C D E
2 F G H I、J K
3 L M N O P
4 Q R S T U
5 V W X Y Z

表の文字はランダム化できます。また、テーブルのサイズは、言語のアルファベットの数に基づいて変更できます。

問題を理解するために例を見てみましょう

入力 −こんにちは

出力 − 2315313134

この問題を解決するために、数字の各ペアを取得して、対応する文字を確認するプログラムを作成します。

ソリューションのイラストを表示するプログラム-

#include <cmath>
#include <iostream>
using namespace std;
void LetterToNumber(string str) {
   int R, C;
   for (int i = 0; str[i]; i++) {
      R = ceil((str[i] - 'a') / 5) + 1;
      C = ((str[i] - 'a') % 5) + 1;
      if (str[i] == 'k') {
         R = R - 1;
         C = 5 - C + 1;
      }
      else if (str[i] >= 'j') {
         if (C == 1) {
            C = 6;
            R = R - 1;
         }
         C = C - 1;
      }
      cout<<R<<C;
   }
   cout << endl;
}
int main() {
   string str = "tutorialspoint";
   cout<<"The numeric encryption of string '"<<str<<"' is : ";
   LetterToNumber(str);
   return 0;
}

出力

The numeric encryption of string 'tutorialspoint' is: 4445443442241131433534243344

  1. C++の正方形の外接円の面積

    この問題では、正方形の辺が与えられたときに、正方形の外接円の面積を計算します。先に進む前に、概念をよりよく理解するために基本的な定義を修正しましょう。 正方形 はすべての辺が等しい四辺形です。 外接円 円はポリゴンのすべての頂点に接しています。 エリア は、任意の2次元図形の範囲を定量的に表したものです。 正方形の外接円の面積を計算します。円と正方形のパラメータの関係を見つける必要があります。 これで、図のように、正方形のすべての頂点が円に接触しています。この図を見ると、正方形の対角線は円の直径に等しいと結論付けることができます。 これを使用して、円の直径と正方形の辺の関係を

  2. C++でのAreaOfSquareのプログラム

    長方形の辺が与えられ、その辺から正方形の領域を印刷することがタスクです。 正方形は、4つの辺を持ち、それぞれ90度の4つの角度を形成し、すべての辺が同じ形状の2D平面図形です。言い換えれば、正方形は辺が等しい長方形の形であると言えます。 以下に示すのは正方形の表現です- 正方形の面積はSidexSide 例 Input: 6 Output: 36 As the side is 6 so the output is 6*6=36 Input: 12 Output: 144 アルゴリズム START    Step 1-> Declare a functio