Division zéro [Pascal] [Résolu/Fermé]

Signaler
-
 Pr0-g(r)Amer -
Bonjour à tous,

Mon programme est une calculatrice à nombres complexes.
J'ai un problème lorsque j'exécute mon programme celui-ci se ferme lorsqu'il requiert une division par zéro, je souhaiterais mettre en place une sécurité qui permettrais à l'utilisateur d'entrer des valeurs différentes lorsque cette erreur se produit.

Voici le module concerné :
NB : la procédure "saisir_cm" permet la saisie d'un nombre complexe sous forme de couple ( = tableau de 2 REAL )

procedure division;
var cm3:couple;cm4:couple;c:real;d:real;e:real;cm1:couple;cm2:couple;

begin
writeln;writeln;writeln;
WRITELN('Vous allez saisir le nombre complexe … diviser puis celui qui divise.');

saisir_cm (cm1);
writeln;writeln;writeln;
writeln('ATTENTION le d‚nominateur doit etre diff‚rent de 0');


saisir_cm (cm2);
cm3:=conj(cm2);
cm4:=mult(cm1,cm3);
e:=(cm2[1]*cm2[1])-(cm2[2]*cm2[2]);

c:=cm4[1]/e;
d:=cm4[2]/e;

{$I+}



writeln;
Writeln ('Le r‚sultat est ',c:0:3,' + ',d:0:3,'*i');
writeln;writeln;writeln;writeln;
writeln('Tapez sur <Entr‚e> pour retourner au menu');
Readln;
end ;




En vous remerciant par avance pour votre aide.


Pro-gameR

3 réponses

Messages postés
771
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
156
Demande a Chuck Norris lui il arrive a diviser par 0.

Bilou.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 83890 internautes nous ont dit merci ce mois-ci

Messages postés
197
Date d'inscription
samedi 2 mai 2009
Statut
Membre
Dernière intervention
16 novembre 2010
28
Bonjour,

Je crois qu'il faut agir juste après le calcul de e, du genre:

********************
Si e=0 alors retouner au entrées de départ, en mettant un message d'avertissement
********************

Comme cela il n'y aura pas de plantage et de nouvelles entrées seront possibles
Pont

Merci à vous.