|
#31
|
|||
|
|||
Цитата:
Спасибо за код , если можно поясните принцип работы . А на счет ждать : для 9-значного " пароля " время перебора составит примерно 32 года , для 12-значного около 1 505 615 лет ( это если 36 символов : Англ.буквы одного регистра и цифры ) . |
#32
|
||||
|
||||
Принцип очень простой. Используется рекурсия, т.е. вызов процедуры самой-себя. Для анализа работы рекомендую задать для CharSet значение '01' и вызвать процедуру так:
PassGen('00', 1); и в режиме отладки пошагово посмотреть что происходит. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
Этот пользователь сказал Спасибо Страдалецъ за это полезное сообщение: | ||
UchusNaDelhi7 (18.03.2012)
|
#33
|
||||
|
||||
Зачем такой изврат?
Если тупо лоб в лоб, то
Код:
procedure TForm1.Button1Click(Sender: TObject); var s1,s2,s3,s4,s5,s6,s7,s8: char; begin for s1:='a' to 'z' do for s2:='a' to 'z' do for s3:='a' to 'z' do for s4:='a' to 'z' do for s5:='a' to 'z' do for s6:='a' to 'z' do for s7:='a' to 'z' do for s8:='a' to 'z' do Memo1.Lines.Add(S1+S2+S3+S4+S5+S6+S7+S8); end; А реально имеетсмысл смотреть в сторону рекурсии Последний раз редактировалось Cheetos, 17.03.2012 в 23:18. |
Этот пользователь сказал Спасибо Cheetos за это полезное сообщение: | ||
UchusNaDelhi7 (18.03.2012)
|
#34
|
||||
|
||||
Пардон, не заметил
|
#35
|
|||
|
|||
Ознакомился с массивами , const ... Всем огромное спасибо !
|