Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- #include <stdlib.h>
- double sin1(double z, int y); //funkcja liczaca sinusa za pomoca ciągu
- int silnia(int z); //funkcja pomocnicza, do liczenia silni
- int main()
- {
- FILE *plik; //przypisanie wskaźnika do pliku
- plik=fopen("sinus.dat","w"); //otwarcie pliku do którego zapiszemy dane
- double x=0.1; //wartość dla której będziemy liczyć sinusa
- int n=10; //wartość przybliżenia (ilość wyrazów ciągu, które zsumujemy)
- double error; //zmienna do liczenia błędu
- for(int f=0;f<30;f++)
- {
- error=sqrt((sin1(x,n)-sin(x))*(sin1(x,n)-sin(x)));//przypisanie wartości błędu
- fprintf(plik,"%d\t%lf\n",x,error); //drukowanie do pliku
- x+=0.1;
- }
- if(fclose(plik)!=0)
- printf("Blad zamkniecia pliku\n"); //sprawdzamy, czy plik zostal poprawnie zamknięty
- system("PAUSE");
- return EXIT_SUCCESS;
- }
- double sin1(double z, int y) //funkcja korzysta ze zmiennej typu double, od której liczymy wartość cosinusa,
- // oraz zmiennej typu int, która określa wartość przybliżenia (ilość wyrazów
- // ciągu, które zsumujemy)
- {
- double sin=0; //zmienna do której przypisana zostanie wartość sinusa
- int j=1; //pomocnicza zmienna, obliczająca obecną wartość potęgi, i silni
- for(int i=1;i<=y;i++) //pętla zrobi liczbę przejść równą wartości ustalonego przybliżenia
- {
- if(i%2!=0)
- sin+=pow(z,j)/silnia(j); //kiedy i nie jest nieparzyste, dodajemy kolejny wyraz, zgodnie ze wzorem
- else
- sin-=pow(z,j)/silnia(j); //kiedy i jest parzyste, odejmujemy kolejny wyraz
- j+=2; //zwiększamy pomocniczy j, żeby przeskakiwał o 2
- }
- return sin; //zwracamy wartość cosinusa hiperbolicznego uzyskanego za pomocą sumy ciągu
- }
- int silnia(int z)//funkcja korzysta ze zmiennej typu int, dla której liczymy wartość silni
- {
- int silnia=1; //zmienna do której przypisana zostanie wartość silni
- for(int i=1;i<=z;i++)//pętla zrobi liczbę przejść równą wartości liczby od której liczymy silnię
- {
- silnia*=i; //zmiana wartości zmiennej "silnia"
- }
- return silnia; //zwracamy wartość silni
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement