Llena una matriz de N×N y muestra por separado su parte triangular superior e inferior.
Aquí te muestro un ejemplo de cómo llenar una matriz de N×N y mostrar su parte triangular superior e inferior en C++: ```cpp #include <iostream> using namespace std; // Función para llenar la matriz void llenarMatriz(int** matriz, int N) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { matriz[i][j] = i * N + j + 1; } } } // Función para mostrar la matriz void mostrarMatriz(int** matriz, int N) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { cout << matriz[i][j] << " "; } cout << endl; } } // Función para mostrar la parte triangular superior de la matriz void mostrarTriangularSuperior(int** matriz, int N) { for (int i = 0; i < N; i++) { for (int j = 0; j <= i; j++) { cout << matriz[i][j] << " "; } cout << endl; } } // Función para mostrar la parte triangular inferior de la matriz void mostrarTriangularInferior(int** matriz, int N) { for (int i = 0; i < N; i++) { for (int j = i + 1; j < N; j++) { cout << matriz[i][j] << " "; } cout << endl; } } int main() { int N; cout << "Ingrese el tamaño de la matriz (N): "; cin >> N; // Reservar memoria para la matriz int** matriz = new int*[N]; for (int i = 0; i < N; i++) { matriz[i] = new int[N]; } // Llenar la matriz llenarMatriz(matriz, N); // Mostrar la matriz completa cout << "Matriz completa:" << endl; mostrarMatriz(matriz, N); // Mostrar la parte triangular superior cout << "Parte triangular superior:" << endl; mostrarTriangularSuperior(matriz, N); // Mostrar la parte triangular inferior cout << "Parte triangular inferior:" << endl; mostrarTriangularInferior(matriz, N); // Liberar memoria for (int i = 0; i < N; i++) { delete[] matriz[i]; } delete[] matriz; return 0; } ``` En este código, se define una función `llenarMatriz` para llenar la matriz con valores de 1 a N^2, una función `mostrarMatriz` para mostrar la matriz completa, y dos funciones `mostrarTriangularSuperior` y `mostrarTriangularInferior` para mostrar la parte triangular superior e inferior de la matriz, respectivamente. En el `main`, se pide al usuario que ingrese el tamaño de la matriz (N), se reserva memoria para la matriz, se llena la matriz, se muestra la matriz completa, la parte triangular superior e inferior, y finalmente se libera la memoria reservada.