Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда - C (СИ) (70468)

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

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

Для ряда, члены которого вычисляются по формуле, соответствующей Вашему индивидуальному заданию, подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда. Если Вы считаете это необходимым, можете упростить или преобразовать выражение.

Решение задачи: «Подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда»

textual
Листинг программы
#include <stdio.h> 
#include <math.h>
#include <Windows.h>
 
 
int main() {
    double totalSum = 0, a = 1.0, sum_of_10 = 0, eps = 0.000001;
    int n = 0;
 
    while (fabs(a) > eps) {
        a = pow(-1, n) * (1 - (double)pow(2, n) / (pow(2, n) + 1));
        totalSum += a;
        if(n == 10){
            sum_of_10 = totalSum;
        }
        n++;
    }
    printf("The total sum is %.8f\nThe sum of first 10 elements is: %.8f\n", totalSum, sum_of_10);
 
    system("pause");
    return 0;
}

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

В этом коде выполняется вычисление суммы ряда, который создается с помощью формулы, представленной в переменной a. Ряд начинается с 1 и каждый следующий элемент получается путем умножения предыдущего элемента на -1 и вычитания (с округлением вниз до ближайшего целого числа) отношения двух степеней двойки. Вот список действий, которые выполняются в коде:

  1. Объявляются переменные:
    • totalSum - для хранения общей суммы ряда
    • a - для хранения текущего элемента ряда
    • sum_of_10 - для хранения суммы первых 10 элементов ряда
    • eps - для хранения точности вычислений
    • n - для отслеживания номера текущего элемента ряда
  2. Устанавливается начальное значение a равным 1.
  3. Устанавливается начальное значение sum_of_10 равным 0.
  4. Устанавливается начальное значение n равным 0.
  5. Запускается цикл while, который продолжает работу, пока значение a больше заданной точности eps.
  6. Внутри цикла a обновляется в соответствии с формулой ряда.
  7. a добавляется к общей сумме totalSum.
  8. Если n равно 10, то значение sum_of_10 обновляется равным текущей сумме totalSum.
  9. n увеличивается на 1.
  10. По завершении цикла, выводится сообщение с общей суммой ряда и суммой первых 10 элементов ряда.
  11. Запускается функция system(pause), чтобы программа приостановилась до тех пор, пока пользователь не нажмет клавишу.
  12. Возвращается 0, чтобы указать, что программа успешно завершилась.

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

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