Вычислить с помощью рядов тейлора значение функции косинус х - C (СИ)
Формулировка задачи:
Добрый вечер. Задание: вычислить с помощью рядов тейлора значение функции косинус х. Написал программу, но после ввода значений с клавиатуры ничего не происходит. Помогите ...
#include<stdio.h> #include<conio.h> void main() { int k=1; double x,d,s,e, q; printf("x="); scanf("%lf", &x); printf("e="); scanf("%lf", &e); printf("cos(%lf)=", x); while(x>31.416) x=x-31.416; while(x<-31.416) x=x+31.416; s=1; d=1; q=1; while(d>e); { k=k+1; d=d*x*x/((2*k*-1)*(2*k)); s=s+d; } printf("%lf", s); getch(); }
Решение задачи: «Вычислить с помощью рядов тейлора значение функции косинус х»
textual
Листинг программы
#include <stdio.h> #include <math.h> int main(int args, char *argv[]) { int k = 0; double x, e, d, s; printf("x = "); scanf("%lf", &x); printf("e = "); scanf("%lf", &e); printf("cos(%lf) = ", x); while (31.416 < x) { x = x - 31.416; } while (x < -31.416) { x = x + 31.416; } s = 1; d = 1; while (e < fabs(d)) { k = k + 1; d = (-d) * x * x / ((2 * k - 1) * (2 * k)); s = s + d; } printf("%lf\n", s); return 0; }
Объяснение кода листинга программы
В этом коде выполняется вычисление значения функции косинус х с помощью рядов тейлора. Вот список действий, которые выполняются в коде:
- Объявляются переменные:
- k (номер строки 2, значение 0)
- x (номер строки 3, значение не определено)
- e (номер строки 4, значение не определено)
- d (номер строки 5, значение 1)
- s (номер строки 6, значение 0)
- Пользователю предлагается ввести значение переменной x:
- Выводится сообщение
x =
- Пользователь вводит значение x с клавиатуры
- Значение x сохраняется в переменной x
- Выводится сообщение
- Пользователю предлагается ввести значение переменной e:
- Выводится сообщение
e =
- Пользователь вводит значение e с клавиатуры
- Значение e сохраняется в переменной e
- Выводится сообщение
- Вычисляется значение функции косинус х:
- Выводится сообщение
cos(%lf) =
, x - Переменная x принимает значение 0
- Выводится сообщение
- Переменная x изменяется в цикле, пока ее значение больше 31.416:
- Цикл выполняется до тех пор, пока 31.416 < x
- Если условие истинно, переменная x уменьшается на 31.416
- Переменная x изменяется в цикле, пока ее значение меньше -31.416:
- Цикл выполняется до тех пор, пока x < -31.416
- Если условие истинно, переменная x увеличивается на 31.416
- Переменные s и d инициализируются значением 1:
- Значение переменной s устанавливается равным 1
- Значение переменной d устанавливается равным 1
- Переменная e сравнивается с модулем значения переменной d в цикле, пока e < fabs(d):
- Цикл выполняется до тех пор, пока условие истинно
- Если условие истинно, переменная k увеличивается на 1
- Значение переменной d обновляется в соответствии с формулой ряда Тейлора
- Значение переменной s обновляется путем добавления значения переменной d
- Вычисляется окончательное значение переменной s:
- Значение переменной s выводится на экран
- Программа завершается:
- Возвращается значение 0, указывающее на успешное выполнение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д