15-05-13, 09:39 AM
huthefa كتب :ممكن تشرح الكود
السلام عليكم ورحمة الله وبركاته
تفضل أخي الكريم
كود :
Public Class Form1
[COLOR="#008000"] 'مصفوفة بها الأحرف التي
'سيتم التشفير بناء عليها
'ولا يشترط فيها هذا الترتيب
'بل تستطيع أن تضع أي ترتيب[/COLOR]
Dim EncryptionArray As Char() = {"Z", "Y", "X", "W", "V", "U", "T", "S", "R", "Q", "P",
"O", "N", "M", "L", "K", "J", "I", "H", "G", "F",
"E", "D", "C", "B", "A"}
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
[color=#008000] 'متغير نصي لتخزين النص المشفر فيه[/color]
Dim EncryptedText As String = ""
[COLOR="#008000"] 'حلقة تكرارية تقوم بالمرور على النص
'المكتوب حرفا حرفا بعد تحويله إلى
'أحرف كبيرة[/COLOR]
For Each Letter In TextBox1.Text.ToUpper.ToCharArray
[COLOR="#008000"] 'هنا سيتم التحقق ما إذا كان الحرف
'موجود داخل مصفوفة التشفير أو لا[/COLOR]
If Array.IndexOf(EncryptionArray, Letter) > -1 Then
[COLOR="#008000"] 'الحرف موجود داخل المصفوفة
'إذن سنقوم بتحويله إلى نظيره من أحرف التشفير
'ما هي الطريقة
'عدد عناصر المصفوفة 26 حرف
'وعدد الأحرف الإنجليزية 26 حرف
'فاعتمدنا على معرفة النظير بناء على الترتيب الآسكي
'حيث أن حرف
'A
'يبدأ من 65 فلو كتب المستخدم الحرف
'(A) or (a)
'فسنقوم بطرح قيمة الآسكي به وهي 65 من القيمة 65
'ليكون الناتج صفر أي العنصر الأول من المصفوفة[/COLOR]
EncryptedText &= EncryptionArray(Asc(Letter) - 65)
Else
[color=#008000] 'الحرف غير موجود في المصفوفة إذن سنبقي عليه كما هو بدون تغيير[/color]
EncryptedText &= Letter
End If
Next
[color=#008000] 'نسند القيمة في مربع النص الثاني[/color]
TextBox2.Text = EncryptedText
End Sub
End Classبالتوفيق

