Liste linéaire chaînée

Mahdi94 - Modifié par cptpingu le 26/11/2013 à 18:17
 Mahdi94 - 26 nov. 2013 à 19:05
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

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
Modifié par cptpingu le 26/11/2013 à 18:17
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 ?
0
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 :)
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
26 nov. 2013 à 18:56
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).
0
Merci cptpingu tu m'a vraiment aidé :)
0
Rejoignez-nous