échanger valeurs d'un tableau à 2 dimensions

Fermé
ghosta Messages postés 25 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 1 février 2011 - 25 oct. 2010 à 11:35
ghosta Messages postés 25 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 1 février 2011 - 27 oct. 2010 à 15:20
Bonjour à tous,
voila j'essaie de créer une fonction qui échange deux valeurs d'un tableau à deux dimensions et qui renverrait ces valeurs. Il faut utiliser les pointeurs mais je ne sais pas comment les utiliser avec des tableaux à deux dimensions.
ma fonction aurait cette base là:

int echangerValeurs(float *x, float *y)
{
float z;
z=*x;
*x=*y;
*y=z;
return 0;
}

Je voudrais l'adapter pour qu'on puisse mettre en paramètres deux valeurs de tableau.
Sauriez-vous comment faire ?



5 réponses

ghosta Messages postés 25 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 1 février 2011
27 oct. 2010 à 01:38
Personne pour m'aider? SVP
0
ydurce Messages postés 78 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 12 décembre 2010 18
27 oct. 2010 à 14:16
par ex:

int echangerValeurs(float *tableau,int taille,float v1,flat v2)
{
float *x=NULL;
float *y=NULL;
int i=0;
while((!x || !y) && i!=taille)
{
x=tableau[i]!=v1?x:&tableau[i];
y=tableau[i]!=v2?y:&tableau[i];
i++;
}
if(!x || !y)
return -1; /*impossible car une des 2 valeurs n'est pas trouvée */
float z;
z=*x;
*x=*y;
*y=z;
return 0;
}

j'ai pas essayé, mais ça doit marcher
cdlt
0
ghosta Messages postés 25 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 1 février 2011
27 oct. 2010 à 14:24
et pour l'adapter à un tableau à deux dimensions je dois faie quoi ?
0
ydurce Messages postés 78 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 12 décembre 2010 18
27 oct. 2010 à 14:44
int echangerValeurs(float **tableau,int taillex,int tailley,float v1,flat v2)
{
...
for(int i=0;i!=taillex && (!x || !y);i++)
for(int j=0;j!=tailley && (!x || !y);j++)
{
x=tableau[i][j]!=v1?x:&tableau[i][j];
y=tableau[i][j]!=v2?y:&tableau[i][j];

}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ghosta Messages postés 25 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 1 février 2011
27 oct. 2010 à 15:20
Merci ydurce j'essaierais ça.
0