So here i am trying to teach my friend the art of C++. He is no newbie to programming, but his area of expertise is somewhat further away from C++. He knows html, php and java fairly well, but it seems this is of no use when it comes to writing a C++ program. We already went through the basics, talked about pointers and such. He even had a course at his university about C++ but he gave up halfway through. It seems that he really understands basic theory - the problem is he fails when it comes to actually using what he knows to write programs.
So what i'm trying to do now is to give him homeworks. The task is always to write a small program, such as a primitive calculator (input two numbers and a letter which determines operation that should be performed...) etc. The idea behind this is to force him to actually use the language to solve problems, debug it and see why it fails and learn from it. But it seems it does not work, since every time i try to make it harder and give him a more complex homework, he is not able to solve it. What should I do now? I'm really running out on ideas of homeworks and i have doubts that this approach is good. Moreover, new semester starts just right now and he has to pass the C++ course this time. So there is even a deadline - the end of this year.
SO, can you help here?