الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Help In Ceasar Cipher

بدأه مبرمجة-123 في 2 أبريل 2008 · 9 رد · 879 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لو سمحتوا اعضاء المنتدى ... انا محتاجة مساعدة بكتابة برنامج

اتمنى تساعدوني

البرنامج حيقرا تكست من اليوزر

وحيطلب منه يدخل كي معين

وحسب هذا الكي رح يجمع الكي عالكلمة

ويعرض لها النتيجة كتسكت

e.g. Text1 = abc

Key = 1

Result = bcd

المشكلة هنا انا ماقدرت اتعامل مع التكست ... لازم اول شئ احوله الى رقم عشان اجمع الكي وبعدين ارجعه للتكست

انا استخدمت

Asc(p)

Chr(n)

فماادري المشكلة من تحويل التكست الى رقم !!!

بس ماتطلع هالمشكلة الا لما يدخل الكي كبير شوي

بحيث انو لازم يرجع من الحروف اللي بالبداية

e.g. Text1 = xyz

key = 1

المفروض يعطيني

Result = yza

بس هو مايعطيني ال

a

فحطيت هالجملة

n = (Asc(Text1) + key ) Mod 26

ونفس الشئ ماضبط

ايش الحل برايكم ؟

شكرا

#2

بالنسبة لي لم افهم ما تريدين اتمنى المزيد من التوضيح

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#3

اليك هذا الكود -- حسب ما فهمت --

Function TransKey(KeyText As String, KeyNo As Integer) As String
Dim AscKey As Integer
Dim Result As String
Dim T As Integer
KeyText = UCase(KeyText)
For T = 1 To Len(KeyText)
	AscKey = Asc(Mid(KeyText, T, 1))
	If AscKey < 65 Or AscKey > 90 Then MsgBox "Wrong Key", vbInformation: Exit Function
	AscKey = AscKey + KeyNo
	If AscKey > 90 Then
	  AscKey = (((AscKey - 65) / 26) - ((AscKey - 65) \ 26)) * 26 + 65
	End If
	TransKey = TransKey & Chr(AscKey)
Next T
End Function

تم تعديل هذه المشاركة بواسطة عبدالفتاح حسن في 2 أبريل 2008 في 10:46

كن كالنخيل عن الأحقاد مرتفعا .. يرمى بصخر فيرمى أطيب الثمر

#4

شكرا جزيلا على المساعدة ... الحمد لله مشى ...

بس ممكن استفسار ؟

الحروف الهجائية 26 حرف ... بس على أي اساس اخترت 65 و 90 ؟

جزاك الله خير :)

#5

لا شكر على واجب ..

فى الكود السابق يتم التعامل مع الأسكى كود الخاص بالحروف من A وحتى Z

والأسكى كود يبدا من 65 ويمثل الحرف A وحتى 90 ويمثل الحرف Z

ارجو ان اكون قد افدت ...

كن كالنخيل عن الأحقاد مرتفعا .. يرمى بصخر فيرمى أطيب الثمر

#6

شكراااااا جزيلا ... بصراحة معلومة مفيدة جدا بالنسبة لي

جزاك الله خير

طيب عندي سؤال زيادة ::$ معليش ازعجتكم ... سامحوني

تعرفون ال matrix بالرياضيات ... الحين لو مطلوب من اليوزر يدخل جملة

كيف اقدر اصفها بالماتريكس ؟ طريقتها كيف ؟ ولا اصير اقراها حرف حرف !!؟؟ بس هنا المشكلة لازم اصير محددة ال Dimension للماتريكس

جزاكم الله خير الجزاء :)

#7
Dim ArrLetter() As String
'لوضع النص فى مصفوفة
Sub TextToArr(Text As String)
'اعادة تعريف المصفوفة مع تحديد عدد عناصرها
	ReDim ArrLetter(1 To Len(Text))
	For t = 1 To Len(Text)
		ArrLetter(t) = Mid(Text, t, 1)
	Next t
End Sub

'لمعرفة عدد عناصر المصفوفة
MsgBox UBound(ArrLetter)
'لمعرفة العنصر رقم 3 مثلا
MsgBox ArrLetter(3)

كن كالنخيل عن الأحقاد مرتفعا .. يرمى بصخر فيرمى أطيب الثمر

#8

شكرا لك ... بس انا عندي مشكلة بالماترريكس

مااني عارفة اقرا جملة ورى بعض وبعدين اروح اصفها بماتريكس (بسايز معين)

عشان اجري عليها بعض العمليات :(

يعني مثلا اليوزر حيدخل لي كلمة code is ready

انا لازم اروح واكتب هالحروف بماتريكس (نفرض اننا مثبتين عدد الاعمدة ودايم يصير 4 ) فلو حاولنا نحطها بماتركيس حتطلع حجمها 3 صفوف و 4 اعمدة ... مع العلم ان اخر مدخل بالماتريكس فاضي ( وعشان حنسوي عمليات متعارف اننا نحط اي شئ فيه ولنفرض حرف x )

وبالتالي تصير الماتريكس بالشكل [ c o d e

i s r e

a d y z ]

وهذا اللي مسبب لي مشكلة

#9
اقتباس
مااني عارفة اقرا جملة ورى بعض وبعدين اروح اصفها بماتريكس (بسايز معين)

عشان اجري عليها بعض العمليات

يرجى التوضيح هل تريدين وضع كل كلمة فى الجملة كعنصر فى المصفوفة ام ماذا ؟؟؟

وما هى نوع العمليات المراد تنفيذها على عناصر المصفوفة .

كن كالنخيل عن الأحقاد مرتفعا .. يرمى بصخر فيرمى أطيب الثمر

#10

شكرا لك اخي على تعاونك معي

ايه انا كنت اسال كيف اني اقرا تكست من اليوزر واصفه بماتريكس (بحجم معين محدد مسبقا) ... بس الحمد لله عرفت

والطريقة ليست صعبة كما كنت أظنها ... فقط عبارة اني اعمل loop بالحجم اللي ابيه واخزن اي حرف عند قرائته ... الحمد لله الامور تيسرت :)

ولانسى مساعدتكم لي بعد الله ... جزاك الله خير ...

مواضيع مشابهة