IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] Matrice: Nb Element, Nb Colonne, Nb Ligne


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 15
    Par défaut [Tableaux] Matrice: Nb Element, Nb Colonne, Nb Ligne
    Bonjour à vous,

    Je suis en train d'implémenter un objet Matrice en php5, mais j'ai quelques soucis. Pour représenter une matrice j'utilse à tableau à deux dimenssions. Par exemple pour une matrice identité en 3x3, je la déclare comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $M = array(array(1,0,0), array(0,1,0), array(0,0,1));
    J'aimerai ensuite savoir combien il y a d'éléments dans ma matrice, le nombre de colonne et le nombre de ligne. J'utilise le code php suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // calcul du nombre d'élément
    count($M, COUNT_RECURSIVE);
    // => me retourne 12 au lieu de 9
     
    // calcul du nombre de colonne
    count($M[0]);
    // => me retourne 3, ca c'est bon
    Pour le calcul du nombre de ligne je serai tenter de mettre ça, mais syntaxiquement c'est incorrect.

    Quelqu'un peut il m'aider ?

  2. #2
    Membre chevronné Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Par défaut
    Je dirais qu'en faites le count recursive va compter les 3 array (qui contiennent chacun une ligne(colonne)) comme un élément. Donc il te suffit de faire :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    // calcul du nombre d'élément
    count($M, COUNT_RECURSIVE)-count($M);

    Par contre pour les lignes et colonnes je ne vois pas dans quel sens tu le comprend donc avec une matrice 4 ligne et 3 colonne déclaré comme ca:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $M = array(array(1,0,0,0), array(0,1,0,0), array(0,0,1,0));
     
    // calcul du nombre de colonne
    count($M);
     
    // calcul du nombre de ligne
    count($M[0]);

  3. #3
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Deux cas :
    Soit tu es sur que ce sont des matrices (et donc chaque ligne a le meme nombre de colonnes)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php
    // nombre de lignes = nombre d'éléments dans le tableau $M
    $nblignes = count($M);
    // nombre de colonnes = nombre d'éléments dans la première ligne
    $nbcolonnes = count($M[0]);
     
    $nbelements = $nblignes * $nbcolonnes;
    ?>
    Soit tu n'en es pas sur et dans ce cas ca sera plutot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?php
    // nombre de lignes = nombre d'éléments dans le tableau $M
    $nblignes = count($M);
     
    // pour chaque ligne on regarde combien on a de colonnes
    $nbelements = 0;
    for($i=0; $i<$nblignes ;$i++)
    {
    $nbelements += count($M[$i]);
    }
     
    ?>

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 15
    Par défaut
    ok, merci à vous deux

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/02/2014, 14h21
  2. [LATEX] Combiner Tableaux sur plusieurs pages et colonnes sur plusieurs lignes
    Par audera dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 2
    Dernier message: 04/02/2010, 23h46
  3. Réponses: 2
    Dernier message: 22/10/2008, 19h41
  4. Fusion de colonnes (ou lignes) de deux tableaux
    Par ceaser dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 10/07/2007, 07h43
  5. [Tableaux] Creation d'un affichage en colonne et ligne
    Par fabien14 dans le forum Langage
    Réponses: 7
    Dernier message: 09/12/2006, 13h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo