[résolu]tri d'une colonne x avec la colonne associée y

Posted:
28 Feb 2010, 13:59
by gil
J'ai un tableur: colonne 1 = x et colonne 2 = y (les images de x),
avec x:={1, 2, 3, 4, 8, 1,5, 7,6}
et y:={10, 20, 30, 40, 25, 55, 12, 89, 16}.
Comment faire - "simple" ! - pour que, quand j'ordonne x par ordre décroissant (sortD), les valeurs associées puissent venir avec le nouvel ordre décroissant de x
(soit nouvel ordre 8/25, 7/29, 6/16, etc.) ?
J'ai essayé quelque chose du genre
For i = 1 to dim (x)
xy_i:=string(1)"-"string(10)
Next, mais on ne peut effectuer des tris sur des chaînes de caractères !
tri sur une colonne x en laissant associ les val. de y=f(x)

Posted:
01 Mar 2010, 10:09
by gil
Merci pour la réponse, mais ce que je souhaite n'est pas de trier y, seulement x
x y
1 3
4 1
2 9
et je veux
x_décrois f(x_décrois)
4 1
2 9
1 3
Donc, j'attends toujours une solution !
Merci par avance pour vos pistes !
Gil
Re: [résolu]tri d'une colonne x avec la colonne associée y

Posted:
01 Mar 2010, 10:26
by Levak
En C :
- Code: Select all
void ordonnerTableau(int tableau[], int tailleTableau)
{
int i;
int j;
int memoireTampon=0;
for (i=0; itailleTableau; i++)
{
for (j=0; jtailleTableau; j++)
{
if (tableau[i]=tableau[j])
{
memoireTampon=tableau[i];
tableau[i]=tableau[j];
tableau[j]=memoireTampon;
}
}//Fin 1er boucle for
}//Fin 2eme boucle for
}
de
http://www.siteduzero.com/forum-83-4840 ... ise-5.htmlIl suffit de considérer une liste de plus sans vérifier ses valeurs
En "Pascal-TI" ça devient :
- Code: Select all
Define ordonnerTableau(ListeX, ListeY)=
Prgm
local i, j, memoireTampon
for i,0,dim(ListeX)
for j,0,dim(ListeX)
if (ListeX[i]=ListeX[j]) Then
memoireTampon:=ListeX[i]
ListeX[i]:=ListeX[j]
ListeX[j]:=memoireTampon
memoireTampon:=ListeY[i]
ListeY[i]:=ListeY[j]
ListeY[j]:=memoireTampon
EndIf
EndFor
EndFor
EndPrgm
Re: [résolu]tri d'une colonne x avec la colonne associée y

Posted:
01 Mar 2010, 13:11
by Bisam
Tu n'as pas compris, Gil ! (et tu n'as pas dû essayer non plus)
Lorsque l'on tape
- Code: Select all
SortD x,y
la première liste est triée en ordre décroissant et la seconde est triée en conséquence en suivant les changements effectués dans la première (et non dans l'ordre décroissant). On peut même le faire avec plusieurs listes triées en fonction de la première.
C'est expliqué dans le Guide de référence à la page 111.
Re: [résolu]tri d'une colonne x avec la colonne associée y

Posted:
01 Mar 2010, 15:03
by gil
Merci pour vos explications : voilà ce que c'est que d'être "distrait"... ou paresseux !
Entre-temps, j'avais trouvé:
a:={...}
b:={...}
ab:=a+i*b, avec i^2 = -1
puis faire sortD ab, qui marche très bien, mais est bien trop compliqué par rapport à la dernière indication (manuel page 111 oblige)