Operação aleatória

Aviso

Esta documentação refere-se ao QDK Clássico, que foi substituído pelo QDK Moderno.

https://aka.ms/qdk.api Veja a documentação da API para o QDK Moderno.

Espaço de nomes: Microsoft.Quantum.Intrínseco

Pacote: Microsoft.Quantum.QSharp.Foundation

Aviso

Aleatório foi preterido. Em alternativa, utilize a operação DrawCategorical .

A operação aleatória utiliza uma matriz de duplos como entrada e devolve um índice selecionado aleatoriamente na matriz como um Int. A probabilidade de selecionar um índice específico é proporcional ao valor do elemento de matriz nesse índice. Os elementos de matriz que são iguais a zero são ignorados e os respetivos índices nunca são devolvidos. Se qualquer elemento de matriz for inferior a zero ou se nenhum elemento de matriz for maior que zero, a operação falhará.

operation Random (probs : Double[]) : Int

Entrada

probs: Duplo[]

Uma matriz de números de vírgula flutuante proporcional à probabilidade de selecionar cada índice.

Saída: Int

Um número inteiro $i$ com probabilidade $\Pr(i) = p_i / \sum_i p_i$, em que $p_i$ é o elemento $i$th de probs.