Loto

M

montail

Guest
bonjour
j'aimerai pouvoir faire un macro qui me fasse toutes les combinaisons possible du loto ( 49 N°)

merci
 
V

Vériland

Guest
Bonsoir Montail et le Forum,

Tu veux jouer au loto ?...hi hi hi...pas de blème...je vais t'aider à gagner...

voici une macro qui fait cela très bien...elle te donne aléatoirement 7 numéros à chaque fois...

Sub LOTO()
Dim Ligne As Long
Randomize
[A1] = Int(49 * Rnd + 1)
For Ligne = 1 To 6
Do
Range("A1").Offset(Ligne, 0).Value = Int(49 * Rnd + 1)
Loop Until IsError(Application.Match(Range("A1"). _
Offset(Ligne, 0), Range("A1").Resize(Ligne, 1), 0))
Next Ligne
End Sub

si tu gagnes tu pense à nous...loool

A+Veriland.gif


PS : Macro à copier depuis le forum auquel cas tu risques d'avoir les attributs GRAS du post dedans...
 
V

Vériland

Guest
arf non !...j'ai lu trop vite...bon là j'te le fait pas car on frise les 100 millions de possibilités si ce n'est pas plus...alors tu coup ta macro risque de tourner pendant plusieurs jours...loool
 
L

LaurentTBT

Guest
Bonsoir à vous deux.
Montail, si tu veux toutes les combinaisons possibles, accroches-toi:

Pour calculer la probabilité de trouver 6 numéros au loto, il suffit de trouver combien il existe de series non ordonnées de 9 nombres choisis parmi 49. La formule statistique qui calcule cela est:
(44 x 45 x 46 x 47 x 48 x 49) / (6 x 5 x 4 x 3 x 2)
soit 13 983 816.

Bref, si tu les veux toutes, cela va prendre un certains nombres de cellules d'un certains nombres de feuilles!

Et oui, il n'y a qu'1 chance sur 13 983 816 de gagner le gros lot.
 
V

Vériland

Guest
re,

arf oui...merci de la précision LaurentTBT...j'ai vu un peu gros avec mes 100 millions là..mais les chiffres avec plusieurs zéro me font perdre la tête...hi hi hi

bon par contre Excel avec ses 16777216 de cellules sur chaque feuille permettrait d'y stocker les combinaisons...mais faudra alors pas mal de ressources mémoire...loool
 
L

LaurentTBT

Guest
Si c'est mon bulletin le bon, je veux bien tenter le coup!

Bon, j'ai dû jouer une fois au loto dans ma vie. Je suis trop cartésien pour y croire (1 chance sur 13 983 816). Mais bon, je me suis dit que la véritable chance serait de gagner au premier essai. Et vous savez quoi? ........
Je ne roule toujours pas en Porsche.

Toujours est-il que pour le fun, je me demande quel algorythme pourrait nous les donner, ces 13 983 816 combinaisons.
J'ai une petite idée, à partir de celui que j'ai trouvé il y a quelque jours.
( cf ce post: Lien supprimé , sujet sur lequel j'ai encore du travail)

Si je fais la même chose pour avoir toutes les combinaisons de 0 et 1 sur 49 chiffres, et en éliminant toutes celles dont la sommes des 0 et 1 ne serait pas 6, j'aurais la solution. Ce n'est pas des jours, mais des mois qu'il me faudrait car la boucle serait For n=1 to 2 puissance 49.
Bref, il doit y avoir mieux!
Bonne nuit à tous.
 
S

simon

Guest
bonjour tout le monde

tiens j avais deja vu ca la: http://forum.hardware.fr/forum2.php3?post=10103&cat=10


une solutions proposee en vb

sub loto()
dim chiffre(5) as integer
dim compte as double
dim i,j,k,l,m,n as integer
compte=0
open "GROSLOTO" for outpout as #1

for i=1 to 44
for j=i+1 to 45
for k=j+1 to 46
for l=k+1 to 47
for m=l+1 to 48
for n=m+1 to 49
chiffre(0)=i
chiffre(1)=j
chiffre(2)=k
chiffre(3)=l
chiffre(4)=m
chiffre(5)=n
print #1 chiffre(0);".";chiffre(1);".";chiffre(2);"."
;chiffre(3);".";chiffre(4);".";chiffre(5)
print #1,
compte=compte+1
next
next
next
next
next
next

end sub


435 MO, 400 000 pages et 10 minutes pour calculer (ordi puissant) :D
 
M

Moa

Guest
Salut Montail !

Voici une adresse où tu trouveras un prog pour le Loto.

<http://www.loto-alchimie.com/index.html>

Je ne sais pas ce que tu veux faire avec tes combinaisons, mais je me souvient que sur le net, j'ai vu une fois un log sous Excel.

Si c'est pour jouer, je te conseillerais plutôt le LotoFoot, car au lieu de partir à 13 000 000 de combinaisons tu ne pars qu'à 1 500 000, ou au rapido ou encore au Kéno.

Rapidement quelques chiffres :

Au Loto, il existe exactement 13 983 816 combinaisons.

Si tu voulais toutes les écrire sous excel (Ce qui est possible), ton fichier, une fois fini ferait 190 Mo.

A condition de concaténer, chaque combi de 6 chiffres par cellule.

Sinon, en écrivant un chiffre par cellule, ton fichier ferait plus de 500 Mo.

Avec un Pc qui tourne à 2 Ghz avec une mémoire vive de 1Go à 333Mghz, il te faudrait plus de 45 minutes pour calculer toutes les combinaisons.

Maintenant en concaténant tes 6 chiffres par cellule, il te faudrait :

13 983 816 cellules, sachant qu'une feuille Excel contient 256 * 65 536 = 16 777 216 cellules, une seule feuille te suffirait.

En considérant que tu laisses 6 lignes vides par colonnes, cela prendrait 13 983 816 / 65 530 = 214 colonnes.

Maintenant en écrivant un chiffre par cellule et en écrivant les combinaisons en ligne :

Tu pourrais écrire par ligne 256 / 6 = 42 combinaisons * 65 530 = 2 752 260
combinaisons par feuille.

Il te faudrait donc 13 983 816 / 2 752 260 = 6 feuilles.

Maintenant en écrivant un chiffre par cellule et en écrivant les combinaisons en Colonne :

Tu pourrais écrire par colonne 65 530 / 6 = 10 921 combinaisons

Il te faudrait donc 13 983 816 / 10 921 = 1281 Colonnes

Il te faudrait donc 1281 / 256 = 6 feuilles.

Voilà !

@ Bientôt


Moa
 

KenDev

XLDnaute Impliqué
Re : Loto

Bonjour etan3072,

Simon ne suivant peut-être plus ce fil huit ans et demi plus tard, une alternative 'universelle' sans macro.

Pour afficher les Combin(x,y) combinaisons dans un tableau commençant en A1 sur Combin(x,y) lignes et y colonnes :

En ligne 1 :
Code:
=COLONNE()

En ligne 2, dernière colonne (remplacer x)
Code:
=SI(I1=x;H2+1;I1+1)

En A2 (remplacer x-y)
Code:
=SI(B1=x-y+COLONNE(B1);A1+1;A1)

Si y > 2, en B2 (remplacer x-y)
Code:
=SI(C1=x-y+COLONNE(C1);SI(B1=x-y+COLONNE();A2+1;B1+1);B1)

Copier B2 sur les éventuelles colonnes restant vide en ligne 2

Copier la 2ème ligne jusqu'à la ligne Combin(x,y)

3 exemples dans le classeur joint.

Si Combin(x,y) > nombre de ligne d'une feuille, sur une nouvelle feuille ligne 1 écrire la combinaison suivante puis copier les formules de la feuille 1 ligne 2 sur la feuille 2 ligne 1.

Cordialement

KD
 

Pièces jointes

  • CombiUni.xls
    167.5 KB · Affichages: 423
Dernière édition:

etan3072

XLDnaute Nouveau
Re : Loto

Lollllllllllllll Kendev j'avais pas vu que cela faisait huit ans, je vais essayer de voir ce que tu as fait demain et je te tiens au courant et a premiere vue d'oeil ca ma l'air compliqué lollllllllllll en tous cas merci de m'avoir aider
je te tiens au courant a +
 

williamss

XLDnaute Occasionnel
Re : Loto

Bonjour etan3072,

Simon ne suivant peut-être plus ce fil huit ans et demi plus tard, une alternative 'universelle' sans macro.

Pour afficher les Combin(x,y) combinaisons dans un tableau commençant en A1 sur Combin(x,y) lignes et y colonnes :

En ligne 1 :
Code:
=COLONNE()

En ligne 2, dernière colonne (remplacer x)
Code:
=SI(I1=x;H2+1;I1+1)

En A2 (remplacer x-y)
Code:
=SI(B1=x-y+COLONNE(B1);A1+1;A1)

Si y > 2, en B2 (remplacer x-y)
Code:
=SI(C1=x-y+COLONNE(C1);SI(B1=x-y+COLONNE();A2+1;B1+1);B1)

Copier B2 sur les éventuelles colonnes restant vide en ligne 2

Copier la 2ème ligne jusqu'à la ligne Combin(x,y)

3 exemples dans le classeur joint.

Si Combin(x,y) > nombre de ligne d'une feuille, sur une nouvelle feuille ligne 1 écrire la combinaison suivante puis copier les formules de la feuille 1 ligne 2 sur la feuille 2 ligne 1.

Cordialement

KD

Bonjour,

Serrait il possible d'avoir des explications de votre fichiers Excel ??

Merci

Williams
 

Statistiques des forums

Discussions
312 103
Messages
2 085 317
Membres
102 862
dernier inscrit
Emma35400