Liste linéaire chaînée

Signaler
-
 Mahdi94 -
Bonjour,
j'ai besoin d'aide dans ce code source, je trouve pas la faute car je suis juste un débutant dans les LLC
merci d'avance, voila le code:

#include<stdio.h>
#include<stdlib.h>

typedef struct neoud neoud 
struct noeud
{
    float c;
    float p;
    struct noeud* nxt;
};

typedef noeud* tete;

neoud* creer_neoud(float a,float b)
{ 
  struct neoud* poly=(noeud)malloc(sizeof(neoud));
  if(poly!=NULL)
  {
    poly->c=a;
    poly->p=b;
    poly->nxt=NULL;
  }
}

void insert(neoud** poly,float a,float b)
{
  noeud* nouv=creer_noeud(a,b);
  if(*poly=NULL)
    *poly=nouv;
  else
  {
    noeud *p=*poly;
    while(p->nxt!=NULL)
      p=p->nxt;
    p->nxt=nouv;
  }
}

int calcul_x(float a,float b)
{
  float tmp=1.0;
  int i;
  for(i=1;i=b;i++)
    tmp=tmp*a;
  return tmp;
}

float valeur(noeud* poly,float x)
{
  float val=0.0;
  while (poly!=NULL)
  {
    val=val+calcul(poly->c,poly->p);
    poly=poly->nxt;
  }
  return val;
}

neoud* deriver(noeud* poly)
{
  while(poly!=NULL)
  {
    poly->c=(poly->c)*(poly->p);
    poly->p=-poly->p)-1;
    poly=poly->nxt;
  }
  return (poly);
}

noeud* integrer(neoud* poly)
{
  while(poly!=NULL)
  {
    poly->c=(poly->c)/(poly->p);
    poly->p=(poly->p)+1;
    poly=poly->nxt;
  }
  return (poly);
}

void main()
{
  char arret;neoud* poly;
  printf("voulez-vous creer un neoud?\n");
  poly=creer_neoud(2.0,5.0);
}

4 réponses

Messages postés
3820
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
1 décembre 2020
113
Bonjour.

Tout d'abord, merci de penser aux balises de code (je les ai rajouté, mais la prochaine fois, la question ne sera pas retenue).

Pour ton problème impossible de t'aider sans plus de précisions:
- Quel est le comportement actuel ?
- Quel est le comportement attendu ?
- Quel est le problème précis ?
Merci pour ta réponse cptpingu, lors de la compilation une erreur apparaît dans la 16éme ligne, j'ai pas trouvé la faute que j'ai commise, est-ce c'est dans la definition du type "noeud" ?? après le main ce n'est pas très important, c'est juste pour l'essai, mon problème est au début :)
Messages postés
3820
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
1 décembre 2020
113
Tu écris "noeud" puis plus loin "neoud"... C'est déjà un premier problème.
Il manque aussi une étoile dans le cast du retour du malloc.

Quand tu donnes une erreur de compilation, il faut joindre la ligne d'erreur exacte avec, sinon il est difficile de t'aider. (Pas tout, juste la ligne précise qui décris ton erreur).
Merci cptpingu tu m'a vraiment aidé :)