Different types of programs in different languages are available here...
The best learning method is discussing Questions and Answers...
To learn something new and to understand something more...