// ©2015 Patryk Grądys // Funkcje trygonometryczne na przedziale z zadanym rastrem #include#include #include int main () { int i; double x, wynik; wynik = 0.0; double eps = 0.0000001; FILE *pFile; pFile = fopen ("prog2.txt", "wt"); fseek(pFile, 0, SEEK_SET); printf(" i \t x \t wynik \n\n"); for(i=0; i<=100; i++) { //ustawiamy 100 wartosci x = 2.0*i/100.0-1.0; //przeskalowanie // bezpiecznik na wypadek dzielenia przez zero, if(fabs(x) < eps) { wynik = 999999.0; //wowczas wynik = 999999.0 (zeby byl latwo rozroznialny) } else { //sin^2(x) = (1-cos(2*x))/2 // z tozsamosci trygonometrycznej // Przeksztalcam wzor funkcji na jezyk C: wynik = ((1-cos(2.0*x))/2.0) / (sqrt(1.0-cos(2.0*x))); } // wyswietlanie wynikow z przedzialu <-1 data-blogger-escaped-1=""> if (i <= 100) { printf( "%4d %8.4f %8.4f \n", i, x, wynik); fprintf(pFile, "%4d %8.4f %8.4f \n", i, x, wynik); } // co prawda w zadaniu jest mowa o odczycie tylko z dysku, // ale wyswietlam pogladowo, zeby sprawdzic czy aby na pewno // wlasciwie wartosci znajduja sie w pliku } fclose( pFile); printf("\n Dane wyswietlane z pliku \n"); // Wyswietlanie danych z pliku pFile = fopen ("prog2.txt", "rt"); fseek(pFile, 0, SEEK_SET); int k; float y, fwynik; for(i = 0; i<=100; i++) { //wyswietlam 100 wartosci z pliku fscanf(pFile, "%d %f %f \n", &k, &y, &fwynik); printf("%4d %8.4f %8.4f \n", i, y, fwynik); } fclose( pFile); system("PAUSE"); return 0; }