Retourner maximun et indice de tab 2D en C

Résolu
Danie -  
 Danie -
Bonjour,

j'aimerais retourner le maximun d'un tableau 2D mais aussi les indices du maximum

int sommet; //le sommet
//indices des maximum
int imax;
int jmax;

RechercheSommet(){
for(i=0; i< taille; i++){
if (tab[i][j] > tab[imax][jmax]){
imax = i;
jmax = j;
sommet = tab[imax][jmax];
}
return sommet;
}

Mais ensuite dans une autre fonction je n'arrive pas a recuperer imax et jmax.
Pareil si je fais return tab[imax][jmax];
J'arrive juste a recuperer la valeur du maximale

Merci pour vos conseils
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. squall289 Messages postés 13 Date d'inscription   Statut Membre 13
     
    Bonjour,
    il me semble que tu ne peux pas retourner de tableaux en C, il faut que tu le passe en paramètre et que tu le modifie.
    0
    1. Danie
       
      Merci Squal289 pour tes conseils
      0
  2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut,
    Tu peux renvoyer un pointeur sur une zone allouée du tas qui contiendra en première et deuxième cases les indices du maximum et en troisième la valeur du maximum.
    Ou alors, et c'est ce que je te conseille, passer les adresses des valeurs en paramètres pour les modifier.
    Evite les variables globales autant que possible.

    De plus ton algorithme de recherche de la valeur maximum du tableau en 2D n'est pas bon. Tu modifies que la première dimension.

    Cdlt
    0
    1. Danie
       
      Merci Fiddy pour tes conseils,
      effectivement j ái oublier la boucle sur les j
      0
  3. squall289 Messages postés 13 Date d'inscription   Statut Membre 13
     
    Exact, je n'avais pas remarqué...
    j n'est pas déclaré, et il n'y a pas de boucle non plus.
    0