schtschenok / cpp_projects

Training projects I did in C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

C++ Projects

Training projects I did in C++.

TODO

Project list (might change over time)

  1. Classic Hello, World! Program in C++

    • Status:
    • Description: Introduce C++ syntax by creating a program that prints "Hello, World!" to the console using the iostream library, the main function, and the std::cout statement.
    • Technologies Required: C++ programming language, Basic console I/O operations.
  2. Calculator for Basic Arithmetic Operations

    • Status:
    • Description: Implement a calculator in C++ that performs basic arithmetic operations through user input, using variables, functions, and a switch-case structure. Allow users to input two operands and select an operation (addition, subtraction, multiplication, or division).
    • Technologies Required: C++ programming language, User input handling, Functions, Conditional statements, Switch-case structure.
  3. Number Guessing Game

    • Status:
    • Description: Develop a C++ game where the user guesses a randomly generated number. Use random number generation, loops, and conditional statements. Provide feedback to the user based on their guesses and allow multiple attempts until they guess correctly.
    • Technologies Required: C++ programming language, Random number generation, Loop structures, Conditional statements.
  4. Rock Paper Scissors Game

    • Status:
    • Description: Create a console-based Rock Paper Scissors game in C++ where the user plays against the computer. Implement user input handling, random selection for computer choices, and display the results based on the game rules. Allow users to play multiple rounds.
    • Technologies Required: C++ programming language, I/O Streams, Standard Library Functions, Conditional statements.
  5. Hangman Game

    • Status:
    • Description: Build a Hangman Game in C++ with an emphasis on Object-Oriented Programming (OOPS). Implement classes to manage the game state, including the hidden word and user guesses. Utilize features like structs, switch statements, and loops for game logic and flow.
    • Technologies Required: C++ programming language, Object-Oriented Programming (OOPS).
  6. Simple Bank Management System

    • Status:
    • Description: Develop a basic Bank Management System in C++ using object-oriented programming principles. Allow users to register accounts, deposit or withdraw money, and view account details. Utilize classes and objects to model bank accounts.
    • Technologies Required: C++ programming language, Object-oriented programming.
  7. Tic-Tac-Toe Game

    • Status:
    • Description: Create a Tic-Tac-Toe game in C++ using arrays or vectors to represent the game board. Allow two players to take turns marking their moves (X or O). Implement functions to check for a win or a draw. Display the game board after each move.
    • Technologies Required: C++ programming language, Arrays/Vectors, Game logic, Functions.
  8. Contact Book App

    • Status:
    • Description: Build a Contact Book Application in C++ for managing contact information. Implement features for adding, displaying, searching, and deleting contacts. Utilize a struct to store contact details and a vector to manage the contact list.
    • Technologies Required: C++ programming language, Data handling, Structs, Vectors.
  9. Temperature Converter App

    • Status:
    • Description: Develop a C++ program for converting temperatures between Celsius, Fahrenheit, and Kelvin. Use functions for modular code organization, prompting the user to choose a conversion type and input a temperature for conversion.
    • Technologies Required: C++ programming language, Functions, Mathematical operations, User input handling.
  10. To-Do List Management

    • Status:
    • Description: Create a basic to-do list manager in C++ with file handling for persistent task storage, dynamic data handling using vectors, and a simple menu-driven interface for adding, displaying, and deleting tasks. Incorporate dynamic memory management for flexible task handling.
    • Technologies Required: C++ programming language, File handling, Vector containers, Basic program flow control, Dynamic memory management.
  11. Currency Converter

    • Status:
    • Description: Build a simple Currency Converter in C++ that takes user input for desired currencies and displays the converted amount based on exchange rates. Implement a menu or dropdown for currency selection. Ensure numeric data validation and handle invalid input gracefully. Fetch currency conversion rates from an external file.
    • Technologies Required: C++ programming language, Menu/dropdown implementation, Numeric data validation, File handling.
  12. Credit Card Validator

    • Status:
    • Description: Create a C++ program to validate credit card numbers. Implement card type detection and validation mechanisms. Provide options through a dropdown or menu for selecting card types. Consider algorithmic validation and incorporate error handling for invalid inputs.
    • Technologies Required: C++ programming language, Card type detection, Algorithmic validation, Menu/dropdown implementation.
  13. Digital Calculator

    • Status:
    • Description: Develop a menu-driven C++ calculator program focusing on basic arithmetic operations. Ensure input validation for numerical data and handle different data types appropriately. Emphasize the use of decision-making statements and reinforce data type concepts.
    • Technologies Required: C++ programming language, Menu-driven interface, Input validation, Decision-making statements.
  14. Stopwatch

    • Status:
    • Description: Create a GUI-based stopwatch in C++ with features like time counting and display, utilizing the graphics library for basic functionality. Consider adding options to store and display past recordings, improving the overall user experience.
    • Technologies Required: C++ programming language, GUI development, Time handling, Graphics library.
  15. Student Management System

    • Status:
    • Description: Design a student management system in C++ accommodating multiple user types (students and teachers). Allow students to edit details, submit assignments, and take tests. Enable teachers to set assignments, tests, and grade students. Optionally, include a third user type (Parent) with restricted access.
    • Technologies Required: C++ programming language, User management, Privilege-based access, Data structures.

About

Training projects I did in C++

License:MIT License