Posez votre question Signaler

Division by 0 [Résolu]

mano2003 49Messages postés 8 août 2008Date d'inscription - Dernière réponse le 29 janv. 2009 à 16:49
Bonjour,
j'ai un problème pour compiler un programme en turbo pascal qu'on nous a donné en exo qui consiste à résoudre l'équation axx+bx+c=0 mais il m'écrit que y'a erreur division by zero pour les cas c=0 et bx+c=0. aidez moi svp voici mon algo:
program equation_2nd_degre;
uses crt;
var a,b,c,x,x0,x1,x2,delta:real;
begin
write('Donnez a: '); read(a);
write('Donnez b: '); read(b);
write('Donnez c: '); read(c);
delta:=(b*b)-(4*a*c);
if (a=0) and (b=0) and (c<>0) then
writeln('Cette ‚quation n''existe nulle part!!!')
else
if (a=0) and (b<>0) and (c<>0) then
begin
write('L''‚quation est du 1er degr‚ et admet une solution x0: ',x0);
x0:=(-c/b);
writeln(x0);
end;
if (a=0) and (b=0) and (c=0) then
writeln('Il n''y a pas de solution!!!')
else
if (a<>0) and (b<>0) and (c<>0) or (c=0) then
writeln('L''‚quation est du 2nd degr‚');
if delta>0 then
begin
writeln('L''‚quation admet 2 solutions distinctes x1 et x2: ');
x1:=(-b-sqrt(delta))/(2*a);
x2:=(-b+sqrt(delta))/(2*a);
writeln('x1=',x1);
writeln('x2=',x2);
readln;
end
else
if delta=0 then
begin
writeln('L''‚quation admet une racine double x0: ');
x0:=-b/(2*a);
writeln('x0=',x0);
readln;
end
else
if delta<0 then
begin
writeln('L''‚quation n''admet pas de solution dans IR !!!');
readln;
end;
readln;
clrscr;
end.
Lire la suite 

Division by 0 »

4 réponses
Réponse
+0
moins plus
C'est normal ... la méthode du discriminant n'est valable que pour ax²+bx+c=0 avec a différent de 0 ...
d'ailleurs tu le vois bien en faisant (-b-sqrt(delta))/(2*a) ... si a=0 tu divises par 0
Ajouter un commentaire
Réponse
+0
moins plus
ya pas une méthode pour résoudre l'équation du 1er degré?
bizu53 - 29 janv. 2009 à 00:31
bah si ... on l'apprend au collège
si t'as ax+b=0
ax=-b
x=-b/a
Ajouter un commentaire
Réponse
+0
moins plus
N'oublie pas de mettre ton sujet en "résolu" si tu n'as plus de soucis ;-)
Ajouter un commentaire
Ce document intitulé « division by 0 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook