[R] La plus grande valeur d'un tableau multidimensionel

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

[R] La plus grande valeur d'un tableau multidimensionel

#1

Message par Hugues »

Bonjour à tous,

Je n'arrive pas à trouver la valeur la plus grande d'un tableau mutidimensionel...

J'ai un tableau qui fait 4 colonnes et x lignes... Je voudrais trouver la plus grande valeur qui se trouve dans la colonne 4...

Je sais qu'il existe la fonction _ArrayMaxIndex() mais je ne sais pas trop l'utiliser (ou si on le peut) sur un tableau multi...

Merci par avance de votre aide.
Modifié en dernier par Hugues le jeu. 25 juil. 2013 15:39, modifié 1 fois.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] La plus grande valeur d'un tableau multidimensionel

#2

Message par jguinch »

Tu peux passer par un tableau temporaire d'une seule colonne qui contiendra les valeurs de la colonne 4, comme ça tu pourras utiliser _ArrayMax ou_ArrayMaxIndex :

Code : Tout sélectionner

#Include <Array.au3>
Local $aData[2][4] = [ [ 1, 2, 3, 4], [5, 6, 7, 8] ]
Local $aTemp[Ubound($aData)]

For $i = 0 To UBound($aData) - 1
    $aTemp[$i] = $aData[$i][3]
Next
Local $iMaxIndex = _ArrayMaxIndex($aTemp)

MsgBox(0, "", "La valeur max est " & $aTemp[$iMaxIndex])
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] La plus grande valeur d'un tableau multidimensionel

#3

Message par Hugues »

Arff, c'est ce que je viens de faire...

Je joins mon code, comme je suis pas programmeur, est-il possible de le simplifier?
► Afficher le texte
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [R] La plus grande valeur d'un tableau multidimensionel

#4

Message par Tlem »

Sinon, en reprenant le code de jguinch et en ce basant sur le code de _ArrayMaxIndex(), on peux simplifier la chose comme ceci :

Code : Tout sélectionner

Local $aData[2][4] = [ [ 1, 2, 3, 4], [5, 6, 7, 8] ]
Local $ValMax = 0

For $i = 0 To UBound($aData) - 1
    If Number($ValMax) < Number($aData[$i][3]) Then $ValMax = $aData[$i][3]
Next

MsgBox(0, "", "La valeur max est " & $ValMax)
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre