Anagramme [Résolu]

plus22 3 Messages postés mardi 31 mai 2011Date d'inscription 1 juin 2011 Dernière intervention - 31 mai 2011 à 23:00 - Dernière réponse : plus22 3 Messages postés mardi 31 mai 2011Date d'inscription 1 juin 2011 Dernière intervention
- 1 juin 2011 à 16:01
Bonjour à tous,

Je me suis inscrite sur le forum car j'ai une requête à vous faire, ô programmeurs!
Je m'explique.

Je suis étudiante aux beaux arts, et pour un travail artistique, j'aurais besoin d'un logiciel me permettant de générer toutes les combinaisons possibles à partir de lettres données.
ex : pour abc : acb, cba, bac, bca, etc...
Je suis très nul en maths et en programmation, sinon complétement ignorante, c'est pourquoi je vous demande si l'une ou l'un d'entre vous pourrais me mettre un fichier exécutable de ce type de programme à disposition.
En cherchant sur internet, je suis tombée sur votre forum, et j'ai l'impression que certains d'entre vous pourraient faire ça en quelques minutes...
J'ai d'ailleurs trouvé quelque chose proche de ce que je cherche ici :

http://www.vbfrance.com/codes/TOUS-ANAGRAMMES-MOT-COMBINATOIRE-PERMUTATION_6725.aspx

à ceci près que je souhaite pouvoir répéter plusieurs fois la même lettre
ex : internet, bateau, etc..
et avec des mots de 20 caractères!

Je ne sais pas du tout comment utiliser les codes mis à disposition sur votre site, c'est pourquoi j'aimerais beaucoup un exécutable!

J'espère ne pas trop vous en demander et avoir posté au bon endroit!

merci d'avance

Theoline
(plus22 sur le forum)
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 1 juin 2011 à 00:00
3
Merci
Salut

Il faut que tu mettes les mains dans le cambouis, que tu définissent les données de départ, les moyens nécessaires aux permutations.
Les seules aides que tu pourrais trouver se limitent aux questions générales "comment faire" jusqu'au détails des problèmes liés à l'utilisation d'instructions ou d'objets, mais ce sera à toi de faire.
Pour cela, tu dois dire dans quel environnement de développement tu veux travailler (VBA des logiciels Office, ou VB.Net).

Tout ce qu'on te proposer se trouve parmi les codes sources du site. Restera à compiler l'application et pour cela, tu dois avoir l'outil de développement adéquat.
- VBA est intégré aux logiciels Office
- VB.Net se trouve chez Microsoft : rechercher "VB Express" (gratuit)
ou, dans le pire des cas, une âme charitable pour te le compiler et t'expédier l'EXE, mais c'est rare car les membres tiennent à leur tranquillité et dévoiler une adresse mail est toujours délicat.
Pour ce qui est des sources VB6, tu ne trouveras pas (plus) l'outil VB6 qui n'est plus commercialisé depuis une quinzaine d'années.

Ce n'est pas la mer à boire, le VBA est surement plus facile d'accès.

Dernière solution : faire une demande dans la rubrique http://www.codes-sources.com/progonline.aspx

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)

Merci cs_Jack 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de cs_Jack
plus22 3 Messages postés mardi 31 mai 2011Date d'inscription 1 juin 2011 Dernière intervention - 1 juin 2011 à 00:53
0
Merci
Merci Jack pour ta réponse!

J'ai téléchargé microsoft visual basic express édition 2008, et j'essaye de faire fonctionner le code suivant, qui, je pense, correspond exactement à ce que je cherche:

[http://www.vbfrance.com/codes/ANAGRAMMES_49103.aspx[/url

Mais je ne sais pas du tout comment utiliser les 3 fichiers .frm, .vbp, .vbw .
Si tu as le temps, pourrais-tu m'expliquer?

Je te mets également en lien un site web qui fait exactement ce que je cherche à faire, seulement le nombre de caractères est limité.

[url=http://www.dcode.fr/generer-permutations]]


Merci
Commenter la réponse de plus22
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 1 juin 2011 à 06:54
0
Merci
Bonjour,
et avec des mots de 20 caractères!

On voit bien que tes connaissances en mathématiques ne sont pas des meilleures
Le nombre de permutations possibles serait égal à factorielle 20 (allez : fais la lmultiplication suivante et du vas comprendre : 20 x 19 x 18 x 17 x ........etc .... x 2)
Où stockerais-tu tout ceci (pour un seul mot permuté) ? Quelle en serait l'utilité dès lors que la liste serait à ce point démesurée ?
C'est insensé.
Il en va différemment si tu l'on cherche simplement à obtenir un anagramme aléatoire d'un mot. Et le programme est alors tout-à-fait identique à celui qu'il faut pour "touiller" (un jeu de carte, par exemple).
Et ce genre de programme (tout bêtement touiller un tableau dynamique) figure dans la liste des codes déposés sur ce site.



____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Commenter la réponse de ucfoutu
cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 1 juin 2011 à 07:58
0
Merci
Salut
ô programmeurs!


Vraiment les beaux arts VBA
Ce n'est seulement où stocker mais le temps
de performance
J'ai testé une simple loop
For iter As Double = 0 To (10 ^ 10)

Next

plus de 3m 40 sec et 10^10 > 20!
bon tu es peut nulle en math mais celui qui t'as donné ce projet est encore plus nul en math que toi

bonne continuation
Commenter la réponse de cs_ShayW
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 1 juin 2011 à 09:12
0
Merci
Revenons à nos moutons

La source dont tu parles est une source VB6 et pas .Net (2005 et supérieurs).
Mais ce n'est pas grave, la source parait simple et VB Express devrait pouvoir la traduire sans problème :
- Mets ces fichiers dans un répertoire (rien que pour eux)
- Lance VB Express 2008 et demande une conversion :
Menu Fichier, Ouvrir, Conversion, Nouvelle solution et pointe vers le fichier VBP de ton répertoire.
Valide les quelques confirmations qu'il demande et, en quelques secondes, il te génèrera une solution VB.Net

En relisant en diagonal le code converti, tu verras qu'il y a des instructions qui n'ont pas pu être converties. Tu auras alors un lien d'information qui te dira comment procéder.
Une fois que tu auras pu faire tourner ce programme avec F5, tu pourras le compiler en EXE avec le menu Générer.
Commenter la réponse de cs_Jack
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 1 juin 2011 à 09:17
0
Merci
Apparemment, il n'y a que le Form.Cls qui pose problème.
Cette instruction VB6 permet de nettoyer la forme avant d'écrire dessus, ce qui se présente différemment sous .Net.
Il te suffit de réorienter le résultat ailleurs, dans une TextBox multi-lignes par exemple.
Commenter la réponse de cs_Jack
plus22 3 Messages postés mardi 31 mai 2011Date d'inscription 1 juin 2011 Dernière intervention - 1 juin 2011 à 16:01
0
Merci
Hello,

Merci pour vos réponses.

@ucfoutu
[i]Quelle en serait l'utilité dès lors que la liste serait à ce point démesurée ?
C'est insensé. /i

C'est justement pour ça que je dois le faire!
Et quand au temps de calcul, je peux attendre un petit peu!...

@Jack
Je n'ai pas eu le temps aujourd'hui, je vais faire ça en fin d'aprem, et je te dis!

merci

à tout à l'heure!
Commenter la réponse de plus22

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.