Hawa Osman نشر 3 أبريل 2021 أرسل تقرير نشر 3 أبريل 2021 (معدل) كيفية عمل Mono alphabetic cipher في ++C تم التعديل في 3 أبريل 2021 بواسطة Wael Aljamal توضيح السؤال اقتباس
0 Wael Aljamal نشر 3 أبريل 2021 أرسل تقرير نشر 3 أبريل 2021 تعمل هذه الخوارزيمة على استبدال كل حرف بحرف آخر: ويمكن استخدام Hash Map لحل المشكلة: #include <bits/stdc++.h> using namespace std; unordered_map<char,char> hashMap; string encrypt(string msg) { string ciphertext; for(int i=0; i<msg.size(); i++) { ciphertext.push_back(hashMap[msg[i]]); } return ciphertext; } string decrypt(string msg) { string plaintext; for(int i=0; i<msg.size(); i++) { plaintext.push_back(hashMap[msg[i]]); } return plaintext; } void hashFn(string a, string b) { hashMap.clear(); for(int i=0; i<a.size(); i++) { hashMap.insert(make_pair(a[i],b[i])); } } int main() { string alphabet = "abcdefghijklmnopqrstuvwxyz"; string substitution = "qwertyuiopasdfghjklzxcvbnm"; string msg = "absdhj"; hashFn(alphabet, substitution); string cipher = encrypt(msg); cout<<"Encrypted Cipher Text: "<<cipher<<endl; hashFn(substitution, alphabet); string plain = decrypt(cipher); cout<<"Decrypted Plain Text: "<<plain<<endl; } لاحظ سيتم ربط كل حرف بحرف آخر ومن ثم المرور على الأجرف في السلسلة النصية و استبدال كل حرف بالحرف المقابل له. اقتباس
السؤال
Hawa Osman
كيفية عمل Mono alphabetic cipher في ++C
تم التعديل في بواسطة Wael Aljamalتوضيح السؤال
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.