Algorithme defficile
Coeur
-
Coeur -
Coeur -
Bonjour,
je besions d'algorithme de combinaison des valeurs
exple une tab={1,2,3,4}
on veut combiner chaque 3 valeurs
donc C(4,3)=4
le resultat est une matrice
1 2 3
1 2 4
1 3 4
2 3 4
merci 2avance
je besions d'algorithme de combinaison des valeurs
exple une tab={1,2,3,4}
on veut combiner chaque 3 valeurs
donc C(4,3)=4
le resultat est une matrice
1 2 3
1 2 4
1 3 4
2 3 4
merci 2avance
Configuration: Windows Vista Firefox 3.0.17
2 réponses
-
Bonjour,
Je ne connais pas suffisament le Java, mais voici un exemple en textuel.
/* Déclaration */ val1, val2, val3 /*= 3 variables extraites */ rang /*variable qui permet d'incrémenter les solutions*/ tab = {1,2,3,4} /* = ta liste de valeurs */ resultat(n, 3) /* = ton tableau de résultats n lignes 3 colonnes*/ rang = 1 Pour chaque val1 dans tab de 1 à (dimension de tab - 2) Pour chaque val2 dans tab de val1+1 à (dimension de tab - 1) Pour chaque val3 dans tab de val2+1 à (dimension de tab) resultat(rang, 1)=tab(val1) resultat(rang, 2)=tab(val2) resultat(rang, 3,)=tab(val3) rang = rang + 1 val3 suivant val2 suivant val1 suivant
J'espère que c'est clair. N'hésite pas.
-
-
-
-
-
Bonjour,
Voici un exemple pour p éléments pris dans une liste de n éléments.
' Déclaration des variables i, ligne ' Déclarer une variable de retenue retenue ' Déclarer un tableau de p colonnes et C(n,p) lignes tab_valeurs(C(n,p),p) ' ' Remplir la première ligne Pour i = 1 à p tab_valeurs(1,i) = i i suivant ' retenue=0 Pour ligne=2 à C(n,p) Si tab_valeurs(ligne-1,p)+1 > p alors tab_valeurs(ligne,p) = 1 retenue = 1 sinon tab_valeurs(ligne,p) = valeurs(ligne-1,p) + 1 fin_de_si i=p-1 Tant que retenue = 1 Si tab_valeurs(ligne-1,i)+1 > p alors tab_valeurs(ligne,i) = 1 retenue = 1 i = i - 1 sinon tab_valeurs(ligne,i) = valeurs(ligne-1,i) + 1 retenue = 0 fin_de_si Fin_de_tant_que ligne suivante
Normalement, ça marche.
J'ai laissé tomber la forme récursive qui me paraissait intéressante : je ne vois pas comment la mettre en forme.
-
-