[c] g un doute sur la fonction pow... (resolu)

g un doute sur la fonction pow... (resolu) [c] - C++ - Programmation

Marsh Posté le 30-01-2003 à 14:33:34    

comment fait on une racine cubique ?
pow(a, 1/3) ???
 
ca change qqch si a est negatif ?
 
 
merci d avance :jap:


Message édité par TiTan91 le 30-01-2003 à 15:34:38
Reply

Marsh Posté le 30-01-2003 à 14:33:34   

Reply

Marsh Posté le 30-01-2003 à 14:54:08    

man pow:
 

double pow (double x, double y);
 La fonction pow() renvoie la valeur de x ?ev??la puissance y.


pas de commentaire sur les nombres négatifs

Reply

Marsh Posté le 30-01-2003 à 15:09:09    

ca m avance pas...
ca dit rien sur les fractions
 
et pourtant mon prog fait moins n importe quoi depuis que je met pow(a, 1./3.) et que je place le signe en dehors...

Reply

Marsh Posté le 30-01-2003 à 15:13:01    

La calculatrice de Windows me balance un "Invalid input for function" quand je fais (-5)^(1/3)
Delphi me balance un "Invalid floating point operation."
Et C++Builder me donne un beau "pow: DOMAIN error"
[:mlc]


Message édité par antp le 30-01-2003 à 15:18:16
Reply

Marsh Posté le 30-01-2003 à 15:17:03    

Reply

Marsh Posté le 30-01-2003 à 15:22:33    

plus sérieusement, pow travaille avec des doubles ... or la racine d'un nombre négatif est COMPLEXE donc pow doit surement retourné un erreur ...

errno = EDOM   L'argument x est négatif, et y n'est  pas  entier.  Le  résultat serait un nombre complexe.

(source: man pow)

Reply

Marsh Posté le 30-01-2003 à 15:34:03    

:hello: merci bcp les mecs  :sol:  
 
c etait bien le a negatif qui faisait tout merder  :fou:  
et j avais oublie de le changer a un endroit ;)
 
 :jap:  :jap:  :jap:


Message édité par TiTan91 le 30-01-2003 à 15:34:16
Reply

Marsh Posté le 30-01-2003 à 15:38:50    

western a écrit :

plus sérieusement, pow travaille avec des doubles ... or la racine d'un nombre négatif est COMPLEXE donc pow doit surement retourné un erreur ...

errno = EDOM   L'argument x est négatif, et y n'est  pas  entier.  Le  résultat serait un nombre complexe.

(source: man pow)
 


Heu, jusqu'à preuve du contraire, la racine cubique de -1, bah, c'est -1 ... Voir même, POW(-1,2n+1) = -1, donc on est en droit d'attendre que POW(-x,1/2n+1) = -POW(x,1/2n+1)  :o  
Donc c'est mal fichu POW ...


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
Reply

Marsh Posté le 30-01-2003 à 17:28:37    

Par definition, en maths, x ^ y quand x < 0 n'est définie que pour y >= 0 ou pour -1/y dans N.
 
Dans ton cas, tu fait pow(x,1./3.), hors tu devrais savoir que "1./3." n'est pas égal à "1/3" car c'est une approximation ! Il est impossible d'écrire 1/3 avec un double, donc il n'est pas possible de calculer pow(-1,1./3.)

Reply

Marsh Posté le 30-01-2003 à 17:33:58    

Kristoph a écrit :

Par definition, en maths, x ^ y quand x < 0 n'est définie que pour y >= 0 ou pour -1/y dans N.
 
Dans ton cas, tu fait pow(x,1./3.), hors tu devrais savoir que "1./3." n'est pas égal à "1/3" car c'est une approximation ! Il est impossible d'écrire 1/3 avec un double, donc il n'est pas possible de calculer pow(-1,1./3.)


Ah vi, c'est vrai ça  :jap: ... J'oublie toujours que l'info n'est pas le monde parfait des mathématiques ... Faudrai qu'il y est quand même un moyen pour utiliser les racines nième en utilisant un type decimal pour bien faire.


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
Reply

Marsh Posté le 30-01-2003 à 17:33:58   

Reply

Marsh Posté le 30-01-2003 à 17:50:29    

http://www.developpez.net/forums/viewtopic.php?t=55321
 
coïncidence ? :D
 
(forum delphi, donc je suppose que oui)

Reply

Marsh Posté le 30-01-2003 à 17:54:33    

antp a écrit :

http://www.developpez.net/forums/viewtopic.php?t=55321
 
coïncidence ? :D
 
(forum delphi, donc je suppose que oui)


C'est amusant ça. C'est sans doute une coincidence, puisqu'ici, c'est en C/C++, mais bon ...


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed