Posté(e) le 13 mars 200520 a Je suis franchement débutant en C, donc tapez pas trop fort s'il vous plait Je suis en train de faire un programme dans lequel j'utilise la racine carré (pour une résolution de fonction trinome) le code pour le moment c'est : #include <stdio.h> #include <math.h> main() { double a, b, c, x1, x2, delta, racdelta; scanf("%le", &a); scanf("%le", &b); scanf("%le", &c); delta = b*b-4*a*c; racdelta = sqrt(delta); printf("%f", racdelta); return 0; } seulement à la compilation j'ai : tintaspi@pc1:~/prog $ gcc delta.c -o delta /tmp/ccSTeARZ.o(.text+0x69): In function `main': : undefined reference to `sqrt' collect2: ld a retourné 1 code d'état d'exécution donc j'ai un problème dans la fonction sqrt(), mais lequel ?
Posté(e) le 13 mars 200520 a Je vais étudier le language C l'année prochaine. En ce moment j'étudis les algorithmes. Je sais pas si je dis des conneries, mais dans le programme qu'on utilise pour apprendre à faire des algos, on doit poser des préconditions. si c'est le cas pour le language C aussi, peut être faut poser delta >= 0 . ou sinon faire des possibilités avec des "if" et des "else" voilà pour ma p'tite contribution, je sais pas si elle sera utile Modifié le 13 mars 200520 a par shark_atlantis
Posté(e) le 13 mars 200520 a vérifie dans ton le fichier math.h du repertoire include que tu as bien une fonction sqrt, elle doit etre présente mais bizarement on dirait que ton compilateur ne la reconnait pas.
Posté(e) le 13 mars 200520 a Auteur ouai, ca à l'air d'êtres bon ... shark_atlantis ---> nan, ca change rien
Posté(e) le 21 mars 200520 a Tiens Tristan qui fait un tour parmis nous Effectivement, c'est -lm qui permet de linker la bibliothèque math.h
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.