Обучение программированию, что делать если застрял?
Писать что-то свое, такой большой и интересный(для тебя) пет прожект. И если что то не идет - временно отвлечься и писать его любимого. Вроде и отвлекся, и вроде как по теме работаешь. Ну и заодно писать учишься, ошибки свои решаешь, а это гораздо более мотивированно чем абстрактные задачи решать. Даблкилл.
Есть один хитрый способ, как это дело частично преодолеть. Решай задачу интересным для тебя способом.