Now, replace the contents of the Program.qs file with the following code :
namespace Qrng {
open Microsoft.Quantum.Convert;
open Microsoft.Quantum.Math;
open Microsoft.Quantum.Measurement;
open Microsoft.Quantum.Canon;
open Microsoft.Quantum.Intrinsic;
operation SampleQuantumRandomNumberGenerator() : Result {
// Allocate a qubit
use q = Qubit();
// Put the qubit to superposition
// It now has a 50% chance of being measured 0 or 1
H(q);
// Measure the qubit value
return M(q);
}
}
Now take a look at new code.
* First, you open the necessary namespaces from the Q# libraries for the functions and operations needed.
* You define the SampleQuantumRandomNumberGenerator operation, which takes no input and produces a value of type Result. The Result type represents the result of a measurement and can have two possible values: Zero or One.
* Allocate a single qubit with the use keyword.
* Use the H (Hadamard) operation to place the qubit in an equal superposition.
* Use the M operation to measure the qubit and return the measured value (Zero or One).