Witam! mam do napisania program obliczający wartość całki oznaczonej metodą prostokątów w przedziale wczytanym z pliku tekstowego i zapisujący wynik w pliku tekstowym. jak na razie udało mi się cos takiego napisać:
#include <stdio.h>
#include <stdlib.h>
float f(float x);
float f(float x)
{
return (x*exp(-x));
}
int main(int argc, char *argv[])
{
int i;
float przedzial, N, p, dx, xp, xk, s;
printf("Program oblicza calke oznaczona w przedziale a,b z funkcji X*exp(-x)\n");
printf("podaj poczatek przedzialu calkowania(liczba rzeczywista):\n" );
scanf("%f", &xp);
printf("podaj koniec przedziału całkowania:\n");
scanf("%f", &xk);
przedzial=xk-xp;
printf("przedzial wynosi: %f\n",przedzial);
printf("podaj ilosc prostokotow, na ktore ma byc podzielone pole pod wykresem:\n");
scanf("%f",&N);
s=0;
dx=(przedzial/N);
printf("podstawa prostokata wynosi:%f\n", dx);
for(i=1;i<=N; i++)
{
s+=f(xp+i*dx);
}
s=s*dx;
printf("pole wynosi:%f\n", s);
system("PAUSE");
return 0;
}
tyle że tutaj dane są wprowadzane z klawiatury..nie mam pojęcia w jaki sposob zmienić to aby wczytywały dane z pliku tekstowego i je tam zapisywały..a kolejny problem jest taki, że dla przedziału zawierającego się w ujemnych x, program zle oblicza pole. Gorąco proszę o jakiekolwiek podpowiedzi! ;) z góry serdecznie dziękuje;)