# Simulation of Quantum Computing Gaming Project in C++

### Explanation

1. Constants:
• PI: Mathematical constant π used for generating random angles.
2. Type Alias:
• Complex: Alias for `std::complex<double>` to represent complex numbers for quantum amplitudes.
3. Class `Qubit`:
• Purpose: Represents a quantum bit (qubit) and provides functionality to initialize, print its state, and measure it.
• Constructor `Qubit(double theta)`:
• Initializes the qubit state with a given angle `theta`.
• Alpha: Amplitude for the `|0>` state.
• Beta: Amplitude for the `|1>` state, with a random phase.
• Method `printState()`:
• Prints the current state of the qubit in the form `α|0> + β|1>`.
• Method `measure()`:
• Computes probabilities of measuring the qubit in the `|0>` or `|1>` states.
• Prints the probabilities.
• Simulates a measurement by randomly choosing between `|0>` and `|1>` based on these probabilities.
4. Main Function:
• Setup: Seeds the random number generator for measurement simulations.
• User Input: Prompts the user to enter an angle `theta` to initialize the qubit.
• Simulation:
• Initializes a `Qubit` instance with the given angle.
• Prints the qubit’s state.
• Performs a measurement and displays the result.

### Usage

• Quantum State Representation: Demonstrates how a qubit can be initialized in a superposition state.
• Measurement Simulation: Simulates the process of measuring a qubit and collapsing its state based on quantum probabilities.
Scroll to Top