Gestion de polynomes en C - Je pete un cable !!!!!
tillow
Messages postés2Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention27 octobre 2005
-
26 oct. 2005 à 15:24
tillow
Messages postés2Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention27 octobre 2005
-
27 oct. 2005 à 09:27
Voila je travaille actuellement sur un projet qui utilise des polynomes
(entre autres pour faire de l'interpolation, enfin si j'arrive jusque
la). Pour gérer ces polynomes j'ai construit un type structuré
contenant un int (le degre) et un pointeur vers un tableau de
coefficients classés par degré de monomes décroissants : par exemple
3x²+2x+7 va se résumer ainsi :
P->degre= 7 et P->coef= 3 2 7.
Je suis en train de travailler (non de m'arracher les cheveux en fait ) sur la fonction setCoefficientsPolynome donc le but est d'affecter la valeur a au monome de degre degmonome sur le polynome P :
void setCoefficientsPolynome (polynome *P, int degmonome, double a) {
P->coef[0]=a;/*On met le monome de plus haut degre a 0*/
int j=0;
int deginitial=P->degre;
while(P->coef[j]==0 && j<=(P->degre)){/*Abaissement
du degre du polynome : on compte le nombre de monomes nuls à partir de
celui de plus haut degre et on en déduit le degre final de P*/
A l'execution j'obtiens une
segmentation fault. C'est surtout le cas n°3 qui m'inquiete. Please
dites-moi ce qui bugge j'en peu pluuuuuuuuuuuuuuuuus !! Un enorme
merci d'avance.
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 26 oct. 2005 à 17:15
Dsl :) pk tu le fais en C aussi. Au pire utilise des structures, c'est
le minimum. Créer une structure monome, et une structure polynome qui
contient des monomes car la, tu vas jamais t'en sortir.
Sinon, t'emmerdes pas avec la discution sur "a". Si l'utilisateur met 0
comme coefficient, c'est débile, mais c'est lui qui la choisit.
Si vraiment tu veux éviter la discution sur "a", divise ton programme
en fonction ! a la fin de ta fonction, tu fais une fonction qui vérifit
que le coef du plus haut degré est non nul. Sinon, il l'efface et
modifie le degré en conséquence.
Peut etre que l'erreur est évidente, mais j'ai pas le courage d'analyser en détail.
tillow
Messages postés2Date d'inscriptionmardi 4 octobre 2005StatutMembreDernière intervention27 octobre 2005 27 oct. 2005 à 09:27
Merci pr la réponse. Ben chuis obligée de le faire en C parce que
justement c'est un projet en C lol mais c vrai que c'est pas pratique.
Pour le type de structure c'est un format que j'ai choisi au départ et
je pense maintenant qu'utiliser des monomes aurait en effet été plus
pratique, mais bon... J'ai déja fait pas mal de boulot comme ca, autant
finir. Je vais essayer de refaire la fonction ss m'ocuper de a et on
verra bien... Sinon si qqn trouve l'erreur dans ce code qu'il me le
dise !!!!