Bonjour,
je cherche à calculer des séries, mais je n'ai pas le niveau, je n'y arrive pas, alors si quelqu'un veut bien me poser le calcul (en arithmétique informatique), il sera bien gentil, voici mon problème:
Dans un jeu de 52 cartes (de 2 à rois et As (pas de 1 donc)), de 4 couleurs dans l'odre de force "p", "c" = coeur, "k" = carreau et "t", je cherche toutes les combinaison possibles de 5 cartes se suivant en valeur sans qu'elles soitent toutes de la même couleur. En notation (couleur+valeur sur 2 position), exemple p03 (pique 3 (4 de pique en partant de 1 pour la valeur de carte 2), donc 3 octet par carte.
Je cherche toutes les combinaisons, exemple :
p01 p02 p03 p04 c01
p01 p02 p03 p04 c02 ...
12345 23456 34567 45678 56789 678910 7891011 89101112 910111213
C'est exactement ça en valeurs, et uniquement, mais avec deux conditions, que toutes les combinaisons de couleurs y soient, sauf les combinaisons de 5 cartes de la même couleur :mur:
Ça doit donner un truc dont le principe est le suivant :
dim combi(???) as string ' lgr = 3 * 5 = 15 octets (5 cartes notées sur 3 octets)
dim i as long
dim j a long
dim k as long
dim c(5) as string
for i = 0 to ???_nb_combinaisons
for j = 1 to 4
if i = 1 then combi(i) = "p"
if i = 2 then combi(i) = "c"
if i = 3 then combi(i) = "k"
if i = 4 then combi(i) = "t"
next j
for k = 1 to 13
combi(i) = combi(i) & format(k, "00")
if len(combi(i) = 15 then
c(1) = mid(combi(i),1,1) ' vérif des couleurs identiques refusées (couleur au lieu de quinte)
c(2) = mid(combi(i),4,1)
c(3) = mid(combi(i),7,1)
c(4) = mid(combi(i),10,1)
c(5) = mid(combi(i),13,1)
if c(1) = c(2) and c(2) = c(3) and c(3) = c(4) and c(4) = c(5) then combi(i)="" ' pas 5 couleurs identiques
goto iPlus1
endif
next k
iPlus1:
next i
Mais évidemment ça ne marche pas ainsi, je ne sais pas le faire, toutefois pour l'exemple il y a les ingrédients de base afin de donner une idée sur la pésentation qu'il me faut pour savoir l'exploiter...
Alors merci à ceux qui voudront et sauront, cordialement.
Joe.