This repository contains my solutions for the Algorithms & Problem Solving Level 2 Course. In this level, the focus shifts from basic syntax to modular programming, mathematical algorithms, and building reusable libraries.
Unlike Level 1, this repository implements a professional software architecture:
- Custom Library (
MyLib): All reusable logic is encapsulated in a dedicated header file (MyLib.h) and source file (MyLib.cpp). - Modular Design: Separation of declarations (
.h) and implementations (.cpp). - Pure Math Logic: Solving complex digit manipulation problems using arithmetic operators (
%,/) without relying on string conversions.
Deep dive into number theory, prime checks, and manipulating integers mathematically.
- Key Problems: Multiplication Table, Prime/Perfect Numbers, Digit Frequency, Reversing Numbers.
- Concepts:
MyLib Integration,Nested Loops,Modulo Operator,Optimization Techniques. - Status: ✅ Completed
Focuses on complex pattern generation, random number simulation, and basic security algorithms.
- Key Problems: Palindromes, Inverted Patterns, Brute-Force Password Guessing, Text Encryption.
- Concepts:
Nested Loops,Randomness (srand/rand),String Manipulation,Security Logic. - Status: ✅ Completed
Simulating random behavior, array filling, and generating secure keys.
- Key Problems: Random Number Generator, Serial Key System, Array Filling, Prime Copying.
- Concepts:
Arrays,Randomness,Linear Search,Aggregation. - Status: ✅ Completed
(Upcoming) Advanced operations on arrays (shuffling, sorting, copying).
- Key Problems: Array Shuffle, Copy distinct numbers, Palindrome Array.
- Status: ⏳ In Progress
(Upcoming) The final capstone projects will combine all learned concepts.
- Key Problems: MySqrt, MyCeil, Dynamic Array Operations.
- Status: ⏳ In Progress
- Language: C++
- IDE: Visual Studio
- Architecture: Header Files (
.h), Namespaces, Source Files (.cpp).
Developed by Mohamed Abdelrady - 2026