Générateur de chaines pseudo-aléatoires

Soyez le premier à donner votre avis sur cette source.

Vue 9 946 fois - Téléchargée 524 fois

Description

Salut tout le monde. La pitite source que je dépose ici permet de générer une chaine de caractères de façon presque aléatoire, car c'est avec les mouvements de votre souris que ça fonctionne. Cliquez sans lâcher votre bouton, sur un des carrés noirs et hop, bougez la souris dans tous les sens...
C'est nettement à améliorer mais je crois que c'est une bonne piste à exploiter...

PS: Il n'y a pas de capture d'écran du truc, car ça ne ressemble à rien hihihihi !!! J'ai pas bosser le côté graphique puisqu'il n'y a q'un bouton, un champ texte, des labels et des picturebox de base :)

Source / Exemple :


La source est dans le zip !!!

Conclusion :


C'est en fait pour créer un programme de cryptage de texte que j'ai fait ça... hm... comme je l'ai déjà dit, c'est "en cours", donc "hautement" perfectible, hihihi. Le code peut certainement être condensé... d'ailleurs si certains savent comment, je suis preneur ! :P

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
...pour bloquer certains caractères
va demander à un utilisateur de saisir VbNull ^^
et de ne pas spécialement bloquer en taille, bien qu'on verra rarement des "clé" de plus de 10 carac

mais pourquoi pas :
Mid$(sBuffer, iCpt, 1) = chr$(GetRandom(0, 255))
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
8
Ouai enfin pourquoi utiliser les chaines ?? vous etes barge les loulous ! un tableau de 256 octets puis pif paf pouf tu traites des entiers. pas d'aloc inutile que de l'arithmetique et la... je suis sur qu'il y aura de l'amelioration (quand bien meme faudrait ameliorer quoi que ce soit ;) ).

@+
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
si çà change quand le carac est choisi çà veut dire que tu n'aura jamais de clé > 256...
des suggestions? beh je t'ai dit d'utiliser MID
là çà consomme une tonne de ressources pour rien, c'est très long d'exécution, tu fait un GetCurseurPos alors qu'on connait déjà le X & Y, variables pas typées, pas d'option explicit, et j'en passe!

on va fait mieux qu'une suggestion parce que c'est sans fin là :

Option Explicit
Private Const STR_CHARS As String = "1234567890°-*/+²&é'(-è_çà)=~#{[|`\^@]}AZERTYUIOP¨£QSDFGHJKLM%µ<WXCVBN?.§azertyuiop$qsdfghjklmù<wxcvbn,;:!¤"
Private Const MAX_SIZE As Integer = 1000
Dim sBuffer As String, iCpt As Integer
'
Private Sub Form_Load()
Randomize Timer
iCpt = 0
End Sub
'
Private Sub T01_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If (Button = vbMiddleButton) And (iCpt < MAX_SIZE) Then
iCpt = iCpt + 1 If iCpt 1 Then sBuffer Space(MAX_SIZE)
Mid$(sBuffer, iCpt, 1) = Mid$(STR_CHARS, GetRandom(1, Len(STR_CHARS)), 1)
Me.Caption = "En cours, carac " & iCpt & "/" & MAX_SIZE
T01.Text = sBuffer
If iCpt = MAX_SIZE Then Call MStop
End If
End Sub
Private Sub T01_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbMiddleButton Then Call MStop
End Sub
'
Private Function GetRandom(ByVal iMin As Integer, iMax As Integer) As Integer
GetRandom = Int((iMax * Rnd) + iMin)
End Function
Private Sub MStop()
MsgBox "Terminé"
T01.Text = Replace(sBuffer, " ", vbNullString)
Me.Caption = "La chaîne fait " & Len(T01.Text) & " carac"
iCpt = 0
End Sub
Messages postés
745
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015

hihihi, merci PCPT, j'ai modifié la source donc, et euh... j'ai fait en sorte que ça change même quand le caractère est déjà choisi ! D'autres suggestions?
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
comment çà "idée d'amélioration", c'est justement ce que j'ai indiqué au dessus... ;)
Afficher les 11 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.