Combinaçoes de letras
Eu preciso fazer um programa para descobrir uma senha e gostaria de saber se alguém conhece alguma funcao ou componente para ir testando as senhas... mais ou menos assim:
ab
abc
abcd
abcde
abcde1
abcde2
a1bcde2
Sabe gostaria de conhecer uma funcao que fosse testando as letras e numeros aleatoriamente. se alguem souber por favor!!!
ab
abc
abcd
abcde
abcde1
abcde2
a1bcde2
Sabe gostaria de conhecer uma funcao que fosse testando as letras e numeros aleatoriamente. se alguem souber por favor!!!
Anonymous
Curtidas 0
Melhor post
Skaarj
02/02/2003
Uma dica antes: essas droga de criptografia e senha usam árvores binárias, coloqei um artigo em www.wsnifers.hpg.com.br vá m programação e veja como mexe com arvores [logo vai tr grafos e implementados, em C].Primeiro vc tem q definir a quantidade d digitos..
Continuando a pensar, vc tem q remover a primeira letra se ela ñ existir na string a segunda vm pra primeiro, a terceira pra segundo, a qrta pra terceira, a quinta pra qrta, a sexta pra quinta e na sexta insere um novo digito..
Tá, ms cmo comparar as strings?!
As procedures
Continuando a pensar, vc tem q remover a primeira letra se ela ñ existir na string a segunda vm pra primeiro, a terceira pra segundo, a qrta pra terceira, a quinta pra qrta, a sexta pra quinta e na sexta insere um novo digito..
Tá, ms cmo comparar as strings?!
descriptografa curingas: variavel global: WndHint: THintWindow = nil;
As procedures
procedure TForm1.Timer1Timer(Sender: TObject); var Pos: TPoint; HWin: THandle; Paswd: array[0..63] of Char; R: TRect; begin GetCursorPos(Pos); HWin := WindowFromPoint(Pos); if SendMessage(HWin, EM_GETPASSWORDCHAR, 0, 0) <> 0 then begin if WndHint = nil then begin WndHint := THintWindow.Create(Self); WndHint.Color := clInfoBk; SendMessage(HWin, WM_GETTEXT, 64, Longint(@Paswd)); R := Rect(Pos.X, Pos.Y + 18, Pos.X + WndHint.Canvas.TextWidth(Paswd) + 8, Pos.Y + 18 + WndHint.Canvas.TextHeight(Paswd)); WndHint.ActivateHint(R, Paswd); end; end else if WndHint <> nil then begin WndHint.ReleaseHandle; WndHint := nil; end; end; Agora vc dz: Troxa se eu vr a string, ñ precso comparar.. Dae eu digo.. Cara tá ferrado!! vai tr q comparar um a um.. Vou t pssar um treco que fiz.. Em PASCAL.. Que pode te dar uma luz.. Essa aqui procura por uma letra [a] dentro da strng: Program Letra_A; Uses crt; var inicio:integer; fim:integer; frase:string; function letra(nome:string):integer; begin inicio:=0; fim:=0; for inicio:=1 to length(nome) do begin if (nome[inicio]=´a´) or (nome[inicio]=´A´) then begin fim:=fim+1; end; end; letra:=fim; end; function contra (nome_aux:string):string; var pos:integer; result:string; begin result:=´´; for pos:=length(nome_aux) downto 1 do begin result:=result+nome_aux[pos]; contra:=result; end; end; BEGIN clrscr; textbackground (12); textattr:= green; HighVideo; write (´Digite a frase desejada: ´); readln(frase); textcolor (blink); Writeln (´O nome digitado tem : ´,letra(frase),´ letras A ´); writeln (´O nome que vocˆ digitou ao contr rio : ´, contra(frase)); writeln (´O n&mero digitado tem ´,length(frase),´ letras´); readkey; exit; END.
GOSTEI 1