Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int main()
- {
- double x,a,b,dx,y,epsilon;
- int M,i,d;
- double szereg(double x, double epsilon, int M, int*ilosc_wyrazow, int*dokladnosc);
- printf("Podaj wartosc poczatkowa a: \n");
- scanf("%lf", &a);
- printf("Podaj wartosc koncowa b: \n");
- scanf("%lf", &b);
- printf("Podaj wartosc kroku dx: \n");
- scanf("%lf", &dx);
- printf("Podaj wartosc epsilona: \n");
- scanf("%lf", &epsilon);
- printf("Podaj MAX M: \n");
- scanf("%d", &M);
- b=b+0,5*dx;
- for(x=a; x<=b; x+=dx)
- {
- y=szereg(x,epsilon,M,&i,&d);
- printf("\n X: %lf \n Suma szeregu: %lf \n Wartosc funkcji: %lf \n Ilosc wyrazow: %d \n Czy osiagnieto dokladnosc: %d \n", x,y,(1/((1+x)*(1+x))),i,d);
- }
- system("Pause");
- }
- double szereg(double x, double epsilon, int M, int*ilosc_wyrazow, int*dokladnosc)
- {
- double suma_szeregu, wyraz;
- int suma_wyrazow;
- suma_wyrazow=1;
- suma_szeregu=1;
- wyraz=1;
- *dokladnosc=1;
- do
- {
- suma_wyrazow+=1;
- wyraz=wyraz*(-(1+x)*(1+x));
- suma_szeregu+=wyraz;
- if(suma_szeregu>M)
- {
- *dokladnosc=0;
- break;
- }
- }
- while (fabs(wyraz)>epsilon);
- *ilosc_wyrazow=suma_wyrazow;
- return suma_szeregu;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement