Welcome to my repository of C and C++ projects from Ben-Gurion University. This collection includes various projects that demonstrate core programming concepts, including object-oriented programming, memory management, and operator overloading.
-
- Description: Implements a hierarchy of geometric shapes using object-oriented programming concepts. Includes classes for
Shape
,Square
,Circle
, andOrthogonalTriangle
, as well as a menu class to interact with these shapes. - Key Concepts: Inheritance, polymorphism, pure virtual functions.
- Description: Implements a hierarchy of geometric shapes using object-oriented programming concepts. Includes classes for
-
Operator Overloading and Vectors
- Description: Demonstrates operator overloading with a
VectorExample
class. Includes overloading for addition, subtraction, equality, and output stream operators. - Key Concepts: Operator overloading, class methods.
- Description: Demonstrates operator overloading with a
-
- Description: Simulates a vending machine with functionalities to select products, insert coins, complete transactions, view inventory, and cancel transactions.
- Key Concepts: Class design, state management, user interaction.
-
Memory Allocation and Linked Lists
- Description: Implements a linked list with operations to add, delete, search, and print nodes. Emphasizes proper memory management practices.
- Key Concepts: Dynamic memory allocation, linked list operations, memory management.
-
- Description: Implements a checkers game with functionalities for moving pawns, capturing opponent’s pawns, and checking game status.
- Key Concepts: Game logic, board management, user interaction.