В академическом программировании уместнее конечно рекурсия, так как код получается красивее и местами понятнее.
Но при практическом программировании рекурсии на мой взгляд места почти нет, так как местами сложно отлаживать и + проблемы со стеком.
Поучаствуйте в каких нибудь сетевых олимпиадах по программированию, очень забавно и интересно бывает, когда в универе учился заставлял всю комнату участвовать.