Rellene una matriz de 5*3 en c++ , luego en otra matriz de misma dimensión ...

Desarrolle un programa que rellene una matriz de 5*3. Luego, en otra matriz del mismo tamaño, guarde los valores almacenados en la primera matriz elevado al cubo los almacenados en columnas pares y elevado al cuadrado los almacenamos en posiciones impares.

Respuesta
1

¿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.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas