delphi4arab منتديات دلفي للعرب
a ثم يتغير بواسطة timer حتى يصل الى zzzzz - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : a ثم يتغير بواسطة timer حتى يصل الى zzzzz (/showthread.php?tid=507)



a ثم يتغير بواسطة timer حتى يصل الى zzzzz - nacer335 - 30-01-2009

السلام عليكم ورحمة الله تعالى

كيف اعمل برنامج يقوم بالبدأ بالحرف الاول a ثم يتغير بواسطة timer حتى يصل الى zzzzz مثلا
اي مثلما هو في البرامج التي تعمل على البحث عن كلمة سر مثلا
الحرف الاول
a
ثم
b
.
.
.
z
aa
ab
ac
.
.
az
.
.
zzzzzzzz
وشكرا


a ثم يتغير بواسطة timer حتى يصل الى zzzzz - me_delphi - 31-01-2009

هدا مثال بسيط أخي الكريم
PHP كود :
var
  
i:integer;

procedure TForm1.FormCreate(Sender: TObject);
begin
i
:=97;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if i >121 then timer1.Enabled:=false;
memo1.Lines.Add(chr(i));
i:=i+1;
end; 



a ثم يتغير بواسطة timer حتى يصل الى zzzzz - nacer335 - 31-01-2009

أخي الكريم شكرا جزيلا على هدا الرد
لقد وفقت إلى حد كبير في هدا العمل والفكرة
و أود أن أوضح لك بأني أعمل برنامج يبحث عن كلمة سر word excel access
فمحاولتك هده فيها ملاحظتين
الاولى : تظهر النتيجة في سطر واحد مثلا label او edit
الثانية : من a to zzzzzzzzzzzzzz ولا ينتهي عند z
ولقد ارفقت لك في المرفقات بمثال
PHP كود :
const
  
conso: array [0..51] of Char = ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
  
DBNAME = 'Phonebook.MDB';
  
DBPASSWORD = 'nn'; // Access DB Password Protected

procedure TForm1.Timer1Timer(Sender: TObject);
begin
edit4
.Text:= inttostr( strtoint(edit4.Text)+1);
 if 
strtoint(edit2.Text)<>52 then
 begin
edit3
.Text  := '';
edit2.Text:= inttostr( strtoint(edit2.Text)+1);
edit3.Text :=edit3.Text + conso[(strtoint(edit1.Text))];
edit3.Text :=edit3.Text + conso[(strtoint(edit2.Text))];
end;
//////////
 
if strtoint(edit2.Text)=52 then
 begin
edit3
.Text  := '';
edit1.Text:= inttostr( strtoint(edit1.Text)+1);
edit2.Text:='-1';
edit2.Text:= inttostr( strtoint(edit2.Text)+1);
edit3.Text :=edit3.Text + conso[(strtoint(edit1.Text))];
edit3.Text :=edit3.Text + conso[(strtoint(edit2.Text))];
end;

end; 

الارقام طريقتها سهلة
اما الاحرف فلا اجد لها الحل
وشكرا لك والسلام عليكم


a ثم يتغير بواسطة timer حتى يصل الى zzzzz - me_delphi - 01-02-2009

على حسب علمي هده الطريقة تنفع مع التشفير البسيط والغير معقد

اما في عصرنا هدا فأنت تعلم مدى صعوبة الكسر جربت برنامجا يعتمد على نفس الفكرة وتركته يعمل أكثر من 8 ساعات ليكتشف كلمة ملف دو الامتداد rar ولم يفلح..هده الطريقة يلزمها ربما شهور لتكتشف الكلمة هدا ان تم دلك


a ثم يتغير بواسطة timer حتى يصل الى zzzzz - محمد عبد العزيز - 04-02-2009


حاول ان تفكر
مثال لحرف واحد
(دون استخدام Timer لوضيح الفكرة)
PHP كود :
const
ciph: array [0..51] of Char = ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
var
  
i,L:integer;
begin
  L
:=length(ciph)-1;
  for 
i:= 0 to L Do Begin
    Label1
.Caption := ciph[i];
    
Application.ProcessMessages;
    
sleep(10);
  
end;
end; 

حرفين
PHP كود :
const
ciph: array [0..51] of Char = ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
var
  
j,i,L:integer;
begin
  L
:=length(ciph)-1;
  for 
j:= 0 to L Do
  for 
i:= 0 to L Do Begin
    Label1
.Caption := ciph[j]+ciph[i];
    
Application.ProcessMessages;
    
sleep(10);
  
end;
end; 

ثلاث حروف
PHP كود :
const
ciph: array [0..51] of Char = ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
var
  
k,j,i,L:integer;
begin
  L
:=length(ciph)-1;
  for 
k:= 0 to L Do
  for 
j:= 0 to L Do
  for 
i:= 0 to L Do Begin
    Label1
.Caption := ciph[k]+ciph[j]+ciph[i];
    
Application.ProcessMessages;
    
sleep(10);
  
end;
end; 

اربعة حروف
PHP كود :
const
ciph: array [0..51] of Char = ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
var
  
m,k,j,i,L:integer;
begin
  L
:=length(ciph)-1;
  for 
m:= 0 to L Do
  for 
k:= 0 to L Do
  for 
j:= 0 to L Do
  for 
i:= 0 to L Do Begin
    Label1
.Caption := ciph[m]+ciph[k]+ciph[j]+ciph[i];
    
Application.ProcessMessages;
    
sleep(10);
  
end;
end; 

خمسة حروف
PHP كود :
const
ciph: array [0..51] of Char = ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
var
  
n,m,k,j,i,L:integer;
begin
  L
:=length(ciph)-1;
  for 
n:= 0 to L Do
  for 
m:= 0 to L Do
  for 
k:= 0 to L Do
  for 
j:= 0 to L Do
  for 
i:= 0 to L Do Begin
    Label1
.Caption := ciph[n]+ciph[m]+ciph[k]+ciph[j]+ciph[i];
    
Application.ProcessMessages;
    
sleep(10);
  
end;
end; 

هل اتضحت الفكرة ؟ حاول تنظيمها بشكل يتوافق مع نون حرف
والسلام عليكم