Introdução
Neste laboratório, aprenderemos como escrever um programa C++ para encontrar a soma da série 1^2 + 3^2 + 5^2 + ... + n^2 usando duas abordagens diferentes. Iremos guiá-lo passo a passo para ajudá-lo a entender o processo.
Criar um novo arquivo C++
Primeiramente, precisamos criar um novo arquivo C++. Abra o terminal e navegue até o diretório ~/project. Aqui, criaremos um novo arquivo chamado main.cpp.
cd ~/project
touch main.cpp
Escrever o código utilizando o primeiro método
Aqui, escreveremos o programa usando o primeiro método. Neste método, usaremos um loop for para iterar pelos números ímpares até n e adicionar seus quadrados à variável 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;
}
Explicação do código:
- Primeiro, incluímos os arquivos de cabeçalho necessários.
- Em seguida, escrevemos uma função chamada
pattern_sum, que recebe um inteironcomo entrada e retorna a soma da série. - Dentro da função, inicializamos uma variável chamada
sumcom 0. - Usamos um loop
forcomeçando de 1 até n com um passo de 2 para obter os números ímpares e adicionamos seus quadrados à variávelsum. - Finalmente, retornamos a soma.
- Na função
main(), pedimos ao usuário para inserir o número de termos desejados e armazenamos o valor na variávelnum. - Imprimimos a soma da série chamando a função
pattern_sum()com a entrada do usuário.
Escrever código utilizando o segundo método
Aqui, escreveremos o programa usando o segundo método. Neste método, usamos a fórmula matemática para encontrar a soma da série.
#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;
}
Explicação do código:
- Primeiro, incluímos os arquivos de cabeçalho necessários.
- Em seguida, escrevemos uma função chamada
pattern_sum, que recebe um inteironcomo entrada e retorna a soma da série. - Dentro da função, usamos a fórmula matemática para encontrar a soma da série e armazená-la na variável
sum. - Finalmente, retornamos a soma.
- Na função
main(), pedimos ao usuário para inserir o número de termos desejados e armazenamos o valor na variávelnum. - Imprimimos a soma da série chamando a função
pattern_sum()com a entrada do usuário.
Código completo para main.cpp
Aqui está o código completo para main.cpp, usando o segundo método para encontrar a soma da série:
#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;
}
Resumo
Neste laboratório, aprendemos como encontrar a soma da série 1^2 + 3^2 + 5^2 + ... + n^2 usando duas abordagens diferentes: usando um loop for e usando uma fórmula matemática. Também abordamos como escrever um programa C++ para resolver este problema. Agora você deve ter uma compreensão clara de como encontrar a soma da série usando C++.



