comment append la sum des nombres pairs et impairs d’un tableau

J’essaie d’obtenir la sum des nombres pairs d’un tableau récursif et la sum d’un nombre impair, puis d’append les deux sums ensemble. J’essaie de parcourir les tableaux de manière à obtenir les nombres pairs, mais cela renvoie le premier index. S’il vous plaît aider et merci d’avance ..

mon objective est de prendre dans le tableau 2,1,5,9,8,4 prendre l’index pair et l’append aux index impairs. a [0] = 2, a [1] = 1, a [2] = 5, a [3] = 9, a [4] = 8, a [5] = 4. donc il faudrait (2 + 5 + 8) – (1 + 9 + 4) = 1

c’est ce que j’ai eu jusqu’à présent, je ne suis pas familier avec récursif, donc mon code peut être éteint

int calc(int *a, int size) { if(size==1 || size==0) return a[0]; for(int i=0; ia[size-1]) return m; } } for(int j=0; j<size; j++){ if(j%2!=0); int sum_j = a[j]; return sum_j; } int sum = a[i] - a[j]; int e = calc(a, size-1); if(e%2==0) return e=e+0; //return even return sum; } int main( ) { int a[6]={1,2,3,5,6,2}; int size = 6; cout<< calc(a, size)<<endl; system("pause"); return 0; } 

Vous n’avez pas besoin de récursion pour cela?

 // calc(): returns sum(a[0], a[2], a[4], ...) - sum(a[1], a[3], a[5], ...) int calc(int *a, int size) { int sum_even_pos = 0; int sum_odd_pos = 0; for (int i = 0; i < size; i++) { sum_even_pos += a[i]; if (++i < size) sum_odd_pos += a[i]; } return sum_even_pos - sum_odd_pos; } 

http://codepad.org/DVx0sgg1