Сумма бесконечного ряда - C (СИ) (73417)
Формулировка задачи:
Всем привет, помогите, пожалуйста, разобраться, программа вне зависимости от x всегда выводится ноль
В основной программе выводится таблица со значениями x и y
x задается в диапазоне от L левой границы до R правой границы с шагом d
y это сумма бесконечного ряда, которая считается в отдельном файле, функцией, и вычисляется до тех пор, пока каждый последующий член ряда больше либо равен eps, который вводится с клавиатуры...
#include <stdio.h> #include <stdlib.h> #include <windows.h> #include <math.h> // для проверки верности введения шага табулирования int main() { SetConsoleCP(1251); SetConsoleOutputCP(1251); printf("\n \t Программа создана для приближенного вычисления " "\n значения уравнения указанного в задании № 22" "\n в заданном интервале [L;R] и вывода таблицы с шагом d" "\n и точностью eps"); double L, R, d, eps, x, y, ss; printf("\n\t Введите значения L, R, d, eps через пробел: "); scanf("%lf%lf%lf%lf",&L,&R,&d,&eps); if ((d>(fabs(R-L)) || (eps > 1) || (eps < 0))) { printf("\n Ошибка!"); return 0; }; if (L > R) // проверка верности данных { ss = L; //если левая границы больше, то просто поменть правую с левой границы L = R; R = ss; }; x = L; double fff(double L, double R, double d, double eps, double x); printf("|---------------------------------|" "\n| x || y |" "\n|---------------------------------|\n"); while (x <= R) { y = fff(L,R,d,eps,x); printf("| %.2lf || %.2lf |\n",x, y); x += d; }; return 0; }
#include <math.h> double fff(double L, double R, double d, double eps, double x) { double qwerty(double L,double R,double d,double eps, double x); double sum = 0, a1, k; a1 = (-1)/x*x; k = 1; while (a1 >= eps) { sum += a1; a1 = ((a1)*(-1) * x * x )/(k*(k+1)); k++; }; return sum; }
Решение задачи: «Сумма бесконечного ряда»
textual
Листинг программы
while (fabs(a1) >= eps)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д