This is a collection of CS100 course projects in 2019 fall. It contains 8 individual projects, including basic C and C++ programming language
- Syntax of C and C++ programming language
- Concepts of compiling, assembling, linking, loading
- Variables & functions
- Operations
- Structures
- Control flow
- Recursion
- Object oriented programming (Encapsulation, Inheritance and Polymorphism)
- Templates
- CMake
- Basic multi-thread programming
- Part of new features of C++11/14/17
- Basic functional programming
- Dependencies management (Eigen, OpenCV...)
- HW1 (Simple problems)
- Basic syntax of C
- HW2 (Simple problems)
- Basic syntax of C
- HW3 (Linked List & Sorting)
- Structures
- Pointers
- HW4 (C++ DynamicArray & Simple Game)
- OOP Part I (Encapsulation)
- HW5 (C++ calculater, Structured Output, LookupTable)
- OOP Part II (Inheritance & Polymorphism)
- HW6 (More complex C++ programming)
- More Complex OOP
- Templates
- Operator overloading
- HW7 (Image filtering)
- CMake
- Multi-threading
- Concepts of convolution
- Eigen
- HW8 (Polynomials, derivatives, Newton's Method)
- Templates
- Iterators
- Operator overloading
- Functional programming (lambdas)
- For me (one of head TAs of this course, and the author of part of this projects), about 15 hours in total
- If you have never learned programming before, maybe 2 weeks or much longer