Proc42. Описать функцию Cos1(x, $$\epsilon$$) вещественного типа (параметры x, $$\epsilon$$ — вещественные, $$\epsilon > 0$$), находящую приближенное значение функции cos(x): $$cos(x) = 1 — x^2/(2!) + x^4/(4!) — … + (-1)^n*x^{2*n}/((2*n)!) + …$$ . В сумме учитывать все слагаемые, модуль которых больше ?. С помощью Cos1 найти приближенное значение косинуса для данного $$x$$ при шести данных $$\epsilon$$.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#include <stdio.h> #include <math.h> float cos1(float x, float e){ float cos1_n=1,rez=0; int i=0; while (fabs(cos1_n)>e){ rez+=cos1_n; ++i; cos1_n*=-x*x/((2*i-1)*(2*i)); } return rez; } int main(void) { float x,e; printf("X:"); scanf("%f", &x); int i; for(i=1;i<=6;++i){ printf("E: "); scanf("%f", &e); printf("Cos: %f\n",cos1(x,e)); } return 0; } |
Другие задачи из раздела Proc можно посмотреть здесь.
Комментарии: