DICTIONNAIRES, ANAGRAMMES : ALGOS EFFICACES

Signaler
Messages postés
36
Date d'inscription
mercredi 11 avril 2001
Statut
Membre
Dernière intervention
14 septembre 2006
-
Messages postés
36
Date d'inscription
mercredi 11 avril 2001
Statut
Membre
Dernière intervention
14 septembre 2006
-
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/30125-dictionnaires-anagrammes-algos-efficaces

Messages postés
36
Date d'inscription
mercredi 11 avril 2001
Statut
Membre
Dernière intervention
14 septembre 2006

Drssou,

parce que c'est bcp plus lent

En plus je realise que cette foction, je l'utilisé dans mon algorithme de generation de dictionnaire (a partir de texte francais) et lorsque le dico est deja tout fait, y a plus besoin de faire les tests ...
Donc la question de "pourquoi ne pas utiliser autre chose a la place ..." ne se pose meme plus ! ;)

En fait si vous aviez tous bien regardé le code, elle n'est appelée nullepart !!!


bon voila, je corrigerai plus tard la source

a+
Messages postés
160
Date d'inscription
dimanche 7 décembre 2003
Statut
Membre
Dernière intervention
14 janvier 2009

Bonjour,

sur ta fonction EstLettre() pourquoi ne pas mettre toutes tes lettres dans une chaine et tester avec Instr ?

Drissou
Messages postés
36
Date d'inscription
mercredi 11 avril 2001
Statut
Membre
Dernière intervention
14 septembre 2006

Salut Joe
Euh, en fait c'est volontaire qu'il manque toutes les lettres majuscules, car le dico que j'utlisais ne contenait que des minuscules. Par contre c'est vrai que je fais inutilement le test des majuscules.

Merci pour la remarque
A+
Messages postés
171
Date d'inscription
jeudi 30 janvier 2003
Statut
Membre
Dernière intervention
20 juillet 2008

Juste une remarque mineur

Ce genre de fonction :
Private Function EstLettre(str As String) As Boolean
EstLettre = (str >= "a" And str <= "z") Or (str >= "A" And str <= "Z") Or _
str "é" Or str "è" Or str = "ï" Or "û" Or str = "ù" Or str = "î" Or str = "ë" Or _
str "à" Or str "ê" Or str = "ç" Or str = "â" Or str = "ô" Or str = "-"
End Function

Devrait se faire en convertissant la string dès le départ afin de s'economiser une bursite en tapant tous les codes.

Private Function EstLettre(str As String) As Boolean
str=lcase$(str)
EstLettre = (str >= "a" And str <= "z") Or _
str "é" Or str "è" Or str = "ï" Or "û" Or str = "ù" Or str = "î" Or str = "ë" Or _
str "à" Or str "ê" Or str = "ç" Or str = "â" Or str = "ô" Or str = "-"
End Function

Autrement il te manque tous les caractères accentués et majuscules...
Afficher les 6 commentaires