CLR: .Net / Mono / Boo / Otros CLR > C#

 Matriz Consola C#

(1/1)

j0rg3m4r10:
Hola. quisiera saber como crear un programa de consola que invierta una matriz de
N x M elementos

El elemento (1, 1) se intercambie con el (N, M); el (1, 2) con el (N, M –1); el (1, 3) con el
(N, M–2) y así sucesivamente. Imprimir la matriz invertida.


gracias de antemano

tannke:
Prueba con este algoritmo, no es la mejor solucion, pero el mejorarlo ya te lo dejo a ti.

--- Código: C# ---static void Main(string[] args)        {            int M = 3;     //con estas dos variables definimos N y M.            int N = 10;             int[,] matriz = new int[N, M];            int cont = 0;             //la creamos            for (int i = 0; i < N; i++)            {                for (int a = 0; a < M; a++)                {                    matriz[i, a] = cont;                    cont++;                }            }             //la escribimos            for (int i = 0; i < N; i++)            {                for (int a = 0; a < M; a++)                {                    Console.WriteLine("Matriz[{0},{1}] = {2}", i, a, matriz[i, a]);                }            }                        //el algoritmo de inversion            int repeticiones = 0;            for (int i = 0; i < N; i++)            {                for (int a = 0; a < M; a++)                {                    int temp;                    temp = matriz[i, a];                    matriz[i, a] = matriz[N - i-1, M - a-1];                    matriz[N - i-1, M - a-1] = temp;                    repeticiones++;                    if (repeticiones == N * M / 2) break;                }                if (repeticiones == N * M / 2) break;                           }             Console.WriteLine();            Console.WriteLine();             //lo volvemos a esgribir             for (int i = 0; i < N; i++)            {                for (int a = 0; a < M; a++)                {                    Console.WriteLine("Matriz[{0},{1}] = {2}", i, a, matriz[i, a]);                }            }             Console.ReadKey();        } 
saludos

j0rg3m4r10:
Muchisimas Gracias!!!!!!!!....me has salvado

Navegación

[0] Índice de Mensajes

Ir a la versión completa