Help ! tableau php je ne comprends rien :(

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Help ! tableau php je ne comprends rien :(

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 18 mai 2016, 19:53

Alors un tableau c'est un ensemble d'éléments et donc si tu veux accéder à un élément précis du tableau, il faut un moyen pour le cibler. C'est la qu'intervient la notion d'indexation.

Le tableau tab de départ de l'exercice peut être représenté comme ceci :
Array
(
    [0] => 7
    [1] => 7
    [2] => 6
    [3] => 6
    [4] => 3
    [5] => 3
)
Tu retrouves bien les différentes valeurs 7 7 6 6 3 3 et chacune se voit attribuer un index, index commençant à 0 et s'incrémentant de 1 pour chaque nouvel élément.

Ainsi si tu veux par exemple accéder au 3ème élément du tableau, on va l'écrire en algorithmie tab[2], la valeur de l'index étant 2 (pour le 3ème rang) et la valeur de tab[2] étant 6.
tab[i] <- j // affecter la valeur de la variable j à l'index de valeur i du tableau tab
Donc concrètement, si i est égal à 0 et j est égal à 6 ça revient à affecter la valeur 6 au premier rang (index 0) du tableau tab.
Soit :
tab[0] <- 6
Le tableau deviendrait donc :
Array
(
    [0] => 6
    [1] => 7
    [2] => 6
    [3] => 6
    [4] => 3
    [5] => 3
)
La valeur à l'index 0 est devenue 6.
J'espère que c'est plus clair pour toi. :)

Merci bcp !! j'ai enfin compris ! donc ensuite pour l'incrémentation ( +1 ) et à la fin cela donne une sorte de compte à rebours c'est bien cela ?

merci bcp

Re: Help ! tableau php je ne comprends rien :(

par Saian » 18 mai 2016, 14:48

Alors un tableau c'est un ensemble d'éléments et donc si tu veux accéder à un élément précis du tableau, il faut un moyen pour le cibler. C'est la qu'intervient la notion d'indexation.

Le tableau tab de départ de l'exercice peut être représenté comme ceci :
Array
(
    [0] => 7
    [1] => 7
    [2] => 6
    [3] => 6
    [4] => 3
    [5] => 3
)
Tu retrouves bien les différentes valeurs 7 7 6 6 3 3 et chacune se voit attribuer un index, index commençant à 0 et s'incrémentant de 1 pour chaque nouvel élément.

Ainsi si tu veux par exemple accéder au 3ème élément du tableau, on va l'écrire en algorithmie tab[2], la valeur de l'index étant 2 (pour le 3ème rang) et la valeur de tab[2] étant 6.
tab[i] <- j // affecter la valeur de la variable j à l'index de valeur i du tableau tab
Donc concrètement, si i est égal à 0 et j est égal à 6 ça revient à affecter la valeur 6 au premier rang (index 0) du tableau tab.
Soit :
tab[0] <- 6
Le tableau deviendrait donc :
Array
(
    [0] => 6
    [1] => 7
    [2] => 6
    [3] => 6
    [4] => 3
    [5] => 3
)
La valeur à l'index 0 est devenue 6.
J'espère que c'est plus clair pour toi. :)

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 18 mai 2016, 14:21

j <- NB(tab) // affecter la longuer du tableau tab à la variable j
i <- 0 // affecter 0 à la variable i

TANT QUE  ( i < NB ( tab )) // tant que la variable i est strictement inférieur à la longueur du tableau tab
    tab [i] <- j // affecter la valeur de la variable j à l'index de valeur i du tableau tab
    i <- i+1 // incrémenter la variable i de 1
    j <- j-1 // décrémenter la variable j de 1
FIN TANT QUE
T'as bien écouté ton professeur ? j'ai comme un doute :P
Clairement plus clair ! merci ! :-) mais je bloque au niveau du
tab [i] <- J
que cela signifie t'il en français ? ou encore comment interpréter cela ?

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 19:46

j <- NB(tab) // affecter la longuer du tableau tab à la variable j
i <- 0 // affecter 0 à la variable i

TANT QUE  ( i < NB ( tab )) // tant que la variable i est strictement inférieur à la longueur du tableau tab
    tab [i] <- j // affecter la valeur de la variable j à l'index de valeur i du tableau tab
    i <- i+1 // incrémenter la variable i de 1
    j <- j-1 // décrémenter la variable j de 1
FIN TANT QUE
T'as bien écouté ton professeur ? j'ai comme un doute :P

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 19:39

Alors quand tu lis ça : j <- NB(tab)
En langage courant on dirait "affecter la longueur (le nombre d'éléments dans le tableau) du tableau tab à la variable j".
L'opérateur d'affectation d'une valeur dans une variable de php c'est le = et la fonction pour compter le nombre d'éléments d'un tableau est count().
Ce qui s'écrit donc en php :
$j = count($tab);
Tu as donc pour l'instant :
$tab = array(7, 7, 6, 6, 3, 3);// affecte le tableau [7] [7] [6] [6] [3] [3] à la variable $tab
$j = count($tab);// affecte la longuer du tableau tab à la variable j
Si tu comprends tu devrais être capable d'écrire la suite à part peut être la boucle TANT QUE qui s'écrit en php while(condition).

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 17 mai 2016, 19:32

Oula non ça c'est pas du PHP. ^^

Quel est l'opérateur d'affectation de base en php ?
Et par quelle fonction peut-on compter le nombre d'éléments d'un tableau ?
Celui de base c'est compteur = 0 ? et on compte gràce a NB ou COUNT ( c'est le même non ? )

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 19:26

Oula non ça c'est pas du PHP. ^^

Quel est l'opérateur d'affectation de base en php ?
Et par quelle fonction peut-on compter le nombre d'éléments d'un tableau ?

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 17 mai 2016, 19:23

Tout à fait, plus proprement :
$tab = array(7, 7, 6, 6, 3, 3);
Ensuite comment écris tu j <- NB(tab) ?
Ok super merci ! :)

ensuite donc
$j <- NB ( $monTableau )

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 19:18

Tout à fait, plus proprement :
$tab = array(7, 7, 6, 6, 3, 3);
Ensuite comment écris tu j <- NB(tab) ? (affecter la longueur du tableau à la variable j)

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 17 mai 2016, 19:16

Alors pour commencer tu as un tableau [7] [7] [6] [6] [3] [3].
Comment déclares tu ce tableau en php ? comment ça s'écrit ?
C'est par exemple = $monTableau array ( "7","7","6","6","3","3");

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 19:12

Alors pour commencer tu as un tableau [7] [7] [6] [6] [3] [3].
Comment déclares tu ce tableau en php ? comment ça s'écrit ?

PS : ton assertion j à été affecter à tab donc j vaut tab est fausse. j a été affecté à tab donc tab vaut j. ;)

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 17 mai 2016, 19:09

Te prends pas la tête à deviner, convertis simplement l'algorithme en code et affiche le contenu du tableau en sortie de boucle. ;)
Euh.. haha ! je ne te comprends pas , faut dire que je ne suis pas à l'aise avec PHP depuis le début .. :(
Si tu aurais le temps et l’amabilité de me montrer step by step comment arriver à ce résultat , je t'en serai très reconnaissant !

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 19:04

Te prends pas la tête à deviner, convertis simplement l'algorithme en code et affiche le contenu du tableau en sortie de boucle. ;)

PS : même si effectivement après lecture attentive de l'algorithme le résultat est évident (à chaque passage dans la boucle l'index qui augmente en partant de 0 se voyant affecter une valeur qui diminue en partant de 6 ^^).

Re: Help ! tableau php je ne comprends rien :(

par sparkaman » 17 mai 2016, 19:02

NB(tab) vaut bien 6, ça correspond au nombre d'éléments dans le tableau et donc j vaut bien 6 avant le premier passage dans la boucle TANT QUE.
Chaque élément du tableau à un index (numérique) dans le tableau permettant d'accéder directement à cet élément.
L'indexation du tableau commence bien à 0 et est incrémenté de 1 pour chaque élément.
Donc avec un tableau [7] [7] [6] [6] [3] [3] l'index 0 vaut 7, l'index 1 aussi, l'index 2 vaut 6 et ainsi de suite.
Ou dit autrement tab[0] est égal à 7, tab[1] est égal à 7, tab[2] est égal à 6, etc.

Merci bcp ! je commence à y voir plus clair , donc maintenant .. J à été affecter à tab donc j vaut tab mais je n'arrive toujours pas a savoir comment on peu trouver les nouvelles valeurs ... #-o

Re: Help ! tableau php je ne comprends rien :(

par Saian » 17 mai 2016, 18:55

NB(tab) vaut bien 6, ça correspond au nombre d'éléments dans le tableau et donc j vaut bien 6 avant le premier passage dans la boucle TANT QUE.
Chaque élément du tableau à un index (numérique) dans le tableau permettant d'accéder directement à cet élément.
L'indexation du tableau commence bien à 0 et est incrémenté de 1 pour chaque élément.
Donc avec un tableau [7] [7] [6] [6] [3] [3] l'index 0 vaut 7, l'index 1 aussi, l'index 2 vaut 6 et ainsi de suite.
Ou dit autrement tab[0] est égal à 7, tab[1] est égal à 7, tab[2] est égal à 6, etc.

PS : si tu regardes bien, à chaque passage dans la boucle, la valeur de j est affectée à l'index i du tableau puis i est incrémenté de 1 et j est décrémenté de 1. Avec en valeur de départ j égal 6 et i égal 0. Le tableau de départ pourrait contenir n'importe quels éléments, le résultat serait le même à partir du moment ou il y a bien 6 éléments dans le tableau.