GENERATEUR DE MOT PAR INCREMENTATION

Signaler
Messages postés
286
Date d'inscription
vendredi 5 décembre 2003
Statut
Membre
Dernière intervention
22 avril 2012
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49472-generateur-de-mot-par-incrementation

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
42
:D c'est vrai qu'il y a trois ans, si on m'avait parle de permutations lexicogaphiques, je serais retourner faire du php :D
Messages postés
123
Date d'inscription
mardi 5 août 2003
Statut
Membre
Dernière intervention
26 août 2012
3
@coucou747 : Tu as tout à fait raison. C'est effectivement un abus de langage et ta définition de la chose mathématiquement est bien évidemment plus juste. Néanmoins je ne pense pas qu'il faille présenter la chose mathématiquement comme tu le fais car ça compliquerait VRAIMENT la chose cette fois-ci ! C'est destiné à des débutants, faut pas oublier... et je crois pas qu'ils apprécieraient ce genre de définition !! =p... ^__^
Messages postés
718
Date d'inscription
jeudi 19 décembre 2002
Statut
Membre
Dernière intervention
22 novembre 2016
3
Je prend tres bonne notes de vos commentaires, je ne sais donc toujours pas comment nommer cette source simplement (çà ne reste qu'un titre)... :-/

Madvin> Je vais améliorer (dès que je trouve le temps) la source pour qu'elle soit plus facilement parametrable, et oui "Initié" est une erreur de ma part, çà n'a rien a faire à ce niveau.

Je vais egalement revoir le vocabulaire que j'utilise (en fait c'est un extrait d'un autre code, du coup ce n'est plus bien adapté).

Merci pour vos commentaires, j'aime la critique !
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
30 juillet 2012
42
incrementer une chaine, ca ne veut rien dire... tu peux par contre parler d'incrementer un nombre ecrit dans une base.

en fait, si tu veux une definition de ton algo, on peut dire un truc genre :
soit E un alphabet, renvoyer un iterateur qui parcourt E* dans l'ordre suivant : soit deux mots ma et mb de tailles ta et tb, ma est avant mb si ta < tb ou si (ma = mb et strcmp(ma, mb) < 0)

On pourrait aussi dire que c'est un iterateur qui est construit a partir des iterateurs In avec n dans N, In = les permutations d'une chaine de E^n dans l'ordre lexicographique.

toujours avec l'alphabet E, tu peux dire que tu fais un iterateur sur les representations en base E des nombres entiers de 0 a l'infini.

avec cette derniere definition, tu peux parler d'incrementation de ton nombre en base E si tu veux. Mais ca laisse penser qu'on fait des convertions de bases, donc j'aime pas trop cette def.
Messages postés
123
Date d'inscription
mardi 5 août 2003
Statut
Membre
Dernière intervention
26 août 2012
3
Salut !

Cette source n'est certainement pas de niveau "Initié". Un débutant est capable de la comprendre.
De plus, effectivement il est dommage que les mots "BruteForce" et "Password" aient été utilisés dans le code (faut quand même avouer que les mots clés catégorisant ton code sont plutôt douteux =/), sachant qu'il s'agit de l'implémentation d'un algorithme générique simple. D'autant plus que cela provoque des incompréhensions. La notion "d'incrémentation de chaines de caractères" me semble plus claire, et plus du tout ambiguë quand à la finalité de cette source.
Tu pourrais également faire passer en paramètre du main le nombre d'incrémentations à faire (par défaut 1). Cela éviterait de modifier le code source de ta classe à chaque fois.
Sinon un bon point sur la présentation du code qui est bien claire et indentée.
Afficher les 12 commentaires