Welcome to my 21-day learning challenge repository, where I embark on a journey to explore the fundamentals and advanced concepts of the C programming language. This challenge is designed to enhance my understanding of C and strengthen my programming skills over a three-week period.
My solo 21-day challenge to deepen my understanding of C++. ππ‘ This journey will be a celebration of learning, coding, and continuous improvement Every day, I'll immerse myself in different C++ topics, offering explanations, code snippets, and practical examples. This will serve as both a personal coding journal and an open resource for anyone looking to explore or learn alongside me.
All code snippets and related materials will be documented in this GitHub repository. Feel free to explore, comment, or contribute. Let's make this repository a collaborative space for learning and sharing knowledge..
/21-day-cpp-challenge: The root directory contains subdirectories for each day of the challenge, where you can find code implementations and detailed notes.
day-01/, day-02/, ...: Each day's directory further contains:
- code/: Subdirectory housing the code snippets and programs written on that specific day.
- notes.md: Markdown file providing insights, explanations, and any additional notes related to the day's topics.
resources/: This directory includes any supplementary materials, links, or documents that support the learning journey.
README.md: The main documentation file you are currently reading, which serves as a guide to the repository's content and the 21-day C++ learning challenge.
Provide a daily log of your progress. Include details such as the topics covered, challenges faced, and any code written. This section serves as a journal of your learning journey.
- Explore the main data types in C++ and understand how to declare and initialize variables of these types.
- code Completed β (10-01-2024)
- Write a C++ program that takes two numbers as input and outputs their sum.
- code Completed β (11-01-2024)
- Understand the practical differences between 'if', 'else if', and 'else' statements.
- code Completed β (12-01-2024)
- All about loops in c++
- code Completed β (13-01-2024)
- Define a function in C++ that calculates the factorial of a given number.
- code Completed β (14-01-2024)
- Illustrate the declaration and initialization of an integer array. Access and print its elements.
- code Completed β (15-01-2024)
- Explore the purpose of pointers and provide an example of how pointers can be used in C++.
- code Completed β (16-01-2024)
- Concatenate two strings in C++ and understand the difference between C-style strings and C++ strings.
- code Completed β (17-01-2024)
Create a structure representing a student with attributes like name, age, and grade.
- code Completed β (18-01-2024)
- Define a class 'Rectangle' with attributes length and width. Create an object and calculate its area.
- code Completed β (19-01-2024)
- Understand the concept of inheritance in C++ with an example involving a base class and a derived class.
- code Completed β (20-01-2024)
- Demonstrate both compile-time and runtime polymorphism in C++.
- code Completed β (21-01-2024)
- Write a program to read data from a file and display it on the console.
- code Completed β (22-01-2024)
- Explore how exception handling contributes to robust code. Provide an example using try, catch, and throw.
- code Completed β (23-01-2024)
- Define a template function that swaps the values of two variables. Understand how to use this template with different data types.
- code Completed β (24-01-2024)
- Use a vector from the STL to store and display a list of names.
- code Completed β (25-01-2024)
- Understand the role of iterators in C++ with respect to STL containers. Provide an example.
- code Completed β (26-01-2024)
- Compare unique_ptr and shared_ptr. Understand when to use one over the other.
- code Completed β (27-01-2024)
- Write a lambda expression to find the square of a number.
- code Completed β (28-01-2024)
- Briefly describe the concept of concurrency in C++. Provide an example using threads.
- code Completed β (29-01-2024)
- Explain the purpose of the iostream, cmath, and algorithm headers in C++.
- Code Completed β (30-01-2024)
Feel free to explore, contribute, or follow along on this 21-day C++ learning journey. ππ»
This can include books, online courses, tutorials, or any other materials
If you received help or inspiration from others, acknowledge them in this section. It could be fellow learners, online communities, or mentors who have supported you during the challenge.
Specify the license for your code and content. If it's an open-source project, you might want to choose a license that aligns with your goals and intentions.