Operasi acak

Peringatan

Dokumentasi ini mengacu pada QDK Klasik, yang telah digantikan oleh QDK Modern.

Silakan lihat https://aka.ms/qdk.api dokumentasi API untuk QDK Modern.

Namespace: Microsoft.Quantum.Intrinsic

Paket: Microsoft.Quantum.QSharp.Foundation

Peringatan

Acak tidak digunakan lagi. Gunakan operasi DrawCategorical sebagai gantinya.

Operasi acak mengambil array ganda sebagai input, dan mengembalikan indeks yang dipilih secara acak ke dalam array sebagai Int. Probabilitas memilih indeks tertentu sebanding dengan nilai elemen array pada indeks tersebut. Elemen array yang sama dengan nol diabaikan dan indeksnya tidak pernah dikembalikan. Jika ada elemen array kurang dari nol, atau jika tidak ada elemen array yang lebih besar dari nol, maka operasi gagal.

operation Random (probs : Double[]) : Int

Input

probs : Double[]

Array angka floating-point sebanding dengan probabilitas memilih setiap indeks.

Output : Int

Bilangan bulat $i$ dengan probabilitas $\Pr(i) = p_i / \sum_i p_i$, di mana $p_i$ adalah elemen $i$th dari probs.