Ir para o conteúdo

Publicidade

 Estatísticas do Fórum

  • 1 Usuários ativos

    0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

Foto:

Gerador de códigos alfanumérico

  • Por favor, faça o login para responder
4 respostas neste tópico

#1 Anesthesia_

Anesthesia_
  • Membros
  • 6 posts

Postado 17 junho 2007 - 13:26

Olá pessoal, estou com um problema no trabalho preciso fazer um programa gerador de códigos alfanuméricos. Não sei por onde começar e o código precisa ser criados com 8 caracteres randômicos e não podem se repetir entre eles.

O que eu preciso é um botão que eu informe o quanto que eu quero gerar de códigos e armazene esses códigos em um em bloco de notas (.txt) mesmo.
Claro que se o número de códigos informado for maior que o possível que pode ser gerado isso não será possível.

Se v6 puderem ajudar agradeço!

Vlwz ai pessoal!!
  • 0

#2 scorpio

scorpio

    just do a smile

  • Membros
  • 1.197 posts

Postado 17 junho 2007 - 13:51

para gera os numeros/letras randomicas, use o RND, mas antes do RND escreva Randomize, pois toda hora q abrir o programa vai ser sorteado a msm sequencia...

bem..cria uma string
AlfaNumerico="ABCDEFGHIJKLMNOPQRSTUVXZYW1234567890abcdefghijklmnopqrstuvxzyw"

dai você sorteia

Randomize
x=int(rnd*len(Alfanumerico))+1

sequencia=sequencia & mid(Alfanumerico,x,1)






com isso você vai sortear as letra e numeros...
pra salva você pode fazer assim....

caminho= app.path & "\sequencia.txt"

Open caminho For Output As #1
Print #1, sequencia
Close #1




ve se com isso você consegue começa....

flw
  • 0

#3 Claudio Neto

Claudio Neto
  • Membros
  • 2.044 posts

Postado 27 julho 2007 - 17:05

para gera os numeros/letras randomicas, use o RND, mas antes do RND escreva Randomize, pois toda hora q abrir o programa vai ser sorteado a msm sequencia...

bem..cria uma string
AlfaNumerico="ABCDEFGHIJKLMNOPQRSTUVXZYW1234567890abcdefghijklmnopqrstuvxzyw"

dai você sorteia

Randomize
x=int(rnd*len(Alfanumerico))+1

sequencia=sequencia & mid(Alfanumerico,x,1)






com isso você vai sortear as letra e numeros...
pra salva você pode fazer assim....

caminho= app.path & "\sequencia.txt"

Open caminho For Output As #1
Print #1, sequencia
Close #1




ve se com isso você consegue começa....

flw



Fala Scorpio, lendo aqui seu tópico tentei aproveitá-lo, mas eu preciso usar somente números.

O resultado gerado não foi o esperado não, ele não varia a ordem das letras e números, ele somente começa a sequência de lugares diferentes. Você conhece alguma maneira dele sortear as letras??

Abraços e obrigado.
  • 0

#4 Claudio Neto

Claudio Neto
  • Membros
  • 2.044 posts

Postado 27 julho 2007 - 17:47

Consegui resolver, vou até postar o que fiz para ajudar quem precisar:

ALFANUMERICO = "1234567890"


Do While Len(aux) < 9

Randomize
A = Rnd
X = Int(A * Len(ALFANUMERICO)) + 1

SEQUENCIA = ""
SEQUENCIA = SEQUENCIA & Mid(ALFANUMERICO, X, 1)

aux = aux & SEQUENCIA

Loop

Text1.Text = aux

No meu caso eu precisava de 9 dígitos, por isso usei do while len(aux)<9.

Abraços...
  • 0

#5 Fernando Almeida

Fernando Almeida

    Fernando Almeida

  • Membros
  • 125 posts

Postado 27 julho 2007 - 17:48

me intrometendo um pouco ...
bom não sei como você fez, mas fazendo algumas alterações eu consegui chegar no resultado que acredito que você esperava.
[codebox]
alfanumerico = "ABCDEFGHIJKLMNOPQRSTUVXZYW1234567890abcdefghijklmnopqrstuvxzyw"

For i = 1 To 8
Randomize
x = Int(Rnd * Len(alfanumerico)) + 1

If InStr(1, sequencia, Mid(alfanumerico, x, 1)) Then
i = i - 1
Else
sequencia = sequencia & Mid(alfanumerico, x, 1)
End If
Next
[/codebox]
no final sequencia tera 8 caracteres não sequenciados e nem repetidos
flw
  • 0




Publicidade

/ins>