Logic Building
def count_vc(s, index=0, vowels=0, consonants=0):
# Base case
if index >= len(s):
return vowels, consonants
# Check current character
char = s[index].lower()
if char.isalpha():
if char in 'aeiou':
vowels += 1
else:
consonants += 1
# Recurse
return count_vc(s, index + 1, vowels, consonants)
# Test
text = input("Enter a string: ")
v, c = count_vc(text)
print(f"Vowels: {v}, Consonants: {c}")Output
Enter a string: Hello Vowels: 2, Consonants: 3
Track vowels and consonants with parameters.
Key Concepts:
- Use accumulator parameters
- Check if character is vowel or consonant
- Update counts and recurse