백화점

/*

Problem 2


Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.


피보나치 시퀀스의 각 새로운 용어는 앞의 두 용어를 추가하여 생성됩니다. 1과 2로 시작하면 처음 10 개의 조건이됩니다.

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

값이 4 백만을 초과하지 않는 피보나치 시퀀스의 항을 고려함으로써 짝수 값항의 합을 구하십시오.


*/


#include <iostream>

#define MAX 32

using namespace std;


void getFibo(int *arr);

void getEven(int *intputarr, int *outputarr);



void main()

{

int fibonacci[MAX];

int evenarr[MAX];

int res = 0;


getFibo(fibonacci);

getEven(fibonacci, evenarr);


for (int i = 0; i < MAX; i++)

{

res += evenarr[i];

}

cout << res;

}


void getFibo(int *fibonacci) // 피보나치 수열을 구하는 함수

{

fibonacci[0] = 1;

fibonacci[1] = 2;


for (int i = 2; i < MAX; i++)

{

fibonacci[i] = fibonacci[i-1] + fibonacci[i-2];

}

}


void getEven(int *inputarr, int *outputarr) // 짝수항의 값을 구하는 함수

{

for (int i = 0; i < MAX; i++)

{

if ((inputarr[i] % 2) == 0)

{

outputarr[i] = inputarr[i];

}

else

{

outputarr[i] = 0;

}

cout << outputarr[i] << endl;

}

}

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading