Who Is This Program For?

For anyone and everyone who wants to learn programming! That’s true, you read that right. If you are someone with a non-tech background and want to develop a career in IT, this program is for you!

Why You Should Enrol For This Program?

Career in technology is the future rather it is very much a need of today’s era where most of us are struggling to make our ends meet in the times of rising inflation coupled with financial and economic downturn. For those who do not have a background in tech, it is getting harder and harder to either find a job that pays well or find projects as a freelancer that give you a significant return in exchange of your time and effort. The answer to these problems lies in learning technology skills and the journey to that begins with getting hands-on with the ‘Fundamentals of Coding’.
Who Is Sarfraz Raza?

Who Is Sarfraz Raza?


Learning how to code was never that easy!

Lecture 1 & 2 - Introduction to C++ (Table Printing) 

Data Type Integers and operators (+, -, /, *, %)

Digits summation problem

If Statement

(Block statements)

If else Statement

if else if .... else

Checking divisibility (Using Modulus % operator)

Compound Statement (AND: && and OR: ||)

Finding maximum out of the 5 numbers:
- Using 5 ifs and 4 conditions in each
- Using 5 ifs then else if .... and with one condition removed
- Using the efficient way of finding max (by maintaining max)

Character Data-Type

- ASCII values
- Capital or small letter

Lecture 3 - Functions and using the power of re-usability

Digit By Digit Display

- Implementation using if then else statement
- Implementation using switch statement

Introducing Functions as Black Box

(Implementing Digits Display as functions and avoiding multiple switch conditions)

Quadrilateral Type

- Using distance function
- and Print Quard Type

Making Menu Based

Lecture 4 - Divide and Conquer (Rock paper scissor game and Stopwatch)

Making Rock Paper Scissor Game

- Introducing getch function
- Winning Condition
- Displaying Game message
- Validating Input from the user
- Introducing replay of the game
- Simplifying input using TOUPPER function

Making Stopwatch

Introducing References (pass by reference in functions)

Memory and References
- Application
- SWAP function
- Divide function

Lecture 5 - Loops and Functions 

The apparatus:

for loop vs while loop

Printing some series
1 2 3 4 5 6 7...
1 3 5 7 ....
1 1 3 6 5 11 7 16 9 21...

Is Compound function

Is Prime function

Triangle Number

- Printing Triangle numbers sequence

Input stream ending with -1

- Read an input stream and tell how many of the numbers were odds/evens???
- Read an input stream and tell the Maximum and Minimum

Fibonacci numbers sequence

- Designing Fib(N) function - which returns the n'th fibonacci number
- Print the Fibonacci numbers sequence between a given range...

Scoping rules in blacks...

Lecture 6 - Loops and Functions II and Shapes Printing

Loops and Functions II

- int Integer Square Root (int N)
- bool Is Perfect Square (int N)
- bool Is Prime (int N) // with loop till sqrt(N)
- void Pythagorian Tripplets (int Range)
- void Find Tripplet Satisfying Equation (int T)
- int Reverse (int N)
- int IsPalindrome(int N)

Shapes Printing

- void Print A Symbol K Times (int K, char Sym)
- void Print Triangle Left Right Angled (int Height, char Sym)
- void Print Triangle Left Right Angled Upside - - Down (int Height, char Sym)
- void Print Triangle Right_Right Angled (int Height, char Sym)
- void Print Triangle Equilateral (int Height, char Sym)
- void Printing Hollow Triangle (int Height, char Sym)

Lecture 7 - Pointers and Arrays

Pointers and Memory

- Writing SWAP function
- Discussion on SCANF of C function

Arrays and its deeper connection with pointers

- Initialization
- Taking list of integers from User
- Its connection with [ ] and pointer based de-referencing.
- Finding Minimum from an array.
- Finding Maximum from an array.
- Finding Min/Max from an array.

Passing Arrays to functions

Init() function - Array Initialization

Initializing in different ways 
0 1 2 3 ....... 
0 1 4 9 ......
0 2 4 6 ...... and so on

Initializing random numbers using rand () function

- seed in random function and time (0)
- using srand (time (0)) function

Initializing with Prime Numbers

Initialization with input ending at -1

- Difference in Capacity and Size of an array

Lecture 8 - Problem Solving with Arrays

Searching In An Array

- Finding first index of a specific element
- Finding last index of a specific element
- Finding index of Kth existence of a specific element
- Finding index of last Kth existence of a specific element

Frequency Based Problems

- Finding frequency of a specific element in an array
- Finding frequency of all elements in an array
- Compute all DISTINCT elements
- Finding MODE of an array
- Finding all UNIQUE elements in an array


Bubble Sorting
- using Nested Loop
- using Bubbling () function in for () loop
- using boolean Change Happened and Bubbling () function in while () loop
- Range Minimum and Selection Sort 

Merging Arrays 

- Simple Merging the sorted arrays
- Merging the sorted arrays in Sorted Order

Segregation in Arrays

- Segregate smaller values on the left and larger values on the right of a specific value in an array

Lecture 9- Two Dimensional Arrays and Its Application (The Prison Break)

Difference between an average and a good programmer

Two Dimensional Arrays

- Array mapping function (how two dimensional arrays are stored as single dimensional array)
- How to access it
- How to load it
- How to print it.
#define global constants using preprocessor directives and how to take capacity as global variables.

Two Dimensional Arrays Application

- Implementing Matrices
- Making Matrices Calculator
- Add function of Matrices
- Subtract function of Matrices
- Multiplication function of Matrices
- Transpose Function for Matrices

2D-World Traversals

- Row-wise, Columns-wise, diagonal-wise, and their several variants

Introducing Structs

Implementing Two Dimensional Arrays handled with struct of Matrix with the following definition
struct Matrix
    char FN[100];    int R, C;    int Vs[ROWS][COLS];

Application - The Prison Break

- Making its mainflow
- Find Prisoner
- Find Top Left Corner of Room
- Find Bottom Right Corner of the Room
- Figuring out the prisoner's destiny