This repository contains a collection of C++ projects demonstrating various object-oriented programming concepts, data structures, and algorithms. These projects are designed to help learners understand and practice key OOP principles and common programming techniques.
- Install an IDE that compiles and runs C++ codes. Recommendation: VS Code
- For WSL users: How to setup WSL Ubuntu terminal shell and run it from Visual Studio Code: YouTube Tutorial
- All code in this repository is written by the repository owner
- These programs were created as practice code, practical exercises, and assignments for coding modules
- Access Control Device: Implements a simulated access control system.
- BinaryHeap.cpp: Demonstrates the implementation of a binary heap data structure.
- Calculator Simulation Using Stacks: A calculator application utilizing stack data structures.
- Chess Imitation (Mate in One): Simulates a chess endgame scenario focusing on mate-in-one situations.
- Classes and Array of Objects: Showcases the use of classes and arrays of objects in C++.
- Doubly Linked List: Implementation of a doubly linked list data structure.
- Encryption and Decryption: A program demonstrating basic encryption and decryption techniques.
- Genetic Algorithm: An implementation of a simple genetic algorithm.
- Linear Data Structures: Examples of various linear data structures in C++.
- Linked Lists and Recursion: Demonstrates the use of linked lists with recursive algorithms.
- Matrices: Operations and manipulations on matrices.
- Neural Networking: A basic implementation of a neural network.
- Operator Overloading: Examples of operator overloading in C++.
- Operator Overloading and Inheritance: Combines concepts of operator overloading with inheritance.
- Pointers to Objects: Demonstrates the use of pointers with objects in C++.
- Polymorphism: Examples showcasing polymorphism in C++.
- Singly Linked List: Implementation of a singly linked list data structure.
- Template Classes and Vectors: Demonstrates the use of template classes and vectors in C++.
A Makefile is included to compile and run the codes on the terminal with the following commands:
make clean
make
make run
Here's the content of the Makefile:
main:
g++ -g *.cpp -std=c++98 -pedantic -o main
clean:
rm -f *.o *.tar.gz main
reset
clear
run:
valgrind --leak-check=full ./main
tar:
tar -cvz *.* -f Code.tar.gz
untar:
tar -zxvf *.tar.gz
To run these projects:
- Ensure you have a C++ compiler installed on your system.
- Clone this repository to your local machine.
- Navigate to the project directory you want to run.
- Use the provided Makefile commands to compile and run the programs.
While this repository primarily contains personal practice code, contributions to improve existing projects or add new ones may be considered. If you'd like to contribute:
- Fork the repository.
- Create a new branch for your feature.
- Add your changes.
- Submit a pull request with a clear description of your improvements.
This project is open source. Please check the repository for any specific license information.