Syntaxfehler - woher kann das kommen?
-
Hallo zusammen!
ich muss für die uni eine aufgabe in c programmieren, die die reihenentwicklung der gaußschen fehlerfunktion beihaltet und das ergebnis ausgibt.
in der auswertung der formel bekomme ich immer einen syntaxfehler 'typ' vom compiler geliefert. habe schon versucht, alle variablen auf double zu casten, das hat aber nix gebracht. hier ist mein code der formelverarbeitung:
for (i=0; i<iAnzahl; i++) { if (i==0) iFakult = 1; else iFakult = iFakult * i; if (i%2==0) derf = derf + (2/double sqrt (dPi))*(double pow (dx,(2*i+1)))/((2*i+1)*iFakult); else derf = derf - (2/double sqrt (dPi))*(double pow (dx,(2*i+1)))/((2*i+1)*iFakult); } printf ("Das Ergebnis lautet: %d\n", derf);die variablen hab ich alle vorher definiert, der erste buchstabe jeder variable bezeichnet den datentyp. iFakult hab ich als unsigned long int genommen und i ist als integer implementiert.
Danke schonmal für eure hilfe!!!
-
Du hast die Klammern beim Casten vergessen:
double x = (double) 3.14;
-
vielen dank für die schnelle hilfe, jetzt klappt alles!
in unserem skript haben die klammern bei den mathematischen funktionen gefehlt, deshalb hab ich gedacht, das "double" gehört zum ausdruck dazu...
Viele Grüße, shakesbeer
-
Anscheinend bist Du etwas zu bequem, bei Deinen Posts auf Groß/Klein- und
sonstige -Schreibung zu achten. Beim Programmieren rächt sich das. Ich denke,
Du solltest das Dir angewöhnen. Nicht persönlich, nur so.