Advertisement
InnaSibirova

Vlad sinus

Dec 20th, 2021
934
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.44 KB | None | 0 0
  1. /*
  2. В данной программе сначала пользователь вводит значение EPS и значение x. После проверки EPS на корректность начинаем считать
  3. значение ряда с точностью до EPS (для этого в цикле while вкладываем цикл for, который высчитывает факториал при n (до 2n - 1),
  4. каждый раз меняя ряд при определенном n. После завершения цикла выводим значение стандартной функции sin, и значение найденного
  5. ряда.
  6. */
  7. #include <stdio.h> // подключаем библиотеки ввода и вывода и библиотеку математических функций
  8. #include <math.h>
  9.  
  10. int main()
  11. {
  12.     float e, s, row, n = 1,  x, fact;  // задаем переменные типа float: e - EPS, s - sin, row - значение ряда, fact - переменная для хранение значения факториала n
  13.     printf("enter EPS \n"); // просим пользователя ввести EPS
  14.     scanf("%f", &e);    // вводим значение EPS
  15.     printf("enter x \n"); // просим пользователя ввести x
  16.     scanf("%f", &x);    // вводим значение x    
  17.                
  18.     if(fabs(e) > 1) {   // проверяем корректность EPS
  19.         printf("uncorrect |EPS|");
  20.     }
  21.    
  22.     else {
  23.         s = sin(x);    // заносим в s значение стандартной функции sin
  24.         row = x;       // заносим в row значение ряда, при n = 1
  25.         while(fabs(s - row) > fabs(e)) {  // высчитываем значение ряда до нужного EPS
  26.             n += 1; // увеличиваем n
  27.             fact = 1; // делаем fact равной единице
  28.             for(int i = 2*n - 1; i > 0; i -= 1) { // считаем факториал
  29.                 fact *= i;
  30.             }
  31.             row = row + pow(-1, n-1) * pow(x, 2*n-1)/fact; // считаем значение ряда
  32.         }
  33.         printf("sin = %f row = %f", s, row); // после нахождения ряда, с точностью до EPS, выводим значение стандартной функции и значение ряда
  34.     }
  35.     return 0;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement