fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. int input;
  5. int reversed = 0;
  6. int reversed_even_ctr = 0;
  7. int reversed_odd_ctr = 0;
  8.  
  9. printf("Input a positive integer: ");
  10. scanf("%d", &input);
  11. int original = input;
  12.  
  13. while (input > 0) {
  14. reversed += input % 10; // Gets the last digit from the input
  15.  
  16. if (reversed % 2 == 0) {
  17. reversed_even_ctr++;
  18. } else {
  19. reversed_odd_ctr++;
  20. }
  21.  
  22. if (input < 10) {
  23. break;
  24. }
  25.  
  26. reversed *= 10; // Append zero to the retrieved last digit
  27. input /= 10;
  28. }
  29.  
  30. printf("\nOriginal Number: %d\n", original);
  31. printf("Reversed Number: %d\n", reversed);
  32. printf("Even digits counter (Reversed): %d\n", reversed_even_ctr);
  33. printf("Odd digits counter (Reversed): %d\n", reversed_odd_ctr);
  34.  
  35. if (reversed % 2 == 0) {
  36. printf("Reversed number is EVEN\n");
  37. } else {
  38. printf("Reversed number is ODD\n");
  39. }
  40. }
Success #stdin #stdout 0s 5308KB
stdin
1
2
10
42
11
stdout
Input a positive integer: 
Original Number: 1
Reversed Number: 1
Even digits counter (Reversed): 0
Odd digits counter (Reversed): 1
Reversed number is ODD