begin process at 2012 05 28 05:17:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Maths

 > 

Addition de polynomes


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Addition de polynomes

dimanche 7 novembre 2010 à 11:36:30 | Addition de polynomes

nazdred

Bonjour ici,

alors voilà j'essaye de mettre au point une fonction pour additionner des polynômes stockés sous forme de listes simplement chainées (non triées).

J'ai sorti une fonction qui me parait convenable (enfin qui devrait marcher) avec une complexité dégueulasse je vous l'avoue. Mais malheureusement elle ne fonctionne pas.

Structure utilisée :
Code C/C++ :
typedef struct lPolyDev
{
        int degre;
        int coef;
        struct lPolyDev * succ;                                                 
}lPolyDev;

typedef lPolyDev * lpd;


Fonction de l'addition :
Code C/C++ :
lpd addition(lpd liste1, lpd liste2)
{
    if((!liste1) || (!liste2)) exit(1);
    int trouve;
    lpd lpdAdd, tete;
    lpdAdd = copie(liste1);
    tete = lpdAdd;
    while(liste2 != NULL)
    {
          trouve=0;
          while((lpdAdd != NULL) && (trouve == 0))
          {
               if(lpdAdd -> degre == liste2 -> degre)
               {
                    lpdAdd -> coef = lpdAdd -> coef + liste2 -> coef;
                    trouve=1;
               }
               lpdAdd = lpdAdd -> succ;
          }
          if(trouve==0) lpdAdd = ajoutTete(lpdAdd, liste2 -> coef, liste2 -> degre);
          liste2 = liste2 -> succ;        
    }
    return lpdAdd;        
}


Sachant que le fonction copie() se contente de dupliquer une liste et que l'ajoutTete() comme vous pouvez vous en douter ajoute un élément en tête de liste. (fonctions qui fonctionnent sans problèmes).

Si vous avez une idée...

En vous remerciant d'avance !
samedi 13 novembre 2010 à 15:30:53 | Re : Addition de polynomes

JulSoft

Membre Club
A mon avis, ton erreur est de retourner lpdAdd. Tu devrais plutot retourner la tête de ta liste.

En effet, tu modifie la position de ton pointeur dans ta bouche d'addition...

Essaie ça:
Code C/C++ :
lpd addition(lpd liste1, lpd liste2)
{
    if((!liste1) || (!liste2)) exit(1);
    int trouve;
    lpd lpdAdd, tete;
    lpdAdd = copie(liste1);
    tete = lpdAdd;
    while(liste2 != NULL)
    {
          trouve=0;
          while((lpdAdd != NULL) && (trouve == 0))
          {
               if(lpdAdd -> degre == liste2 -> degre)
               {
                    lpdAdd -> coef = lpdAdd -> coef + liste2 -> coef;
                    trouve=1;
               }
               lpdAdd = lpdAdd -> succ;
          }
          if(trouve==0) lpdAdd = ajoutTete(lpdAdd, liste2 -> coef, liste2 -> degre);
          liste2 = liste2 -> succ;        
    }
    return tete;        
}


Cette discussion est classée dans : trouve, coef, liste2, lpd, lpdadd


Répondre à ce message

Sujets en rapport avec ce message

fichiers sequenciels/turbo c++ 2.0 [ par Jbx2001 ] J'ai un probléme:j'aimerai lire un fichier contenant des caractéres et des nombres de types flottants.Dans un fichier,j'ai noté différentes coordonnée Les fichiers .h ou .hpp [ par Fantoooom ] Salut,Je ne sais pas comment savoir quelle fonction se trouve dans quelle fichier ???Quelqu'un pourrait me dire où il est possible que je trouve un ge des exercises [ par jysad ] Je trouve bien utile tout ces codes sources. Pourtant ce qui serais commode c'est un site qui propose des exercices ou de petit test pour pratiqué le Borland --> Visual Studio [ par 6Po ] Aloha :DJ'ai fait du Cpp pendant un bon moment sur Borland et la je passe sur Visual... mais l'aide de visual studio net je la trouve pas top :DDu cou comment utiliser les regex en c++ [ par Onishin ] tout et dans la question !!!J'ai des manupulationde coparaison complexe a faire sur les chaines !!!donc si qulqu'un c'est comment faire !!!pour une di recupération de donnée [ par jgravo ] Est ce que quelqu'un arrive a récupérer les valeurs d'une listebox qui se trouve dans une classe et les réinsérer dans une combobox qui se trouve dans Quelle fonction permet de rechercher automatiquement et d'indiquer le chemin complet d'un fichier? [ par Benwillis ] Par exemple, j'ai besoin d'indiquer ou se trouve un fichier ini pour lire dedans mais j'aimerai qu'il le trouve à chaque fois ss lui dire où il se tro recherche et comparaison dans fichier [ par rissorg ] J'ai un probleme de recherche et de comparaison entre une string rentree au clavier et des donnees sur un fichier texte.Voici mon source:#include #inc re:recherche et comparaison dans fichier [ par rissorg ] merci mais j'ai trouve une solution avec des strings.Malheureusement je suis coince sur autre chose.quand je passe mes donnees sur exel ca m'ecrit n'i Assez Urgent problème de gestion dans les fichiers [ par bugs2600 ] Salut,Je suis en train de faire un programme de gestion de fichier mais j'ai un problème pour faire une fonction de suppression des menbres.Voici ce q


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,406 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales