Este es el segundo de los problemas planteados en la web de “Project Euler”, el enunciado traducido es el siguiente:
Cada nuevo término en la secuencia de Fibonacci es generado sumando los dos términos previos. Comenzando con el 1 y el 2, los 10 siguientes términos son:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …
Considerando los términos de la secuencia de Fibonacci cuyo valor no excede los 4 millones, encuentra la suma de todos los términos pares.
La solución a este problema que planteo en C++ es:
#include <iostream> using namespace std; void main() { int n = 0; int m = 1; int aux = 0; int sum = 0; while ( aux < 4000000) { aux = n + m; if(aux % 2 == 0) { cout << "sumando: " << aux << endl; sum += aux; } n = m; m = aux; } cout << "Sum: " << sum << endl; system("pause"); }