DRQ
Lt. Junior Grade
- Registriert
- Okt. 2008
- Beiträge
- 398
Schönen Sonntag Nachmittag liebe CB'ler!
Ich hantiere im Moment an einem Programm rum, welches die y(x) Werte einer kubischen Funktion ermittlet. Dies soll für den Wertebereich x=0 bis x=99 mit einer Schrittweite von 1 stattfinden und alles in einem Array vom Typ int gespeichert werden. Schlussendlich soll der Spaß in einem .txt Dokument gespeichert werden, so das dieses von z.B. Excel gelesen und als Graph dargestellt werden kann. Die Werte für a, b, c und d sind vorgegeben. Mein Programm sieht nun wie folgt aus:
Jetzt sehe ich aber schon direkt bei der Ausgabe, dass da i.was nicht stimmt, da für x=0 ja d rauskommen müsste - es kommt aber -471955 (also d+5) raus. Ich finde dafür einfach keinen Grund. Woher kommt das??
Ich hantiere im Moment an einem Programm rum, welches die y(x) Werte einer kubischen Funktion ermittlet. Dies soll für den Wertebereich x=0 bis x=99 mit einer Schrittweite von 1 stattfinden und alles in einem Array vom Typ int gespeichert werden. Schlussendlich soll der Spaß in einem .txt Dokument gespeichert werden, so das dieses von z.B. Excel gelesen und als Graph dargestellt werden kann. Die Werte für a, b, c und d sind vorgegeben. Mein Programm sieht nun wie folgt aus:
Code:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *dateizeiger;
char dateiname1[] = "Werte.txt";
int y[100];
int x=0, a=1, b=-241, c=18838, d=-471960;
dateizeiger = fopen(dateiname1,"wt");
if
(dateizeiger == NULL)
printf(" Fehler beim Schreiben der Datei %s",dateiname1);
else
printf("a=%d, b=%d, c=%d, d=%d\n\n", a, b, c, d);
for(x=0; x <= 99; x++)
{
y[x] = (a*x^3)+(b*x^2)+(c*x)+d;
fprintf (dateizeiger, "%d\n", y[x]);
}
fclose(dateizeiger);
system("type Werte.txt");
system("pause");
return(0);
}
Jetzt sehe ich aber schon direkt bei der Ausgabe, dass da i.was nicht stimmt, da für x=0 ja d rauskommen müsste - es kommt aber -471955 (also d+5) raus. Ich finde dafür einfach keinen Grund. Woher kommt das??