échanger valeurs d'un tableau à 2 dimensions

ghosta Messages postés 29 Statut Membre -  
ghosta Messages postés 29 Statut Membre -
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

  1. ghosta Messages postés 29 Statut Membre
     
    Personne pour m'aider? SVP
    0
  2. ydurce Messages postés 81 Statut Membre 18
     
    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
  3. ghosta Messages postés 29 Statut Membre
     
    et pour l'adapter à un tableau à deux dimensions je dois faie quoi ?
    0
  4. ydurce Messages postés 81 Statut Membre 18
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ghosta Messages postés 29 Statut Membre
     
    Merci ydurce j'essaierais ça.
    0