Este programa C# está diseñado para intercambiar o intercambiar las columnas de una matriz. Una matriz es una matriz bidimensional de números organizados en filas y columnas. El intercambio de columnas puede resultar útil en diversas aplicaciones, como transformaciones matriciales, manipulación de datos y algoritmos de clasificación.
Planteamiento del problema
Escriba un programa que tome como entrada una matriz de números enteros e intercambie dos columnas específicas de la matriz. El programa debería generar la matriz original y la matriz con las columnas intercambiadas.
Programa C# para intercambiar las columnas de una matriz
using System; class MatrixInterchange { static void Main() { Console.Write("Enter the number of rows: "); int rows = int.Parse(Console.ReadLine()); Console.Write("Enter the number of columns: "); int columns = int.Parse(Console.ReadLine()); int[,] matrix = new int[rows, columns]; int[,] swappedMatrix = new int[rows, columns]; // Input matrix elements Console.WriteLine("Enter matrix elements:"); for (int i = 0; i < rows; i++) { for (int j = 0; j < columns; j++) { Console.Write($"Enter element at [{i},{j}]: "); matrix[i, j] = int.Parse(Console.ReadLine()); } } // Interchange columns Console.WriteLine("Matrix before column interchange:"); PrintMatrix(matrix); for (int i = 0; i < rows; i++) { for (int j = 0; j < columns; j++) { swappedMatrix[i, j] = matrix[i, columns - 1 - j]; } } Console.WriteLine("Matrix after column interchange:"); PrintMatrix(swappedMatrix); } static void PrintMatrix(int[,] matrix) { int rows = matrix.GetLength(0); int columns = matrix.GetLength(1); for (int i = 0; i < rows; i++) { for (int j = 0; j < columns; j++) { Console.Write(matrix[i, j] + " "); } Console.WriteLine(); } } }
Cómo funciona
- Recopilación de aportes:
- El programa comienza solicitando al usuario que ingrese el número de filas y columnas de la matriz.
- Entrada de matriz:
- A continuación, el programa pide al usuario que introduzca los elementos de la matriz fila por fila. Utiliza bucles anidados para leer los valores de cada celda de la matriz.
- Entrada de índices de columna:
- Luego, el programa solicita al usuario que ingrese los índices de las dos columnas que desea intercambiar. Estos índices están basados en 1, lo que significa que la primera columna es 1, la segunda es 2, y así sucesivamente.
- Pantalla de matriz original:
- Antes de realizar el intercambio, el programa muestra la matriz original al usuario.
- Intercambio de columnas:
- Usando otro conjunto de bucles anidados, el programa crea una nueva matriz llamada
swappedMatrix
. - Itera a través de cada elemento de la matriz original y lo copia en la posición correspondiente en la matriz.
swappedMatrix
. Sin embargo, al copiar columnas, intercambia el orden de las columnas según los índices especificados. Por ejemplo, si el usuario quiere intercambiar las columnas 2 y 4, copia el elemento en (i, 2) en la matriz original a (i, 4) en laswappedMatrix
y viceversa.
- Usando otro conjunto de bucles anidados, el programa crea una nueva matriz llamada
- Mostrar el resultado:
- Después de realizar el intercambio de columnas, el programa muestra la matriz resultante (es decir,
swappedMatrix
) al usuario, mostrando el efecto del intercambio de columnas.
- Después de realizar el intercambio de columnas, el programa muestra la matriz resultante (es decir,
- Finalización del programa:
- El programa finaliza después de mostrar los resultados.
De entrada y salida
Artículos Relacionados
Source link