Посчитать сумму ряда в заданном диапазоне - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Ребята, знаю, что всё изично, но скажите, где я неправильно написал. Вот код:
#include<stdio.h>
#include<math.h>
#include<locale.h>
int main(){
setlocale(LC_ALL,".1251");
double rad,Xn,Xk,Dx,sum=0,x,ch,eps=pow(10,-4);
int i;
printf("Требуется подсчитать сумма ряда в пределах от -PI до PI\n");
Xn=-M_PI, Xk=M_PI;
printf("Введите шаг Dx:");
scanf("%lf",&Dx);
if(Dx>=0){
for(x=Xn;x<Xk;x+=Dx){
rad=x*M_PI/180;
for(i=1;fabs(ch)>eps;++i){
ch=pow(-1,i+1)*cos(i*rad)/pow(i,2);
sum+=ch;}
printf("При значении x, равном %lf, сумма ряда равна: %lf\n",x,sum);
sum=0;}}
else{printf("Шаг должен быть положительным");}

}

Решение задачи: «Посчитать сумму ряда в заданном диапазоне»

textual
Листинг программы
#include<stdio.h>
#include<math.h>
#include<locale.h>
int main(){
setlocale(LC_ALL,".1251");
double rad,Xn,Xk,Dx,sum=0,x,ch,eps=10E-4,y=1;
int i;
printf("Требуется подсчитать сумму ряда в пределах от -PI до PI\n");
Xn=-180, Xk=180;
printf("Введите шаг Dx:");
scanf("%lf",&Dx);
if(Dx>=0){
for(x=Xn;x<=Xk;x+=Dx){
rad=x*M_PI/180;
ch=y;
for(i=1;fabs(ch)>eps;++i){
ch=pow(-1,i+1)*cos(i*rad)/pow(i,2);
sum+=ch;}
printf("При значении x, равном %lf, сумма ряда равна: %lf\n",x,sum);
sum=0;}}
else{printf("Шаг должен быть положительным");}}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с числами с плавающей точкой и для работы с локалью.
  2. Установка локали на русскую.
  3. Объявление переменных: радиана (rad), аргументы функции (Xn, Xk), шаг (Dx), сумма ряда (sum), текущее значение x, переменная для контроля точности (ch), число Пи (M_PI), число Эйлера (e).
  4. Вывод сообщения о том, что требуется подсчитать сумму ряда в пределах от -PI до PI.
  5. Установка начального и конечного значений для переменной x.
  6. Ввод шага Dx с клавиатуры.
  7. Проверка на положительность шага Dx.
  8. Инициализация переменной i.
  9. Цикл по переменной x от Xn до Xk с шагом Dx.
  10. Преобразование значения x из градусов в радианы.
  11. Инициализация переменной ch значением y.
  12. Цикл по переменной i от 1 до бесконечности с условием на точность вычислений.
  13. Вычисление значения ch с помощью формулы ряда.
  14. Добавление значения ch к сумме ряда.
  15. Вывод сообщения о значении x и сумме ряда.
  16. Обнуление суммы ряда перед следующим шагом.
  17. Проверка на точность вычислений.
  18. Если шаг Dx отрицательный, то выводится сообщение об ошибке.
  19. Если шаг Dx положительный, то выполняется цикл по переменной x от Xn до Xk с шагом Dx.
  20. Вывод сообщения о том, что подсчет суммы ряда в указанном диапазоне завершен.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5
Похожие ответы