Authorization

#include "stdio.h"/*подключение заголовочных файлов*/
#include "conio.h"
#include "stdlib.h"
#include "math.h"

double factr(int n){/*функция вычисления факториала*/
int t;
double answer;/*переменная факториала*/
answer=1;
for (t=1;t< =n;t++)/*цикл вычисления*/
 answer*=t;
//if (n==0) return 1;
//answer=factr(n-1)*n;/*рекурсивный вызов*/
return answer;/*возврат значения*/
}

double calc(int N,int x){/*функция вычисления суммы N слагаемых*/
double sum=1,XSum=1;
unsigned int q,num=3;
int sign=-1;
for (q=0,XSum=1;q< N;q++,num+=2,sign*=-1)
 sum+=sign*((XSum*=x*x)/factr(num));/*цикл вычисления суммы N слагаемых*/
return sum;/*возврат суммы*/
}

void main(){
int x,N;
double sum,sinX;
printf("\nVvedi znachenie X:\n");
scanf(" %u",&x);/*запрос на ввод x*/
printf("\nVvedi znachenie N:\n");
scanf(" %u",&N);/*запрос на ввод N*/
sum=calc(N,x);/*вызов вычисляющей функции*/
sinX=sum*x;/*значение синуса по формуле*/
printf("Pogreshnost vichisleniya:\n");
printf("1) sin(x)= %1.11f\n",sinX);/*первое значение синуса*/
sinX=sin(x);/*значение синуса по библиотечной функции*/
printf("2) sin(x)= %1.11f\n",sinX);/*второе значение синуса*/
getch();/*ожидание нажатия клавиши*/
return;/*завершение работы*/
}