Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2012-01-11 19:28:48 trouver la plus petite valeur d'une liste

-[eM Tv]-
membre
Date d'inscription: 2011-09-04
Messages: 51

trouver la plus petite valeur d'une liste



salut,

nouvelle problématique : je souhaite stocker dans une liste (array) les coordonnées x, y de plusieurs points qui varient et utiliser pour controler le point d'origine d'un trait le couple de coordonnées possédant la valeur x la lus petite de la liste.

j'imagine que cette liste va se présenter comme ça :

int[][] myArray = {  
                     {x1,y1},
                     {x2,y2},
                     {x3,y3},
                     {x4,y4} 
                   };

mais je ne sais pas vraiment comment faire pour les comparer toutes entre elles et stocker la valeur la plus petite pour l'utiliser...

si une âme charitable pouvait me pointer la bonne direction, je lui en serait très reconnaissante...

merci d'avance !

Hors ligne

 

#2 2012-01-11 21:14:24 Re : trouver la plus petite valeur d'une liste

oyster_twiter
membre
Lieu: saint-herblain
Date d'inscription: 2008-04-01
Messages: 444
Site web

Re: trouver la plus petite valeur d'une liste



yop,

un truc dans l'esprit :

int x1 = int(random(20));
int y1 = int(random(20));
int x2 = int(random(20));
int y2 = int(random(20));
int x3 = int(random(20));
int y3 = int(random(20));
int x4 = int(random(20));
int y4 = int(random(20));

int[][] myArray = {  
  {
    x1, y1
  }
  , 
  {
    x2, y2
  }
  , 
  {
    x3, y3
  }
  , 
  {
    x4, y4
  }
};

int minima = myArray[0][0];
println("mes valeurs sont :");
for (int i=0; i<myArray.length; i++) {
  for (int j=0; j<myArray[i].length; j++) {
    if(myArray[i][j]<minima) minima = myArray[i][j]; 
    print(myArray[i][j]+"  ");
  }
}
println(" .");
println("ma valeur la plus basse est : " + minima);

...?

Hors ligne

 

#3 2012-01-11 21:31:44 Re : trouver la plus petite valeur d'une liste

emoc
@#@*$
Lieu: Quimper
Date d'inscription: 2008-01-28
Messages: 1576
Site web

Re: trouver la plus petite valeur d'une liste



Salut,

En parcourant la tableau pour trouver le minimum et en sauvant les valeurs x, y correspondantes au passage. Tu peux te passer de myMin ou de x, y c'est selon ce que tu veux faire!

Code (processing) :

int x, y;
int[][] myArray = {  {11, 2556},
                     {1234, 2},
                     {-56995, 7889},
                     {2,4} 
                   };
 
void setup() {}

void draw() {
  int myMin = 2147483647;
  for (int i = 0; i < myArray.length; i++) {
    if (myArray[i][0] < myMin) {
        myMin = myArray[i][0];
        x = myArray[i][0];
        y = myArray[i][1];
    }
  }
  println("valeur mini. : " + myMin + " x : " + x + ", y : " + y); 
  noLoop();
}

Hors ligne

 

#4 2012-01-11 21:57:04 Re : trouver la plus petite valeur d'une liste

emoc
@#@*$
Lieu: Quimper
Date d'inscription: 2008-01-28
Messages: 1576
Site web

Re: trouver la plus petite valeur d'une liste



Ah! Je n'avais pas vu ton post smile

Les 2 solutions sont équivalentes, à peu de choses près

Hors ligne

 

#5 2012-01-11 22:11:29 Re : trouver la plus petite valeur d'une liste

cgiles
membre
Lieu: Est de la France
Date d'inscription: 2005-05-25
Messages: 329

Re: trouver la plus petite valeur d'une liste



C'est dommage que l'on ai pas directement une fonction dans la classe Array qui nous retourne le minimum ou le maximum des int[] et float[].

Sinon pour les positions EMTV je conseille les PVector :
http://processing.org/reference/PVector.html
Très puissant et des fonctions pratiques.

Hors ligne

 

#6 2012-01-11 22:45:26 Re : trouver la plus petite valeur d'une liste

-[eM Tv]-
membre
Date d'inscription: 2011-09-04
Messages: 51

Re: trouver la plus petite valeur d'une liste



je vais aller creuser du côté des pvector (que j'ai déjà rencontré quelques fois dans des exemples de code qui m'intéressaient, justement), mais déjà les propositions d'oyster_twiter et emoc devraient faire l'affaire (je comprends mieux celle d'emoc, pour ma part, donc je vais essayer avec ça.)

merci merci !!
@+

Hors ligne

 

#7 2012-01-12 00:35:54 Re : trouver la plus petite valeur d'une liste

22_
membre
Lieu: paris
Date d'inscription: 2010-04-08
Messages: 189

Re: trouver la plus petite valeur d'une liste



Yop,
en java, il y a l'interface Comparable qui est très pratique : http://docs.oracle.com/javase/1.4.2/doc … rable.html

à coupler avec Collections.sort : http://docs.oracle.com/javase/1.4.2/doc … .html#sort(java.util.List)

ou sinon, le Comparator : http://docs.oracle.com/javase/1.4.2/doc … rator.html

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024