Producto cartesiano en c ++

He estado buscando durante semanas cómo encontrar un código para aplicar el producto cartesiano. Digamos que tengo dos matrices:

int M[2]= {1,2};
int J[3] = {0,1,2};

Entonces, el código tomará esas dos matrices para aplicar la regla MXJ, por lo tanto, tendremos los pares (1,0) (1,1) (1,2) (2,0) (2,1) (2,2) y Quiero que el nuevo resultado se guarde en una nueva matriz donde cada índice de la matriz contiene un par, por ejemplo c [0] = (1,0). Ayuda por favor :(

Respuestas a la pregunta(3)

Su respuesta a la pregunta