hi leute wir müssen für die schule ein programm das aus den variablen a b und c von ax²+bx+c die lösungsmenge(n) ausrechnet jetzt wollt ich fragen ob ihr mal drüber guckt ob das alles richtig ist bzw ob ich noch irgent ein fall vergessen hab oder ir irgent was anders machen würdet?
schon mal danke im vorraus.Code:#include "stdafx.h" #include <stdio.h> #include <math.h> int main() { // Deklarationsteil double a,b,c,diskriminante,loesungsmenge1,loesungsmenge2,zwischenrechnung; int leeremenge,anzahlloesungen; leeremenge=0; // Eingabeteil printf("Geben sie a ein\n"); scanf("%lf",&a); fflush(stdin); printf("Geben sie b ein\n"); scanf("%lf",&b); fflush(stdin); printf("Geben sie c ein\n"); scanf("%lf",&c); fflush(stdin); // Verarbeitungsteil zwischenrechnung=(c/(-a)); diskriminante=(b*b)-(4*a*c); if(a!=0 && b!=0 && c!=0) { if(diskriminante==0) { loesungsmenge1=(-b)/(2*a); anzahlloesungen=1; } else if(diskriminante<0) { leeremenge=1; } else { loesungsmenge1=(-b-(sqrt((b*b)-(4*a*c))))/(2*a); loesungsmenge2=(-b+(sqrt((b*b)-(4*a*c))))/(2*a); anzahlloesungen=2; } } else if(a==0 && b!=0) { loesungsmenge1=(-c)/b; anzahlloesungen=1; } else if(zwischenrechnung>=0 && a!=0 && c!=0) { loesungsmenge1=sqrt(zwischenrechnung); loesungsmenge2=-loesungsmenge1; anzahlloesungen=2; } else { leeremenge=1; } // Ausgabeteil if(leeremenge==1) { printf("Die Loesungsmenge ist Leeremenge\n"); } else if(anzahlloesungen==1) { printf("x=%f\nL={%f}\n",loesungsmenge1,loesungsmenge1); } else { printf("x1=%f\nx2=%f\nL={%f;%f}\n",loesungsmenge1,loesungsmenge2,loesungsmenge1,loesungsmenge2); } return 0; }![]()



Zitieren
