Calcular la suma de cuadrados en C++

C++Beginner
Practicar Ahora

Introducción

En este laboratorio, aprenderemos cómo escribir un programa en C++ para encontrar la suma de la serie 1^2 + 3^2 + 5^2 +... + n^2 utilizando dos enfoques diferentes. Lo guiaremos paso a paso para ayudarlo a entender el proceso.

Crea un nuevo archivo de C++

Primero, necesitamos crear un nuevo archivo de C++. Abre la terminal y navega hasta el directorio ~/proyecto. Aquí, crearemos un nuevo archivo llamado main.cpp.

cd ~/proyecto
touch main.cpp

Escribe código usando el primer método

Aquí, escribiremos el programa utilizando el primer método. En este método, usaremos un bucle for para iterar a través de los números impares hasta n y sumar sus cuadrados a la variable 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;
}

Explicación del código:

  • Primero, incluimos los archivos de encabezado necesarios.
  • Luego escribimos una función llamada pattern_sum, que toma un entero n como entrada y devuelve la suma de la serie.
  • Dentro de la función, inicializamos una variable llamada sum a 0.
  • Usamos un bucle for que empieza en 1 hasta n con un paso de 2 para obtener los números impares, y sumamos sus cuadrados a la variable sum.
  • Finalmente, devolvemos la suma.
  • En la función main(), pedimos al usuario que ingrese el número de términos que desea y almacenamos el valor en la variable num.
  • Imprimimos la suma de la serie llamando a la función pattern_sum() con la entrada del usuario.

Escribe código usando el segundo método

Aquí, escribiremos el programa utilizando el segundo método. En este método, usamos la fórmula matemática para encontrar la suma de la serie.

#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;
}

Explicación del código:

  • Primero, incluimos los archivos de encabezado necesarios.
  • Luego escribimos una función llamada pattern_sum, que toma un entero n como entrada y devuelve la suma de la serie.
  • Dentro de la función, usamos la fórmula matemática para encontrar la suma de la serie y la almacenamos en la variable sum.
  • Finalmente, devolvemos la suma.
  • En la función main(), pedimos al usuario que ingrese el número de términos que desea y almacenamos el valor en la variable num.
  • Imprimimos la suma de la serie llamando a la función pattern_sum() con la entrada del usuario.

Código completo para main.cpp

Aquí está el código completo de main.cpp, que utiliza el segundo método para encontrar la suma de la serie:

#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;
}

Resumen

En este laboratorio, aprendimos cómo encontrar la suma de la serie 1^2 + 3^2 + 5^2 +... + n^2 utilizando dos enfoques diferentes: usando un bucle for y usando una fórmula matemática. También cubrimos cómo escribir un programa en C++ para resolver este problema. Ahora deberías tener una comprensión clara de cómo encontrar la suma de la serie utilizando C++.