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

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

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

Добрый день. Помогите с программкой. Есть задание: Для ряда, члены которого вычисляются по формуле, подсчитать: • сумму всех членов ряда; • сумму первых 10 членов ряда; • произведение последних 10 членов ряда. только при помощи операторов while, do-while, for и библиотек stdio.h и math.h

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

textual
Листинг программы
#include "math.h"
#include <stdio.h>
#include <iostream>
#include "windows.h"
 
using namespace std;
 
int main(){
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int count;
    double *store;
    double sum=0;
    double mult=1;
    cout<< "Введите количество членов последовательности "<< endl;
    cin>> count;
    store= new double[count]; //выделение памяти под ряд
    for (int i = 0; i < count; i++) {
        store[i]=pow(-1,i)*pow(2,i+1)/(pow(2,2*i)+1);
    }
    for (int i = 0; i < count; i++) {
        sum+=store[i];
    }
    cout<< endl << "Cумма ряда = " << sum <<endl;
    if (count>=10) {
      sum=0;
      for (int i = 0; i < 10; i++) {
        sum+=store[i];
      }
      cout<< endl << "Cумма 10 первых членов ряда = " << sum <<endl;
      int j=0;
      for (int i = count-1;  j <= 10; j++) {
        mult*=store[i-j];
      }
      cout<< endl << "Произведение 10 последних членов ряда = " << mult <<endl;
    }
    system("pause");
}

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

В этом коде:

  1. #include math.h - подключает математическую библиотеку, которая содержит функции для работы с числами с плавающей точкой.
  2. #include - подключает библиотеку для работы с стандартным вводом/выводом.
  3. #include - подключает библиотеку для работы с потоками ввода/вывода в стандартной библиотеке C++.
  4. #include windows.h - подключает библиотеку Windows API (Application Programming Interface), которая позволяет программисту взаимодействовать с операционной системой Windows.
  5. using namespace std; - позволяет использовать стандартное пространство имен std, которое содержит функции и классы стандартной библиотеки C++.
  6. int main(){ - функция main(), в которой происходит основная логика программы.
  7. SetConsoleCP(1251); - устанавливает кодировку консоли на UTF-8.
  8. SetConsoleOutputCP(1251); - устанавливает кодировку вывода на UTF-8.
  9. int count; - переменная для хранения количества членов последовательности.
  10. *double store;** - переменная для хранения массива (ряда) чисел с плавающей точкой.
  11. double sum=0; - переменная для хранения суммы всех членов последовательности.
  12. double mult=1; - переменная для хранения произведения всех членов последовательности.
  13. cout<< Введите количество членов последовательности<< endl; - вывод сообщения с просьбой ввести количество членов последовательности.
  14. cin>> count; - ввод количества членов последовательности с помощью функции cin().
  15. store= new double[count]; //выделение памяти под ряд - выделение памяти под массив (ряд) чисел с плавающей точкой.
  16. for (int i = 0; i < count; i++) { - начало цикла для заполнения массива.
  17. store[i]=pow(-1,i)pow(2,i+1)/(pow(2,2i)+1); - формула для вычисления значения i-го члена последовательности.
  18. for (int i = 0; i < count; i++) { - начало цикла для вычисления суммы всех членов последовательности.
  19. sum+=store[i]; - вычисление суммы текущего члена последовательности и общего значения суммы.
  20. cout<< endl << Cумма ряда = << sum <<endl; - вывод суммы ряда.
  21. if (count>=10) { - проверка, что количество членов последовательности больше или равно 10.
  22. sum=0; - обнуление суммы.
  23. for (int i = 0; i < 10; i++) { - начало цикла для вычисления суммы первых 10 членов последовательности.
  24. sum+=store[i]; - вычисление суммы текущего члена последовательности и общего значения суммы.
  25. cout<< endl << Cумма 10 первых членов ряда = << sum <<endl; - вывод суммы первых 10 членов последовательности.
  26. int j=0; - переменная для хранения индекса текущего члена последовательности, используемого для вычисления произведения.
  27. for (int i = count-1; j <= 10; j++) { - начало цикла для вычисления произведения последних 10 членов последовательности.
  28. *mult=store[i-j];** - вычисление произведения текущего члена последовательности и общего значения произведения.
  29. cout<< endl << Произведение 10 последних членов ряда = << mult <<endl; - вывод произведения последних 10 членов последовательности.
  30. system(pause); - пауза перед завершением программы, чтобы пользователь мог увидеть результат.

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


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

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

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