Générer toutes les combinaisons possibles de 10 chiffres
Fermé
David
-
30 juil. 2022 à 22:43
trauqnej Messages postés 154 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 5 septembre 2022 - 3 août 2022 à 02:46
trauqnej Messages postés 154 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 5 septembre 2022 - 3 août 2022 à 02:46
A voir également:
- Nombre de combinaison possible avec 10 chiffres
- Combien de combinaison possible avec 3 chiffres ✓ - Forum Loisirs / Divertissements
- Combinaisons possibles avec 3 séries de 3 nombres - Forum Réseaux sociaux
- Algorythmes 1-9 chiffres combinaisons possibl - Forum Programmation
- Clé windows 10 gratuit - Guide
- Combien de combinaison possible avec 4 chiffres ✓ - Forum Algorithmes / Méthodes
3 réponses
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
Modifié le 31 juil. 2022 à 01:01
Modifié le 31 juil. 2022 à 01:01
Bonjour
Quand tu parles de répétition de nombres cela signifie t-il que tu peux avoir plusieurs fois le même chiffre dans un même nombre ?
Par exemple plusieurs zéro : 10 000 000 ?
Si oui, pas besoin de mathématiques combinatoire, il suffit de faire une boucle alant du nombre 10 000 000 jusqu'au nombre 99 999 999
Par contre, si tu veux les combinaisons de chaque nombre ayant un chiffre distinct parmi la liste que tu proposes par exemple 12345679
La , oui, il n'y a que 24310 combinaisons possibles.
yg_be
Messages postés
23350
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 novembre 2024
Ambassadeur
1 554
31 juil. 2022 à 14:39
31 juil. 2022 à 14:39
bonjour, je suggère d'utiliser "product" à la place de "combinations_with_replacement".
yg_be
Messages postés
23350
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 novembre 2024
1 554
31 juil. 2022 à 14:55
31 juil. 2022 à 14:55
syntaxe:
for i in itertools.product(liste,repeat=8)
yg_be
Messages postés
23350
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 novembre 2024
1 554
>
yg_be
Messages postés
23350
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 novembre 2024
Modifié le 31 juil. 2022 à 19:00
Modifié le 31 juil. 2022 à 19:00
Ton code fait 10 millions de "open". Mieux d'en faire un seul:
import itertools liste=[str(i) for i in range(10)] f=open("liste.txt","w") c=0 for n in itertools.product(liste,repeat=8): c += 1 f.write("\n"+"".join(n)) print(c) f.close()
trauqnej
Messages postés
154
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
5 septembre 2022
23
3 août 2022 à 02:46
3 août 2022 à 02:46
bonjour,
je verrais bien un truc dans le style :
fic = open("/tmp/fichier.txt",'w') for i in range(100000000): fic.write("{:0>8d}".format(i)+"\n") fic.close()
Cordialement,
31 juil. 2022 à 12:15
Bonjour,
Et comme le résultat n'est peut être pas un nombre, mais une chaine de 8 chiffres, on pourrait alors commencer à 00000000, 00000001, ...
31 juil. 2022 à 13:27
Oui.. c'est vrai que je n'ai pas pensé au lead zeros..
Bref.. ça va être long à ecrire .:-)