Quelqu'un pour m'aider sur un algo. à la noix ?

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics


The Boss
WRInaute discret
WRInaute discret
 
Messages: 147
Inscription: 18 Juin 2004

Quelqu'un pour m'aider sur un algo. à la noix ?

Message le Mer Oct 26, 2005 13:34

Y'a des fois je vous jure, je me retourne la tête pour des conneries !

J'ai un tableau d'entiers genre array = ('2', '3', '4', ....)

J'essaye de retrouver une boucle de telle façon que je puisse afficher toutes les combinaisons possibles à partir d'une base 1.

Donc en fait je cherche tout simplement à faire afficher ceci :

1er niveau
1 + 2
1 + 3
1 + 4
1 + ...

2ième niveau
1 + 2 + 3
1 + 2 + 4
1 + 2 + ...
1 + 3 + 4
1 + 3 + ...

3ième niveau
1 + 2 +3 + 4
...

...ième niveau
1 + 2 + 3 + 4 + ...

comment faire une boucle là dessus ?

quand je pense que j'ai fais GEII :(


fabor
WRInaute discret
WRInaute discret
 
Messages: 152
Inscription: 17 Mar 2005

Message le Mer Oct 26, 2005 15:49

Est ce que l'ordre à une importance pour toi?
ie : 1 + 2 est-il équivalent à 2 + 1 ?


The Boss
WRInaute discret
WRInaute discret
 
Messages: 147
Inscription: 18 Juin 2004

Message le Mer Oct 26, 2005 15:56

fabor a écrit:Est ce que l'ordre à une importance pour toi?
ie : 1 + 2 est-il équivalent à 2 + 1 ?
je préférerai garder l'ordre croissant des entiers...

je désespère je me demande si il y a une solution à ce truc finallement :(


fabor
WRInaute discret
WRInaute discret
 
Messages: 152
Inscription: 17 Mar 2005

Message le Mer Oct 26, 2005 16:15

bon encore une question pour etre sur de comprendre la problematique
est ce que tu peux avoir 1 + 4 + 3 +..
ou est ce que des que tu as 1 + y + .. il ne peux plus y avoir de x<y dans la suite de données


ecocentric
WRInaute accro
WRInaute accro
 
Messages: 3602
Inscription: 10 Fév 2004

Message le Mer Oct 26, 2005 16:25

En gros :
prendre une boucle while qui incrémente le niveau et qui te permet d'afficher la base ;
dedans une boucle for initialisée sur le niveau et bornée par la taille de ta liste qui te donne le reste de ta série.

ChezThierry
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 273
Inscription: 21 Oct 2005

Message le Mer Oct 26, 2005 20:08

Qu'est-ce que tu penses de ça ?
Code: Tout sélectionner
function afficheTableau($avant, $niveau, $tableau)
{
   if ($niveau == 1) {
      foreach ($tableau as $value) {
         echo "$avant$value<br>" ;
      }
      return ;
   }
   
   while ($val = array_shift($tableau)) {
      afficheTableau("$avant$val+",$niveau-1, $tableau) ;
   }
   return ;
}

$tableau = array(2, 3, 4, 5, 6, 7, 8) ;
$compteur = 2 ;
afficheTableau("1+",$compteur,$tableau) ;


ça donne :
Code: Tout sélectionner
pour compteur = 1 :
1+2
1+3
1+4
1+5
1+6
1+7
1+8

pour compteur = 2 :
1+2+3
1+2+4
1+2+5
1+2+6
1+2+7
1+2+8
1+3+4
1+3+5
1+3+6
1+3+7
1+3+8
1+4+5
1+4+6
1+4+7
1+4+8
1+5+6
1+5+7
1+5+8
1+6+7
1+6+8
1+7+8

pour compteur = 3 :
1+2+3+4
1+2+3+5
1+2+3+6
1+2+3+7
1+2+3+8
1+2+4+5
1+2+4+6
1+2+4+7
1+2+4+8
1+2+5+6
1+2+5+7
1+2+5+8
1+2+6+7
1+2+6+8
1+2+7+8
1+3+4+5
1+3+4+6
1+3+4+7
1+3+4+8
1+3+5+6
1+3+5+7
1+3+5+8
1+3+6+7
1+3+6+8
1+3+7+8
1+4+5+6
1+4+5+7
1+4+5+8
1+4+6+7
1+4+6+8
1+4+7+8
1+5+6+7
1+5+6+8
1+5+7+8
1+6+7+8

etc...


C'était bien ça ou j'ai compris de travers ?

ChezThierry
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 273
Inscription: 21 Oct 2005

Message le Ven Oct 28, 2005 14:27

Et ben alors ? finalement l'en avait plus besoin de son algo le monsieur ? :)

arabinose
WRInaute discret
WRInaute discret
 
Messages: 94
Inscription: 23 Avr 2005

Message le Sam Oct 29, 2005 17:11

faut surtout être systematique


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités