Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Les puissances en language c
Envoyé par: Tux iN tHe wOod

Bonjour,

Je souhaite créer un programme en c capable d'effectuer des puissances, comme une calculatrice.
Cepandant j'ai un petit problème : quel touche du clavier faut il utiliser, ou quelle primitive, pour faire a^b ?

J'ai essayé le "^" mais ça me fait un xor et non une puissance...

Merci d'avance

Poste le Saturday 7 January 2006 00:36:21
Répondre     Citer    
Re: Les puissances en language c
Envoyé par: Sve@r

Il n'y a pas d'opérateur de C qui calcule directement la puissance. Mais tu as, dans la librairie "/usr/lib/libm.a" la fonction "double pow(double x, double y)" qui te calcule x puissance y.
Il te faut
1) inclure "<math.h>"
2) linker la librairie "/usr/lib/libm.a" lors de l'édition de liens

Ou bien tu te programmes toi-même ta propre fonction...

L'homme qui murmurait à l'oreille des pingouins
[fr.lang.free.fr]

Poste le Saturday 7 January 2006 01:34:02
Répondre     Citer    
Re: Les puissances en language c
Envoyé par: Tux iN tHe wOod

Ok super !
Mais cette fonction ne peut faire la puissance que de deux doubles ? Pour des unsigned long, ça marche pas ?

De toute façon ça me convient !

Merci beaucoup

PS : Est il possible en c de faire des puissances énormes du genre 25^54 et de les écrire chiffre à chiffre (même s'il y en a 100) ?

Poste le Saturday 7 January 2006 01:48:03
Répondre     Citer    
Re: Les puissances en language c
Envoyé par: nicola

Pour ça il y a bc, essaie dans ton shell préféré.

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Saturday 7 January 2006 07:06:18
Répondre     Citer    
Re: Les puissances en language c
Envoyé par: AlSim

Citation
Tux iN tHe wOod
PS : Est il possible en c de faire des puissances énormes du genre 25^54 et de les écrire chiffre à chiffre (même s'il y en a 100) ?

Je viens calculer 12345! avec un algorithme bidon en python, et j'ai eu la réponse exacte en grosso modo une seconde, alors faire 25^54 en C, ça doit être possible ;-)

[catwell.info]

Poste le Saturday 7 January 2006 10:58:40
Répondre     Citer    
Re: Les puissances en language c
Envoyé par: Sve@r

Citation
Tux iN tHe wOod
Ok super !
Mais cette fonction ne peut faire la puissance que
de deux doubles ? Pour des unsigned long, ça
marche pas ?
Tu lui passes tes ulong qui seront automatiquement convertis lors de leur recopie dans "pow"

Citation
Tux iN tHe wOod
Est il possible en c de faire des puissances
énormes du genre 25^54 et de les écrire chiffre à
chiffre (même s'il y en a 100) ?

La valeur d'un double peut atteindre approximativement 10 exp 307. Tu peux tout calculer pourvu que chaque étape du calcul ne dépasse jamais cette limite...


L'homme qui murmurait à l'oreille des pingouins
[fr.lang.free.fr]

Poste le Saturday 7 January 2006 12:57:27
Répondre     Citer    
Re: Les puissances en language c
Envoyé par: Tux iN tHe wOod

merci beaucoup pour toutes vos réponses !

Poste le Wednesday 11 January 2006 18:48:12
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Les puissances en language c
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons