Найти сумму ряда с помощью рекуррентного выражения - C (СИ)

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

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

Здравствуйте. Нужно найти сумму ряда с помощью рекуррентного выражения.Можете,пожалуйста,проверить правильность кода.
#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
   int n=0;
   float a,s,x=2;
   double e=1e-4;
   clrscr();
   a=x;
   s=a;
   while(a>e)
   {
      a*=(x/(n+1));
      s+=a;
      n++;
   }
   printf(" \n s=%.5f,kolichestvo elementov=%d",s,n-1);
   getch();
   return 0;
}
или n++ нужно в начале цикла ставить?

Решение задачи: «Найти сумму ряда с помощью рекуррентного выражения»

textual
Листинг программы
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
int main()
{
    int n=0;
    float a,s,x=2;
    double e=1e-4;
    a=x;
    s=a;
    printf("n = %d: a = %f, s = %f\n", n, a, s);
    n++;
    while(a>e)
    {
        a*=(x/(n+1));
        s+=a;
        printf("n = %d: a = %f, s = %f\n", n, a, s);
        n++;
    }
    printf(" \n s=%.5f,kolichestvo elementov=%d",s,n-1);
    getch();
    return 0;
}

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

В этом коде выполняется вычисление суммы ряда, используя рекуррентное соотношение. Вот список действий, которые выполняются в коде:

  1. В начале программы определяются переменные:
    • n - счетчик итераций
    • a - текущий член ряда
    • s - накопитель суммы
    • x - первый член ряда
    • e - погрешность вычислений (для контроля условия выхода из цикла)
    • printf используется для вывода значений переменных в консоль
  2. Переменная a инициализируется значением x, а переменная s инициализируется значением a.
  3. Выводится сообщение с начальными значениями n, a и s.
  4. Условие цикла while проверяет, является ли текущий член ряда больше погрешности вычислений. Если это так, то выполняются следующие действия:
    • a умножается на (x/(n+1)) (рекуррентное соотношение)
    • s увеличивается на a
    • Выводится сообщение с текущими значениями n, a и s.
    • n увеличивается на 1
  5. Когда условие цикла while становится ложным (то есть, когда текущий член ряда становится меньше погрешности вычислений), цикл завершается.
  6. Выводится сообщение с окончательным значением s и количеством итераций (n-1), которое использовалось для вычисления суммы.
  7. Программа завершается вызовом функции getch(), которая ожидает нажатия клавиши, чтобы пользователь мог увидеть результаты.
  8. Возвращается 0, чтобы указать, что программа успешно завершилась.

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

6   голосов , оценка 4 из 5