![]() |
|
كيف استبدل حروف الكلمات بارقام من ملف نصي - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : كيف استبدل حروف الكلمات بارقام من ملف نصي (/showthread.php?tid=151) الصفحات:
1
2
|
كيف استبدل حروف الكلمات بارقام من ملف نصي - kml_hmd - 21-04-2008 اكتب برنامج يقوم بتشفير كلمات من ملف حيث يضع بدلا عن الحروف ارقام مطابقة لها مثلا الحرف أ يقابل الرقم 1 و الحرف ب يقابل الرقم 2 وبالتالي كلمة مثل اب ستظهر 21 المشكلة التي تواجهني هي فتح الملف و المرور علي كلماته حرفا حرفا والباقي يبدو اسهل حيث اقوم بكتابة تعليمة فحص الحرف ووضع الرقم المطابق للحرف كيف استبدل حروف الكلمات بارقام من ملف نصي - محمد عبد العزيز - 21-04-2008 الأمر ابسط مما تتوقع فقط عليك ان توضح اكثر: مثلا كلمة "دلفي" كيف ستحول وكيف ستحول الفراغ Space وكيف ستحول الحروف الخاصة وماذا عن اللغة ؟ المثال الذي وضعته فوق "اب" باللغة العربية، فهل ستحول اللغة العربية فقط ؟ والسلام عليكم ورحمة الله كيف استبدل حروف الكلمات بارقام من ملف نصي - kml_hmd - 24-04-2008 اشكرك اخي العزيز علي ردك كما ذكرت فالفكرة تقوم علي ساس ان كل حرف سوف يقابله رقم وبالتالي اذا كانت الحروف العربية 24 حرفا فانه يقابلها 24 رقما مثلا ا يقبل 1 وب يقابل 2 و ج يقابل 3 و د يقابل 4 و ل يقابل 5 وفاء مثلا تقابل 6 والياء تقابل 10 مثلا يعني كل حرف ابجدي هنالك رقم يمثلة و الفراغات تمثل بفراغات وبالتالي فان كلمة دلفي مثلا تتحول الي (د=4 ل=5 ف=6 ي=10 اذن دلفي تكون 10654 ) المشكلة كيف امسك الكلمة حرفا حرفا و استبدل حروفها بالارقام المناظرة لها و الفراغات تكون فراغات اشكرك مجددا كيف استبدل حروف الكلمات بارقام من ملف نصي - محمد عبد العزيز - 24-04-2008 لا يزال الوصف ناقص فانت تقول يتم استبدال الحروف بارقام من 1 الى 24 فان كان لديك هذا 1221 فكيف تعرف هل هو 2 22 1 ام هو 21 12 ام هو 1 2 2 1 والسلام عليكم ورحمة الله كيف استبدل حروف الكلمات بارقام من ملف نصي - Delphawi - 25-04-2008 يمكنك فصل الأرقام بفواصل كيف استبدل حروف الكلمات بارقام من ملف نصي - مهدي - 25-04-2008 السلام عليكم و رحمة الله الحل في المرفقات كيف استبدل حروف الكلمات بارقام من ملف نصي - kml_hmd - 29-04-2008 السلام عليكم ورحمةالله وبركاته اشكرك اخي مهدي علي الملف المرفق والذي سهل كثيرا مسالتي اما بالنسبة لاستفسار الاخ دلتاازيز فان العدد الذي ذكرت 1221 انت تقصد هل هناك فواصل ام لا وهو سؤال فعلا منطقي فهذا الرقم 1221 يمكن ان يقابل كلمة مثل (اببا) بفرض ان ا=1 ب=2 او ممكن ان يكون كلمة مثل ( ابر ) بفرض ان ا=1 ب=2 ر=12 فعلا مسالة الفواصل مهمة وقد حلاها الاخ مهدي بالمثال المرفق حيث وضع الحروف في مصفوف لها 28 عنصر واستبد الحرف بترقيمه في المصفوفة كيف استبدل حروف الكلمات بارقام من ملف نصي - محمد عبد العزيز - 29-04-2008 يا اخي المثل يقول "فهم السؤال نصف الجواب" بصيغة اخرى سؤال ناقص بالطرح لايمكن الاجابة عليه الاخ مهدي اجتهد من عنده واضاف فواصل لكن هذا غير وارد في نص السؤال والسلام عليكم ورحمة الله كيف استبدل حروف الكلمات بارقام من ملف نصي - اسامه الحكيم - 12-07-2012 ================================================================== آ c2 أ c3 إ c5 ا c7 ب c8 ة c9 ت ca ث cb ج cc ح cd خ ce د cf ذ d0 ر d1 ز d2 س d3 ش d4 ص d5 ض d6 ط d7 ظ d8 ع d9 غ da ف e1 ق e2 ك e3 ل e4 م e5 ن e6 ه e7 و e8 ى e9 ي ea مسافة 20 =============================== كيف اقوم بتنفيذ هذه البرمجيه بحيث اننى اضع المعايير فى ملف خارج البرنامج ويقوم البرنامج بتغيير الحروف من خلال استناده على الملف المرفق الذى وضعنا به الحروف وما يقابلها كيف استبدل حروف الكلمات بارقام من ملف نصي - S.FATEH - 17-07-2012 السلام عليكم الفكرة ان نقوم بانشاء جدول يحتوي على الحرف و ما يقابله من كلمة/ رقم نريد تشفيره نقوم بتعريف record يحتوي على حقلين الحرف/ الكلمة و الحرف الكلمة التي سنستبدلها.. كود : TCrypt = record
Alpha: string;
Crypt: string;
end;بعدها نقوم بانشاء مصفوفة غير محددة الابعاد من السجل array of record و بالتالي يكون لدينا جدول التشفير الخاص بنا array تكون غير محدودة الابعاد نحدد ابعادها اثناء زمن التشغيل ... كود : private
CryptTable: array of TCrypt;كود : http://imgur.com/RYZsmالآن كل ما علينا القيام به هو ملئ الجدول الخاص بنا من الملف النصي ملاحظة مهمة الكود للتوضيح و هناك طرق افضل المهم ان تصل الفكرة.... كود : procedure TForm1.CreateCryptTable;
var
StringList: TStringList;
I: Integer;
begin
StringList := TStringList.Create;
try
StringList.LoadFromFile('c:\Data.txt');
SetLength(CryptTable, StringList.Count);
for I := 0 to StringList.Count -1 do
begin
CryptTable[i].Alpha := Copy(StringList[i], 1, Pos(' ', StringList[i]) - 1);
CryptTable[i].Crypt := Copy(StringList[i], Pos(' ', StringList[i]) + 1, Length(StringList[i]));
end;
finally
StringList.Free;
end;
end;البحث و الاستبدال و اككر هناك طرق افضل والكود غير مرتب كما ينبغي لكن شغال 100/100 كود : procedure TForm1.Button1Click(Sender: TObject);
var
StringList: TStringList;
i: Integer;
TmpStr: string;
begin
CreateCryptTable;
StringList := TStringList.Create;
try
StringList.Assign(Memo1.Lines);
for I := 0 to StringList.Count - 1 do
begin
TmpStr := StringList[i];
ReplaceStr(TmpStr);
StringList[i] := TmpStr;
Memo2.Lines.Add(StringList[i]);
end;
finally
StringList.Free;
end;
end;
procedure TForm1.ReplaceStr(var Str: string);
var
i: Integer;
x: Integer;
begin
for I := Length(Str) downto 1 do
begin
for x := 0 to Length(CryptTable) - 1 do
begin
if Str[I] = CryptTable[x].Alpha then
Str := StringReplace(Str, Str[i], CryptTable[x].Crypt, []);
end;
end;
end;S.FATEH |