Share via


Operación IterateThroughCartesianProduct

Advertencia

Esta documentación hace referencia al QDK clásico, que se ha reemplazado por el QDK moderno.

https://aka.ms/qdk.api Consulte la documentación de la API para el QDK moderno.

Espacio de nombres: Microsoft.Quantum.Canon

Paquete: Microsoft.Quantum.Standard

Aplica una operación para cada índice del producto cartesiano de varios rangos.

operation IterateThroughCartesianProduct (bounds : Int[], op : (Int[] => Unit)) : Unit

Descripción

Aplica iterativamente una operación para cada elemento del producto cartesiano de 0..(bounds[0] - 1), , 0..(bounds[1] - 1)..., 0..(bounds[Length(bounds) - 1] - 1)

Entrada

bounds : Int[]

Matriz que especifica los intervalos que se van a iterar, con cada intervalo especificado como una longitud entera.

op : Int[] =>Unit

Operación a la que se llamará para cada elemento del producto cartesiano especificado.

Salida: unidad

Ejemplo

Dada una operación op, los dos fragmentos de código siguientes son equivalentes:

IterateThroughCartesianProduct([3, 4, 5], op);
op([0, 0, 0]);
op([1, 0, 0]);
op([2, 0, 0]);
op([0, 1, 0]);
// ...
op([0, 3, 0]);
op([0, 0, 1]);
//
op([2, 3, 4]);

Consulte también