slt,
quelle est la fonction qui calcule la puissance d'un Nbr
slt,
quelle est la fonction qui calcule la puissance d'un Nbr
et en delphi, quelle est la fonction
Power pour les puissances réelles positives, et IntPower pour les puissances entières relatives.
On peut faire une fonction ou une procédure comme suit:
A++ Mic**
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 PROGRAM PUIS;{Eleve un nombre Y la puissance X} Uses Crt; Var X:Integer; Y,Y1:Real; Procedure puisX(X:Integer;Y:Real); Var Bcl:Integer; Begin Y1:= Y; for Bcl := 1 to X-1 do Y:= Y*Y1; WriteLn(Y:15:2); {Affichage de Y format a 2 decimales apres virgule} End; BEGIN ClrScr; puisX(4,12.5);{ 12.5 a la puissance 4} Readln;{ attend Entree pour quitter le programme} END.
Bonjour,
je ne vois pas trop l'intérêt de créer une nouvelle fonction alors qu'il suffit d'écrire :
exp(X*ln(Y))
qui donne Y puissance X.
Ce n'est pas plus long que d'écrire Puissance(X,Y) ce qui suppose que la fonction "Puissance" ait été déclarée.
Tu soulèves là un vrai problème mathématique, qui explique pourquoi Delphi définit deux fonctions. La définition que tu donnes est la définition utilisée en analyse, qui n'est valable que pour des puissances réelles d'un nombre strictement positif (ensemble de définition du logarithme).
Il existe une autre définition, algébrique, qui marche pour n'importe quel nombre x positif ou négatif, éventuellement non nul :
- x^n=x*x*...*x (n facteurs) pour n entier strictement positif, x quelconque [ex : 2^3=8],
- x^0=1 pour x quelconque non nul [ex : 3 2541 784 632^0 = 1],
- x^n=1/(x^(-n)) pour x quelconque non nul et n entier strictement négatif (donc -n positif ) [ex : 2^(-4)=1/16=0,0625],
Ta fonction ne marche que pour le premier cas : quid de la puissance nulle et des puissances négatives ? Elle renverra toujours x, ce qui n'est pas seulement limité, mais faux !
Sous FreePascal, cela déclenchera une exception qu'on pourra gérer en aval !
pow(x,n) cela veu dire x ala puissance n. donc si tas un nombre et tu veu calculer sa puissance ta qapliqer cela.
32 est par exemple pow(2,5).
je crois qavec ceci il te suffit juste de declare les variables et tout le reste et tu auras ce que tu cherche.
function Power(const Base, Exponent: Extended): Extended;
Partager