#include <stdlib.h>
#include <stdio.h>
#include <stdbool.h>
#define NUMBERS_SIZE 10
typedef bool ( * number_validator) ( int num) ;
bool isEven( int num)
{
return ( num & 1 ) == 0 ;
}
bool isOdd( int num)
{
return ( num & 1 ) != 0 ;
}
void print( const char * title, int * array, int array_size, number_validator isValid)
{
bool first = true ;
for ( int i = 0 ; i < array_size; ++ i)
{
if ( isValid( array[ i] ) )
{
if ( ! first)
{
}
first = false ;
}
}
}
int main( )
{
int numbers[ NUMBERS_SIZE] = { 0 } ;
for ( int i = 0 ; i < NUMBERS_SIZE; i++ )
{
scanf ( "%d" , & numbers
[ i
] ) ; }
print( "Even: " , numbers, NUMBERS_SIZE, isEven) ;
print( " Odd: " , numbers, NUMBERS_SIZE, isOdd) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0ZGJvb2wuaD4KCiNkZWZpbmUgTlVNQkVSU19TSVpFIDEwCgp0eXBlZGVmIGJvb2wgKCpudW1iZXJfdmFsaWRhdG9yKShpbnQgbnVtKTsKCmJvb2wgaXNFdmVuKGludCBudW0pCnsKICAgIHJldHVybiAobnVtICYgMSkgPT0gMDsKfQoKYm9vbCBpc09kZChpbnQgbnVtKQp7CiAgICByZXR1cm4gKG51bSAmIDEpICE9IDA7Cn0KCnZvaWQgcHJpbnQoY29uc3QgY2hhciAqdGl0bGUsIGludCAqYXJyYXksIGludCBhcnJheV9zaXplLCBudW1iZXJfdmFsaWRhdG9yIGlzVmFsaWQpCnsKICAgIHByaW50ZigiJXMiLCB0aXRsZSk7CiAgICBib29sIGZpcnN0ID0gdHJ1ZTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgYXJyYXlfc2l6ZTsgKytpKQogICAgewogICAgICAgIGlmIChpc1ZhbGlkKGFycmF5W2ldKSkKICAgICAgICB7CiAgICAgICAgICAgIGlmICghZmlyc3QpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHByaW50ZigiLCAiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBwcmludGYoIiVkIiwgYXJyYXlbaV0pOwogICAgICAgICAgICBmaXJzdCA9IGZhbHNlOwogICAgICAgIH0KICAgIH0KICAgIHByaW50ZigiXG4iKTsKfQoKaW50IG1haW4oKQp7CiAgICBpbnQgbnVtYmVyc1tOVU1CRVJTX1NJWkVdID0geyAwIH07CgogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBOVU1CRVJTX1NJWkU7IGkrKykKICAgIHsKICAgICAgICBwcmludGYoIkVudGVyIGEgbnVtYmVyOiAiKTsKICAgICAgICBzY2FuZigiJWQiLCAmbnVtYmVyc1tpXSk7CiAgICB9CgogICAgcHJpbnRmKCJcbiIpOwogICAgcHJpbnQoIkV2ZW46ICIsIG51bWJlcnMsIE5VTUJFUlNfU0laRSwgaXNFdmVuKTsKICAgIHByaW50KCIgT2RkOiAiLCBudW1iZXJzLCBOVU1CRVJTX1NJWkUsIGlzT2RkKTsKCiAgICByZXR1cm4gMDsKfQo=
stdout
Enter a number: Enter a number: Enter a number: Enter a number: Enter a number: Enter a number: Enter a number: Enter a number: Enter a number: Enter a number:
Even: 2, 4, 6, 8, 10
Odd: 1, 3, 5, 7, 9