Chapter 4. Statements
This chapter offers an overview of the statements defined in Q#. A statement is a program instruction that describes an action to be performed. Q# is an imperative programming language, so its operations and functions are sequences of statements.
I’ll start with a review of “classical” statements: variable declaration and reassignment, conditional execution, loops, calling other routines, and halting routine execution. Most other programming languages have some variants of these statements, and you’re probably familiar with them conceptually, so this part focuses mostly on the syntax and any language-specific nuances.
The second part of the chapter covers statements specific to quantum programs: qubit allocation, a quantum variant of a conditional loop, and a quantum-specific flow-control construct called conjugation.
Example: Calculate Euler’s Totient Function
Let’s take a look at Example 4-1, a Q# program that calculates Euler’s totient function of the given integer n.
The value of this function equals the number of positive numbers less than or equal to n that are coprime to it—that is, they don’t have common divisors greater than 1.
This example implements the most straightforward approach to computing this function: it iterates over all numbers from 1 to n and checks whether each of them is coprime to n by calculating their greatest common divisor (GCD). This code is designed to showcase the main “classical” statements we will be considering later in ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access