### LANGUAGE: C++

### CHALLENGE:

Write a loop that reads positive integers from standard input and that terminates when it reads an integer that is not positive. After the loop terminates , it prints out the sum of all the even integers read and the sum of all the odd integers read. Declare any variables that are needed.

### SOLUTION:

int odd=0; int even=0; int i=1; while (i>0){ cin >> i; if ((i % 2)==0 && (i>0)){ even+=i; } if ((i % 2)!=0 && (i>0)){ odd+=i; } } cout << even << " " << odd;

If this program does not work, try replacing:

cout << even << " " << odd;

with

cout << even << "" << endl;

THIS IS THE CODE FOR C:

int even=0;

int i=1;

while (i>0){

scanf(“%d”,&i);

if ((i % 2)==0 && (i>0)){

even+=i;

}

}

printf(“%d”,even);

int num = 1;

int sumE = 0;

int sumO = 0;

int sumECounter = 0;

int sumOCounter = 0;

while (num > 0){

cin >> num;

if ((num%2 == 0) && (num>0)){

sumE += num;

sumECounter++;

}

if ((num%2 != 0) && (num>0)){

sumO += num;

sumOCounter++;

}

}

cout << sumE << " " << sumO << " " << sumECounter << " " << sumOCounter << endl;

This works ladies…

int odd=0;

int even=0;

int sumOdd=0;

int sumEven = 0;

int i=1;

while (i>0){

cin >> i;

if ((i % 2)==0 && (i>0)){

sumEven += i;

even++;

}

if ((i % 2)!=0 && (i>0)){

sumOdd += i;

odd++;

}

}

cout << sumEven << " " << sumOdd << " " << even << " " << odd;