Some more advanced use of iteration and recusion. Might change your mind about which approach is better!