¿Supongo qué tendrás algo hecho de todo esto? Creo que primero debes intentar hacer algo por tu cuenta y luego pedir ayuda. Pero bueno te doy unas pequeñas indicaciones para que sepas lo que debes hacer.
Una matriz no es mas que un array bidimensional:
int matrizA[5][3]
int matrizB[5][3]
Y la definición con rellenado es asi :
int a[5][3] = {
{0, 1, 2} ,
{3, 4, 5} ,
{6, 7, 8} ,
{9, 10, 11} ,
{12, 13, 14}
};
Dado que el segundo valor es la columna, vamos a tener 1 columna par y 2 impares (de la definición matemática de par 0 es par pero 0 es el indice de la columna 1)
Por lo tanto tenemos que matrizB[0][0] = pow(matrizA[0][0], 2) (elevamos al cuadrado) y matrizB[0][1] = pow(matrizA[0][1], 3) (elevamos al cubo ya que el indice de columna es 1 pero en realidad se trata de la columna 2)
Vale, y ahora como hacer esto en un bucle para no hacerlo de uno en uno?
for (int i = 0; i < matrizA.size(); i+=1) { //Asi recorremos las filas
for (int j = 0; j < matrizA[i].size(); j+=1) { //Asi recorremos las columnas
if ((j + 1) % 2 == 0) { //El simbolo % significa resto de division si dividimos 3%2 = 1 si 2%2 = 0
//Esto es par
} else {
//Esto es impar
}
}
}
Con estas indicaciones deberías ser capaz de hacer lo que te piden.