C bô les tablô

Répondre
Rolland
Rolland
Déconnecté
3SI - Sea, Sex, Sun and Internet
smiley,
Depuis une liste alphanumérique 0, a, b par exemple, est-il possible d'obtenir l'affichage :
000 00a 00b 00c 0a0 0aa 0ab 0b0 0ba 0bb a0a a0b etc... en ayant une seule fois chaque valeur ? smiley
Si quelqu'un a la fonction et/ou l'exemple miracle...
Merci d'avance.
LupusMic
LupusMic
Déconnecté
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
C'est de l'algo de base ;) Imbriques trois for.
Rolland
Rolland
Déconnecté
3SI - Sea, Sex, Sun and Internet
Salut LupusMic,
D'abord merci pour ta rép.
Ouaip, d'accord. Ca a l'air trés simple, mais l'autodidacte que je suis n'aquiert peut-être pas les connaissances dans un ordre logique, et je ne maîtrise vraiment pas "l'algo de base pour imbriquer trois for".
Lorsque j'essaie, ça mouline sans fin et ça plante.
Aurais-tu une adresse ou cette manip est expliquée ou peux-tu m'en dire un peu plus sur les variables à utiliser et leurs limites ?
Bzh
Bzh
Déconnecté
bin si ça boucle indéfiniment, c'est que ta mal géré les conditions de tes for !!!

Montre nous ton code si tu veux....


Pour ce qui est des algos, y a des tutos sur Internet ! En général ils sont tournés C et C++, mais le C ressemble tellement à la syntaxe de PHP que tu ne devrais pas être trop destabilisé.

Bonne continuation !! Bye...
Rolland
Rolland
Déconnecté
3SI - Sea, Sex, Sun and Internet
Salut Bzh,

Résolu le pb de moulinette en revenanant au plus simple for{ for{ for{ }}}.

  1. <?php
  2. $liste=array('0','a','b');  
  3. for($i=0;$i<=count($liste);$i++) { 
  4.    for($j=0;$j<=count($liste);$j++) { 
  5.       for($k=0;$k<=count($liste);$k++) { 
  6.          $sortie=$liste[$i].$liste[$j].$liste[$k]; 
  7.          if(strlen($sortie)>2) echo $sortie.''; 
  8.       } 
  9.    }  
  10. }  
  11. ?> 

Et comme j'avais même des valeurs non voulues :
a, 0, a0, bb...
Utilisé strlen pour limiter.
Ca fonctionne mais ne me paraît pas trés othodoxe et il doit y avoir une méthode + propre.
Si tu connais...
Merci pour ton aide.
Bzh
Bzh
Déconnecté
Bin nan, pkoi pas très othodoxe ??? C'est nikel !!!

Le cou des boucle embriquées te gène ??? Va faloir t'y habituer parce que c'est très très courant !!!

Ciao, bonne continuation...
Bzh
Bzh
Déconnecté
Heu, nan pas nikel !!!!

Qu'est-ce que sa retourne lorsque c'est supérieur à 3 caratères ???

C'est bizard ça....
LupusMic
LupusMic
Déconnecté
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
(Rolland) Je suis parfois un peu rustre ;)

  1. <?php
  2. $liste=array('0','a','b');  
  3.  
  4. // $i de 0 à 3 compris : tu as donc 4 éléments (0, 1, 2 et 3 ?)  
  5. for($i=0;$i<=count($liste);$i++) {  
  6. for($j=0;$j<=count($liste);$j++) {  
  7. for($k=0;$k<=count($liste);$k++) {  
  8. $sortie=$liste[$i].$liste[$j].$liste[$k];  
  9. // Tu dis que tu sors, mais tu ne sors pas !  
  10. if(strlen($sortie)>2) echo $sortie.'';  
  11. }  
  12. }  
  13. }  
  14. ?> 


Si tu veux que le code soit indépendant de la taille du tableau à combiner, tu dois utiliser un algo récursif.
Rolland
Rolland
Déconnecté
3SI - Sea, Sex, Sun and Internet
B'soir,

Pfiou !

Bzh ->
Je sais pas si ça tourne avec plus de 3 caractères. En fait ce dont j'ai besoin c de combiner une liste en 3 tris : R, V, B pour les valeurs 00, 33...FF pour faire un picker-color en 216 couleurs pour proposer des horloges personnalisées en Flash gratuites (une façon d'apprendre à combiner php/Falsh tout en étant utile), sans javascript, et là, pour le picker, ça fonctionne. Mais si tu me dis que j'aurai de + en + besoin de boucles imbriquées, vais me pencher plus avant sur la question à l'occasion de ces vacances. Merci pour le souhait de bonne continuation et le même à toi ;o)

LupusMic ->
Pour le rustre no pb, je ne l'ai pas pris dans ce sens. La varaiable $sortie est peut-être mal adaptée. Elle correspond pour moi à ce qui va 'sortir' (s'afficher) sur l'écran. C pas la sortie de la boucle. Recherché des infos sur les algos, mais pas clair pour moi ne maîtrisant pas certains termes utilisés ou les interprétant mal (comme $sortie). Si t'avais une adresse de tuto ou les coordonnées d'un bouquin (mais pas de 500 pages!) où l'on peut apprendre par l'exemple, ça me permettrait d'assimiler plus vite. Merci.


Bons php et vacances.
Bzh
Bzh
Déconnecté
Ah, nan !!!!! smiley

Si tu commences à parler flash, on va moin bien s'entendre !!!!

Le flash c'est:
=>Priopriétaire
=>Un monopole (très dangereux)
=>code fermé et non standardisé
=>en gros, de la mer**

Pourquoi s'emmerder avec cette conner*** ????

On peut utiliser:
=>Gestion des évenements : Javascript
=>Animations : gifs animés

Faut arrêter avec les non standards ou c'est la fin d'un systement Internet OUVERT !!!!

Sérieux ...
Bzh
Bzh
Déconnecté
Ah, nan !!!!! smiley

Si tu commences à parler flash, on va moin bien s'entendre !!!!

Le flash c'est:
=>Priopriétaire
=>Un monopole (très dangereux)
=>code fermé et non standardisé
=>en gros, de la mer**

Pourquoi s'emmerder avec cette conner*** ????

On peut utiliser:
=>Gestion des évenements : Javascript
=>Animations : gifs animés

Faut arrêter avec les non standards ou c'est la fin d'un systement Internet OUVERT !!!!

Sérieux ...
Rolland
Rolland
Déconnecté
3SI - Sea, Sex, Sun and Internet
Eh Bé ! Je croyais pas avoir écrit d'injure !!!

Je suis d'accord avec toi sur ce qu'est et représente Flash et encore plus depuis qu'Adobe a absorbé Macromedia.
Maintenant il existe et lorsque je consulte mes stats de visites de la vingtaine de sites que j'ai mis en ligne, plus de 97% des visiteurs ont ce plugin dans leur machine.
A partir de là 2 solutions :
Soit je joue l'autruche et j'ignore, mais leurs moyens (avec ceux de MS qui du coup devient la seule autre option commerciale de création de site) sont tels que cette attitude n'apportera rien à l'ouverture d'Internet qui est l'esprit de sa conception et ils continueront tranquillement à coups de milliards à vérouiller le Web.
Soit j'utilise ce qu'ils mettent à ma disposition pour accroître mon nombre des visiteurs et tenter de leur expliquer ce pourquoi a été fait le web et qu'il existe des alternatives à ce qu'on leur propose dans la plupart des pubs et opérations commerciales.
Pour ma part j'ai choisi la deuxième option.
Internet est un media extraordinaire. Le plus puissant et le moins cher à l'heure actuelle. Si nous qui l'utilisons et le connaissons autant sinon mieux qu'eux, à titre de passion ou professionnel, ne sommes pas capables d'utiliser ce qu'il nous apporte pour le défendre, bien que Google vienne d'ouvrir un service opensource, personne ne le fera.
Jettes un oeil sur mon site perso (mais reprends le). Horreur ! Y'a de la pub rémunérée. Oui mais ce qu'elle rapporte me permet de prendre un peu de temps pour m'en occuper et afficher des sites comme celui-ci, d'apporter des services qui font connaître le site et attirent de nouveaux visteurs qui découvrent leur existance. Regardes le livre d'or, pas épais mais pas modéré non plus.
Pour moi c'est plutôt ça ouvrir Internet...
Allez. J'arrête là ou je vais en remplir des pages et ça va gonfler. Et puis c pas un forum !
A ta dispo, si tu veux, pour en parler par messagerie directe ou de vive voix si tu me laisses un tel où te rappeler.
Et même si ce n'est pas la mienne, j'accepte et respecte entièrement ta position. On crève de la pensée unique, alors on va pas s'y mettre...
Sans rancune !
Bzh
Bzh
Déconnecté
Oui désolé ! Je me suis emporté !

Mais tu vois je suis sous Linux et le flash est mal porté sur cette plateforme.

Je tombé littéralement amoureux de l'idéologie du libre mais surtout de tout ce que cela a apporté !

Imagine si le protocole HTTP était propriétaire !!!

J'ai simplement peur que des solutions comme le flash deviennent indispensables !

Je serais tellememnt déçu qu'Internet n'avance seulement qu'à la vitesse d'un monopole !

Imagine un peu si l'informatique n'avait pas avancé à la vitesse de Microsoft mais plustot à la vitesse d'une concurrance impitoyable et d'un accès libre à la connaissance !

Dès avancés comme Aéro de Microsoft et Xgl pour des systemes X (serveur graphique de Linux entre autre...) seraient apparues largement avant ! (bureau en 3D).

Tu trouves encore normal qu'en 2006, 90% de pc nécéssitent une défragmentation des périfériques de stockages ? Je te rappel que depuis 1985, on sait ranger des fichiers sans les fragmenter ! Les systemes Unix (linux en autre) et MacOs ne nécessaitent plus de défragmenter !

Ce n'est qu'un exemple parmit tant d'autre mis en avant afin de te montrer les dangers des systemes propriétaires !

Enfin je m'excuse vraiment de mettre emporté !

ps: Y a une redirection mail dans la fiche de mon compte si tu veux me joindre ! (anti-spams)
Répondre
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Php - Breizh Blog