Введение
В этом практическом занятии мы научимся писать программу на C++, которая находит сумму ряда 1^2 + 3^2 + 5^2 +... + n^2 двумя разными методами. Мы проведем вас по шагам, чтобы помочь вам понять процесс.
Создайте новый файл на C++
Во - первых, нам нужно создать новый файл на C++. Откройте терминал и перейдите в директорию ~/project. Здесь мы создадим новый файл с именем main.cpp.
cd ~/project
touch main.cpp
Напишите код с использованием первого метода
Здесь мы напишем программу с использованием первого метода. В этом методе мы будем использовать цикл for для перебора нечетных чисел до n и добавлять их квадраты в переменную sum.
#include<iostream>
using namespace std;
int pattern_sum(int n){
int sum=0;
for(int i=1;i<=n;i+=2){
sum+=(i*i);
}
return sum;
}
int main(){
int num;
cout<<"Enter the number of terms you want: ";
cin>>num;
cout<<"The sum of the series is: "<<pattern_sum(num)<<endl;
return 0;
}
Пояснение к коду:
- Во - первых, мы включаем необходимые заголовочные файлы.
- Затем мы пишем функцию под названием
pattern_sum, которая принимает целое числоnв качестве входных данных и возвращает сумму ряда. - Внутри функции мы инициализируем переменную
sumзначением 0. - Мы используем цикл for, начиная от 1 до n с шагом 2, чтобы получить нечетные числа, и добавляем их квадраты в переменную sum.
- Наконец, мы возвращаем сумму.
- В функции
main()мы просим пользователя ввести количество членов, которое они хотят, и сохраняем значение в переменнойnum. - Мы выводим сумму ряда, вызвав функцию
pattern_sum()с вводом пользователя.
Напишите код с использованием второго метода
Здесь мы напишем программу с использованием второго метода. В этом методе мы используем математическую формулу для нахождения суммы ряда.
#include<iostream>
using namespace std;
int pattern_sum(int n){
int sum;
sum = ( ((2 * n) - 1) * (((2 * n) - 1)+ 1) * ( ( 2 * ((2 * n) - 1) ) + 1 ) ) / 6;
return sum;
}
int main(){
int num;
cout<<"Enter the number of terms you want: ";
cin>>num;
cout<<"The sum of the series is: "<<pattern_sum(num)<<endl;
return 0;
}
Пояснение к коду:
- Во - первых, мы включаем необходимые заголовочные файлы.
- Затем мы пишем функцию под названием
pattern_sum, которая принимает целое числоnв качестве входных данных и возвращает сумму ряда. - Внутри функции мы используем математическую формулу для нахождения суммы ряда и сохраняем ее в переменной
sum. - Наконец, мы возвращаем сумму.
- В функции
main()мы просим пользователя ввести количество членов, которое они хотят, и сохраняем значение в переменнойnum. - Мы выводим сумму ряда, вызвав функцию
pattern_sum()с вводом пользователя.
Полный код для main.cpp
Вот полный код для main.cpp, использующий второй метод для нахождения суммы ряда:
#include<iostream>
using namespace std;
int pattern_sum(int n){
int sum;
sum = ( ((2 * n) - 1) * (((2 * n) - 1)+ 1) * ( ( 2 * ((2 * n) - 1) ) + 1 ) ) / 6;
return sum;
}
int main(){
int num;
cout<<"Enter the number of terms you want: ";
cin>>num;
cout<<"The sum of the series is: "<<pattern_sum(num)<<endl;
return 0;
}
Резюме
В этом практическом занятии мы научились находить сумму ряда 1^2 + 3^2 + 5^2 +... + n^2 двумя разными методами: с использованием цикла for и с использованием математической формулы. Мы также рассмотрели, как написать программу на C++ для решения этой задачи. Теперь вы должны четко понимать, как найти сумму ряда с использованием C++.



