
Problem :
Total Number of Even and Odd Elements in an Array – Using Recursion
% ব্যবহারint countEven(int arr[], int n, int index) {
if(index == n) // Base case
return 0;
if(arr[index] % 2 == 0)
return 1 + countEven(arr, n, index + 1); // Recursive call
else
return countEven(arr, n, index + 1); // Recursive call
}
int countOdd(int arr[], int n, int index) {
if(index == n) // Base case
return 0;
if(arr[index] % 2 != 0)
return 1 + countOdd(arr, n, index + 1); // Recursive call
else
return countOdd(arr, n, index + 1); // Recursive call
}
scanf("%d", &n);for(i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
evenCount = countEven(arr, n, 0);
oddCount = countOdd(arr, n, 0);
#include <stdio.h>
// Function to count even elements using recursion
int countEven(int arr[], int n, int index) {
if(index == n)
return 0;
if(arr[index] % 2 == 0)
return 1 + countEven(arr, n, index + 1);
else
return countEven(arr, n, index + 1);
}
// Function to count odd elements using recursion
int countOdd(int arr[], int n, int index) {
if(index == n)
return 0;
if(arr[index] % 2 != 0)
return 1 + countOdd(arr, n, index + 1);
else
return countOdd(arr, n, index + 1);
}
int main() {
int n, i, evenCount, oddCount;
printf("Enter the number of elements: ");
scanf("%d", &n);
int arr[n];
printf("Enter the elements:\n");
for(i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
evenCount = countEven(arr, n, 0);
oddCount = countOdd(arr, n, 0);
printf("\nTotal even elements: %d", evenCount);
printf("\nTotal odd elements: %d", oddCount);
return 0;
}
Enter the number of elements: 6
Enter the elements:
2 5 8 7 10 3
Total even elements: 3
Total odd elements: 3
Enter the number of elements: 5
Enter the elements:
1 3 5 7 9
Total even elements: 0
Total odd elements: 5