Soyez le premier à donner votre avis sur cette source.
Snippet vu 7 845 fois - Téléchargée 36 fois
program carre; uses crt; var nombre,entier,exposant:real; function caree(var entier,exposant:real):real; var i:integer; CopieEntier:real; begin if( exposant >0) then begin CopieEntier:=entier; for i:=1 to trunc(exposant-1) do entier:=CopieEntier*entier; end else begin CopieEntier:=entier; exposant:=-exposant; entier:=1/(caree(entier,exposant)) end; caree:=entier; end; begin clrscr; write('Taper un nombre : '); readln(entier); write('Taper sa puissance : '); readln(exposant); if exposant <> 0 then nombre:=caree(entier,exposant) else nombre:=1; writeln('Nombre = ',nombre); readln end.
N'oublie pas que dans toute fonction on peut utiliser la variable Result:
function caree(var entier,exposant:real):real;
var i:integer;
begin
Result:=1;
if( exposant >=0)
then for i:=1 to trunc(exposant) do Result:=Result*entier
Else for i:=1 to trunc(exposant) do Result:=Result/entier;
end;
De plus dans ce cas elle fonctionne aussi pour exposant=0, ce n'est donc plus nécessaire de le tester avant l'appel.
A noter aussi que l'unité Math fournit la fonction :
function Power(const Base, Exponent: Extended): Extended;
Nono.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.