Новичку надо делать скучные учебные задачи из учебника C++. А "интересную программу" имеет смысл делать, когда все основные темы уже изучены. Иначе, вместо того, чтобы изучать возможности языка, ты будешь изобретать говнокодистые велосипеды, имитирующие то, что в языке уже есть, но ты об этом ещё не знаешь.
P.S. Консольную "змейку", и консольную же "жизнь". Или взять книгу "Этюды для программистов" - сборник задач, не привязанный к какому-либо языку.