Nullstellen berechnen?
-
Hi Leute!
Unten seht ihr meine Code der mir die Nullstellen einer ganz normalen quadratischen Funktion berechnen soll. Leider hab ich das Problem, dass mir mein Compiler die Funktion "funktion_berechnen" ohne einen für mich ersichtlichen Grund überspringt. Er ignoriert sie einfach. Keine Ahnung warum. Er geht einfach zum return 0; der main-Funktion weiter... Könnt ihr mir sagen wo mein Fehler liegt?
#include<stdio.h> #include<math.h> void parameter_eingeben(double *a, double *b, double *c) { printf("a = "); scanf("%lf", a); printf("b = "); scanf("%lf", b); printf("c = "); scanf("%lf", c); } void nullstellen_berechnen(double a, double b, double c) { double x1 = 0, x2 = 0, x, disk; disk = b*b - 4*a*c; if(disk < 0) { printf("Fehler: Diskriminante < 0!"); } else if(disk == 0) { x = ((-b) / (2*a)); } else if(disk > 0) { x1 = ((-b) - sqrt(disk)) / (2*a); x2 = ((-b) + sqrt(disk)) / (2*a); } } int main () { double a = 0, b = 0, c = 0, x1 = 0, x2 = 0; printf("----------------------------------------------------------------\n"); printf("Berechnung der Loesungen einer Gleichung der Form: a*x*x+b*x+c=0\n"); printf("----------------------------------------------------------------\n"); parameter_eingeben(&a, &b, &c); printf("y = f(x) = %lf*x*x + %lf*x + %lf", a, b, c); nullstellen_berechnen(a, b, c); return 0; }
-
Wie stellst du das denn fest? Liegt es daran, dass deiner Funktion keine Ausgaben macht?
Mach doch mal vor dem if ein
printf("nullstellen_berechnen(%f, %f, %f)\n", a , b, c);
-
du müsstest am ende der der funkrion nullstellen_berechnen nur noch x1 und x2 ausgeben
-
Danke Leute mittlerweile hab ichs!
Danke!