The document provides 20 programming problems and their solutions. Some of the key problems include: writing programs to calculate factorial using recursion, determine if a number is even or odd, swap two numbers using temporary/bitwise operators, find greatest of 3/10 numbers, check if a number is prime/palindromic, and check if a string is a palindrome. The solutions provide sample code snippets and explanations with examples to illustrate the logic.