Des problemes avec la liste chainee

diensk Messages postés 3 Statut Membre -  
pyschopathe Messages postés 2053 Statut Membre -
Bonjour,
dorenavant, je ne sais vraiment quoi faire avec le languae c; Poutant, je l'aime beaucoup.Alors, le probleme que j'ai maintenant, c'est que je n'arrive pas vraiment a ecrire un une fonction qui prend en parametre un polynome et rajoute u monome a la liste et l'ecriture d'une fontion de saisie au clavier d'un polynome.Donc, il me serait vraiment bien si j'arrive a comprendre comment faire ces choses la en c.

Merci d'avance
A voir également:

1 réponse

pyschopathe Messages postés 2053 Statut Membre 135
 
Ben tu peux sûrement faire un truc du genre :
struct {
  int degre;
  double scalaire;
  struct Monome * next;
} Monome;

void ajouterMonome( Monome * polynome, Monome * new ) {
  // Si le degré du nouveau monome est inférieur au premier, on l'ajoute en tête.
  if ( new->degre < polynome->degre ) {
    new->next = polynome;
  } else {
    // Sinon on parcourt la liste chainée jusqu'à trouver un monôme de degré inférieur ou égal
    Monome * current = polynome->next;
    while ( new->degre > current->degre ) {
      if ( current->next != null ) {
        current = current->next;
      }
    }
    // Si le monôme a le même degré, on le remplace
    if ( new->degre == current->degre ) {
      current->scalaire = new->scalaire;
    } else {
      // Sinon on ajoute le nouveau monôme avant le courant
      Monome * tmp = current->next;
      current->next = new;
      new->next = tmp;
    }
  }
}
Et tu utilises comme ça :
// Déclaration d'un polynôme p
// [...]
// Le monôme à ajouter :
Monome m;
m->degre = 5;
m->scalaire = 3/2;
m->next = NULL;

ajouterMonome( &p, &m );
Bon, mon C est un peu rouillé, je ne suis pas sûr du code, et je ne suis pas tout à fait sûr que ce soit ce qui était demandé, alors si tu as d'autres questions, n'hésite pas !
0
the F Messages postés 162 Statut Membre 13
 
LE code est pas mal du tout mais je propose de definir //monome // en tant que nouvau type : typedef

petite remarque :: j'ai enteudu parler d'un programme semblable qui a ete demandé en un examen TP chez moi à *****
0
pyschopathe Messages postés 2053 Statut Membre 135 > the F Messages postés 162 Statut Membre
 
Tu as raison pour le typedef, il n'est pas implicite en C (contrairement à son grand frère le C++).

En ce qui concerne l'exam de TP, je serais désolé d'avoir fait les devoirs de quelqu'un, mais bon...
0