He oui, la procedure div un petit exercice qui m'a fait quand même un peu reflechir.
Le principe est assez simple, on soustrai un nombre de fois x le diviseur au nombre de base et se nombre x est le réultat.
Source / Exemple :
procedure TForm1.Button1Click(Sender: TObject);
var result,nb,divi:integer;
begin
result:=0;
nb:= strtoint(edit1.text);
divi:=strtoint(edit2.text);
while nb > divi do
begin
nb:=nb-divi;
inc(result);
end;
label1.caption := inttostr(result);
end;
Impossible de planter sauf si les propriétés Text des TEdit contiennent autre chose que des chiffres. Aussi je suggère de remplacer les fonction StrToInt par des StrToIntDef :
nb:= strtointDef(edit1.text, 0);
Comme celà, c'est complètement blindé.
14 mai 2002 à 17:31
14 mai 2002 à 17:31
14 mai 2002 à 14:11
while nb > divi do
Par exemple 45 DIV 5 donne normalement 9 mais avec cette procedure cela donne 8 ce qui est faut!
Il vaudrais mieux la remplacer par:
while nb >= divi do
25 avril 2002 à 22:25
++
25 avril 2002 à 22:18
nb:= strtointDef(edit1.text, 0);
Comme celà, c'est complètement blindé.
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.