36 lines
1.1 KiB
C
36 lines
1.1 KiB
C
#include "General.h"
|
|
|
|
//---------------------------------------------------------------------------------------
|
|
// DiffEvenSumToOddSum
|
|
// -------------------
|
|
//
|
|
// General : Checks the difference between the number of odd digits and the
|
|
// odd number.
|
|
//
|
|
// Parameters :
|
|
// num - a number (int)
|
|
//
|
|
// Return value : The difference between the number of odd digits and the
|
|
// odd number. (unsigned short).
|
|
//
|
|
//---------------------------------------------------------------------------------------
|
|
// Programmer : Cohen Idan
|
|
// Student No : 211675038
|
|
// Date : 30.12.2019
|
|
//---------------------------------------------------------------------------------------
|
|
short DiffEvenSumToOddSum(int num)
|
|
{
|
|
int digit;
|
|
if (num < TEN)
|
|
return ((num % TWO) ? num : -num);
|
|
else
|
|
{
|
|
digit = num % TEN;
|
|
return (DiffEvenSumToOddSum(num / TEN) + ((digit % TWO) ? digit : -digit));
|
|
}
|
|
}
|
|
|
|
void main(void)
|
|
{
|
|
printf("%hd\n", DiffEvenSumToOddSum(12345));
|
|
} |