Autres rechercher meilleures redondances de combinaisons de n numéros dans tableau

flipper46

XLDnaute Nouveau
Bonjour tout le monde!
Je cherche à trouver les combinaisons de x numéros(4,5,6,7,8,9 ou10) qui sortent le plus souvent sur n tirages(200 si pas la possibilité de paramétrer).
J'ai déjà trouver des approchants mais qui restent limités à une vingtaine de tirages(pb de mémoire ou capacité?...)
Mes compétences en VBA sont limitées à des "if then, in case… vous voyez le niveau ;-)
ci-joint un tableau à trier pour exemple.
Merci à ceux qui m'aideront!
ps: si trop lourd pour excel, je me contenterai des 30 premières colonnes...
 

Pièces jointes

  • tableau.xlsm
    60.2 KB · Affichages: 51

Backhandshot

XLDnaute Occasionnel
non, je te demandais en combien de temps le calcul s'est effectué! lol
lol... environ 5-6 secondes sur 70 colonnes (10566 tirages)
Mais les combinaisons ayant sorti le plus de fois ne sont pas forcément sorti avec les meilleurs numéros
exemple combine 3 (35,37,38) qui serait la meilleure ne se retrouve pas dans la ou les meilleure(s) combinaison(s) à
6,7,8,9 ou 10 chiffres

Bonne journée
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re à tous,

En fait je n'avais pas bien compris.

Le résultat est donc faux. Je faisais les combinaisons dans l'ordre d'apparition sur une ligne. En fait si j'ai bien compris, il faut toutes les combinaisons.
Ce qui risque d'être beaucoup plus délicat surtout en temps de calcul.

Je vais m'y remettre et vous prie de m'excuser :oops:
 

flipper46

XLDnaute Nouveau
SI tu veux(je me permets de te tutoyerse sera plus simple…)j'ai optimisé un tableau de + de 200 colonne en 70 colonnes.
tu t'apercevra qu'il (celui que je t'ai envoyé au début)est plus condensé sur la gauche.
Avant d'aller plus loin dans mes sélections futures, je voudrait savoir jusqu'a quelle colonne je m'arrete pour piocher...
si je sors assez de combis avec 35 colonnes , je m'arreterai à 35... pour cela , il me faut avant tout ce tableau.
C'est aussi pourquoi il me faudrait sur une selection ,les meilleures combis le plus sorties mais AUSSI les autres pour couvrir un maximum de gain sur 200tirages. ;-)
 

Backhandshot

XLDnaute Occasionnel
Bonjour à tous !
flipper46, maPomme
J'ai fait un test avec des fonctions faites par Job75 que je salue au passage, avec chiffres de 1 à 20 soit 15504 combinaisons sur 200 tirages, temps d'exécution un peu plus de 26 minutes sur un I7-7700 2.8 GHz
Je ne suis pas un excelien comme maPomme et bien d'autres mais je suis certain que ces personnes seraient capables d'optimiser le code qui vérifie chaque combine de 5 chiffres le nombre de sorties ainsi que le numéro ou la ligne correspondante au tirage. Je continue mes recherches pour améliorer le temps d'exécution
Bonne journée !
 

flipper46

XLDnaute Nouveau
salut Backhandshot!
26 mn avec 70 colonnes , ça ne m'étonne pas, vu le nombre de passages à faire..
Mapomme n'est pas là,,je suposse qu'il planche dur!
Peux-tu me faire passer ton fichier (de Job75)STP? que je vois à quoi ça ressemble.. ;-)
En attendant, le premier jet de Mapomme est plutôt bien présenté.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @flipper46 :), @Backhandshot :),

Bon, j'ai un peu bricolé à partir du fichier initial de @flipper46.
  • Aller sur la feuille Feuil2
    • Modifier la valeur Taille combinaison (nombre d'élément de la combinaison)
    • Modifier la valeur N colonnes (nombre de colonnes à prendre en compte à partir de la colonne 1 de Feuil1)
    • Modifier la valeur Seuil Affichage (fréquence minimum d'apparition de la combinaison pour qu'elle soit affichée)
    • cliquer sur le bouton Hop!
Quand les résultats sont affichés sur la feuille Feuil2, un double-clique sur une combinaison affiche les lignes de la feuille Feuil1 comprenant cette combinaison.

Sur la feuille Feuil2, laisser vide la colonne D.

Sur la feuille Feuil2, sont affichés quelques durées de calcul sur mon micro.
Notez que pour des grandes valeurs de N colonnes, mon micro arrête le calcul sur une erreur : Erreur mémoire insuffisante. Voir les deux tableaux du bas.

Aucun temps de traitement ne dépasse les 5 minutes. Mon micro:
1578615869235.png
 

Pièces jointes

  • flipper46- Nbr Combi- v30.xlsm
    93.5 KB · Affichages: 35
Dernière édition:

Backhandshot

XLDnaute Occasionnel
Bonsoir à tous !
maPomme, Flipper46
JUSTE un mot travail incroyable vraiment surprenant...je suis bouche bée
J'ai fait un test avec les combinaisons à 6 chiffres, 70 colonnes, sorties minimum 3 fois
temps d'exécution 179 secondes
Encore une fois BRAVO maPomme tu ne cesses de m'impressionner
Bonne soirée et merci pour ce travail impeccable !!!
 

flipper46

XLDnaute Nouveau
bonjour à tous !
Mapomme, tu es un génie ! QUEL TRAVAIL !
Concernant le "mémoire insuffisante", penses-tu qu'en gonflant la ram du pc ce serait résolu , ou c'est un problème de mémoire excel?

En attendant, UN GROS MErci POUR TON TRAVAIL REMARQUABLE !
Cordialement
flipper.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @Backhandshot :)
J'ai fait un test avec les combinaisons à 6 chiffres, 70 colonnes, sorties minimum 3 fois
temps d'exécution 179 secondes
Tu as l'air d'avoir une bête un peu plus puissante que la mienne.
As-tu essayé un jeu de test qui plante sur mon PC (par une erreur Mémoire Insuffisante) ?
Si ça passe, de combien de mémoire vive disposes tu?
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir @flipper46 :),

Concernant le "mémoire insuffisante", penses-tu qu'en gonflant la ram du pc ce serait résolu , ou c'est un problème de mémoire excel?

  1. je ne peux pas tester avec plus de RAM (j'utilise un micro qui n'est pas le mien).
  2. il y aura sans doute pour des valeurs élevées de nombres de colonnes, un problème au niveau Excel. Le nombre de combinaisons (n parmi p) augmentent très vite avec n. D'ailleurs pour ma macro, j'ai dû répartir les combinaisons au sein de plusieurs dictionary (au nombre de 200) pour avoir des temps de traitements acceptables. A partir d'un grand nombre d'élément, le dictionary semble devenir très lent (il n'est pas exclus qu'un manque de mémoire y contribue).
  3. à partir de 8 parmi 70, le nombre de combinaison dépasse la capacité d'un entier long (qui est le type que j'utilise) du moins en Excel 32 bits.
 

Discussions similaires

Statistiques des forums

Discussions
312 276
Messages
2 086 714
Membres
103 378
dernier inscrit
phdrouart