Введение
В этом лабе мы узнаем, как написать программу на C++, которая вычисляет сумму ряда. Ряд, с которым мы будем работать, представляет собой сумму квадратов обратных натуральных чисел. Проще говоря, программа вычисляет сумму 1 + 1/2^2 + 1/3^3 + 1/4^4 +... + 1/N^N.
Создайте новый файл в директории проекта
Создайте новый файл с именем main.cpp в директории вашего проекта.
touch ~/project/main.cpp
Добавьте необходимые заголовочные файлы
Добавьте необходимые заголовочные файлы в программу. В этой программе нам нужны заголовочные файлы iostream и cmath.
#include<iostream>
#include<cmath>
using namespace std;
Напишите функцию findsum()
В этом шаге мы определим функцию findsum(), которая будет использоваться для вычисления суммы ряда. Эта функция принимает значение N в качестве входных данных и возвращает сумму ряда.
double findsum(int N) {
double sum = 0;
for(int i=1; i<=N; i++) {
sum += pow((double)1/i,i);
}
return sum;
}
В коде выше мы использовали функцию pow() из заголовочного файла <cmath> для вычисления степени каждого члена. Мы также используем тип данных double, чтобы получить точные значения.
Напишите функцию main()
В этом шаге мы напишем функцию main(), которая будет получать ввод от пользователя в виде целого числа N. Затем мы вызовем функцию findsum() для вычисления суммы ряда. Наконец, мы выведем результат.
int main() {
int N;
cout << "Enter the value of N: ";
cin >> N;
double sum = findsum(N);
cout << "Sum of the series is: " << sum << endl;
return 0;
}
Компилируйте и запустите программу
Сохраните внесенные изменения в файл main.cpp и запустите следующую команду в терминале:
g++ main.cpp -o main &&./main
После успешной компиляции и запуска программа попросит пользователя ввести значение N. После ввода значения N программа вернет сумму ряда.
Полный код файла main.cpp
#include <iostream>
#include <cmath>
using namespace std;
double findsum(int N) {
double sum = 0;
for(int i=1; i<=N; i++) {
sum += pow((double)1/i,i);
}
return sum;
}
int main() {
int N;
cout << "Enter the value of N: ";
cin >> N;
double sum = findsum(N);
cout << "Sum of the series is: " << sum << endl;
return 0;
}
Резюме
В этом практическом занятии мы научились писать программу на C++, которая вычисляет сумму ряда. Мы использовали цикл для перебора всех членов и сложили их, чтобы получить сумму ряда. Мы также использовали функцию pow(), чтобы вычислить степень каждого члена.



